-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
99 lines (74 loc) · 2.04 KB
/
CMakeLists.txt
File metadata and controls
99 lines (74 loc) · 2.04 KB
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
cmake_minimum_required(VERSION 3.22.1)
project(grunwald LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fconcepts -Wall")
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
find_package(Qt6 REQUIRED COMPONENTS
Core
Sql
Network
Quick
)
set(HEADERS
include/common/Word.hpp
include/common/WordType.hpp
include/common/WordImage.hpp
include/cache/WordCache.hpp
include/db/WordDao.hpp
include/storage/WordStorage.hpp
include/net/WordParser.hpp
include/net/WordContentService.hpp
include/net/WordImageService.hpp
include/model/WordModel.hpp
include/image/AsyncWordImageProvider.hpp
include/image/AsyncWordImageResponse.hpp
include/util/Error.hpp
include/util/Result.hpp
include/util/EnumHelper.hpp
)
set(SOURCES
main.cpp
src/cache/WordCache.cpp
src/db/WordDao.cpp
src/storage/WordStorage.cpp
src/net/WordParser.cpp
src/net/WordContentService.cpp
src/net/WordImageService.cpp
src/model/WordModel.cpp
src/image/AsyncWordImageProvider.cpp
src/image/AsyncWordImageResponse.cpp
)
set(RESOURCES
main.qrc
)
list(APPEND QML_IMPORT_PATH "qml")
list(REMOVE_DUPLICATES QML_IMPORT_PATH)
set(QML_IMPORT_PATH ${QML_IMPORT_PATH}
CACHE STRING "Qt Creator extra qml import paths"
FORCE
)
set(QGUMBO_PARSER_SRC libs/QGumboParser)
set(LIBQGUMBO_PARSER_PATH ${CMAKE_BINARY_DIR}/libs/QGumboParser/libQGumboParser.so)
#add_subdirectory(${QGUMBO_PARSER_SRC})
add_library(QGumboParser SHARED IMPORTED)
set_target_properties(QGumboParser PROPERTIES IMPORTED_LOCATION ${LIBQGUMBO_PARSER_PATH})
add_executable(${PROJECT_NAME}
${HEADERS}
${SOURCES}
${RESOURCES}
)
target_include_directories(${PROJECT_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/include
${CMAKE_CURRENT_SOURCE_DIR}/${QGUMBO_PARSER_SRC}
)
target_link_libraries(${PROJECT_NAME}
Qt6::Core
Qt6::Sql
Qt6::Network
Qt6::Quick
QGumboParser
)