-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
41 lines (28 loc) · 940 Bytes
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
cmake_minimum_required(VERSION 3.16)
project(qooltest)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
include_directories(thirdparty)
add_subdirectory(tests)
find_package(Qt6 REQUIRED COMPONENTS Core Widgets UiTools)
set(TINYXML_FILE thirdparty/tinyxml2/tinyxml2.cpp)
set(SOURCE_FILES
src/main.cpp
src/project.cpp
src/mainwindow.cpp
)
set (HEADER_FILES
src/project.h
src/mainwindow.h
)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
add_executable(qooltest ${SOURCE_FILES} ${HEADER_FILES} ${TINYXML_FILE})
target_link_libraries(qooltest PRIVATE Qt6::Core Qt6::Widgets Qt6::UiTools)
add_custom_command(TARGET ${CMAKE_PROJECT_NAME} PRE_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
"${CMAKE_SOURCE_DIR}/assets" "$<TARGET_FILE_DIR:${CMAKE_PROJECT_NAME}>/assets")
set_target_properties(qooltest PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)