Tue, 28 Jun 2022 11:19:33 +0300
Fix build
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
1 | project(LDForge) |
269
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
2 | cmake_minimum_required(VERSION 2.8.12) |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
3 | set(VERSION_MAJOR 1) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
4 | set(VERSION_MINOR 0) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
5 | set(VERSION_PATCH 0) |
272
9d52b119b3f5
Sort out versions more, add about page
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
269
diff
changeset
|
6 | set(COPYRIGHT "Copyright (C) 2013 - 2022 Teemu Piippo") |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
7 | |
272
9d52b119b3f5
Sort out versions more, add about page
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
269
diff
changeset
|
8 | set(VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") |
269
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
9 | string(TOLOWER ${PROJECT_NAME} TARGET_NAME) |
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
10 | add_definitions(-DVERSION_MAJOR=${VERSION_MAJOR}) |
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
11 | add_definitions(-DVERSION_MINOR=${VERSION_MINOR}) |
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
12 | add_definitions(-DVERSION_PATCH=${VERSION_PATCH}) |
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
13 | add_definitions(-DAPPNAME="${PROJECT_NAME}") |
593545977c5e
Further use APPNAME macro
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
268
diff
changeset
|
14 | add_definitions(-DVERSION_STRING="${VERSION_STRING}") |
272
9d52b119b3f5
Sort out versions more, add about page
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
269
diff
changeset
|
15 | add_definitions(-DCOPYRIGHT="${COPYRIGHT}") |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
16 | |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
17 | set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake") |
21 | 18 | set(OpenGL_GL_PREFERENCE GLVND) |
259
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
19 | find_package(Qt6 COMPONENTS Core Widgets OpenGL UiPlugin OpenGLWidgets) |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
20 | if (Qt6_FOUND) |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
21 | message(NOTICE "-- Using Qt6") |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
22 | find_package(Qt6 REQUIRED COMPONENTS Core5Compat) |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
23 | # Unfortunately "Qt::UiPlugin" doesn't seem to work so let's resolve |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
24 | # it here instead... |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
25 | add_library(QtUiPlugin ALIAS Qt6::UiPlugin) |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
26 | else() |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
27 | message(NOTICE "-- Qt6 not found, using Qt5 instead") |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
28 | find_package(Qt5 5.5 REQUIRED COMPONENTS Core Widgets OpenGL UiPlugin) |
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
29 | add_library(QtUiPlugin ALIAS Qt5::UiPlugin) |
6 | 30 | endif() |
259
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
31 | find_package(OpenGL REQUIRED) |
28 | 32 | find_package(GLM REQUIRED) |
33 | set(CMAKE_AUTOMOC ON) | |
34 | set(CMAKE_AUTOUIC ON) | |
35 | set(CMAKE_AUTORCC ON) | |
259
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
36 | include_directories(${CMAKE_CURRENT_BINARY_DIR}) |
28 | 37 | include_directories(${GLM_INCLUDE_DIR}) |
112 | 38 | add_definitions(-DQT_NO_KEYWORDS) |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
39 | source_group(${PROJECT_NAME} REGULAR_EXPRESSION "src/.+\\.(cpp|h|ui)") |
279
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
40 | |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
41 | if (NOT MSVC) |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
42 | if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug" OR "${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
43 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DDEBUG") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
44 | endif() |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
45 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wpedantic -Wunused") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
46 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-implicit-fallthrough") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
47 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-noexcept-type") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
48 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wformat-nonliteral -Wnonnull -Wnull-dereference -Winfinite-recursion -Wuninitialized -Wmissing-noreturn") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
49 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wshadow") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
50 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wundef -Wmissing-field-initializers") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
51 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wcast-qual -Wcast-align -Wcast-function-type -Wconversion") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
52 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wmissing-declarations -Wdate-time") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
53 | endif() |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
54 | if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
55 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wcovered-switch-default -Wextra-semi -Wgnu -Wmicrosoft") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
56 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wsometimes-uninitialized -Wstring-concatenation -Wstring-conversion -Wsuggest-override") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
57 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wsuggest-override -Wundefined-func-template -Wundefined-reinterpret-cast") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
58 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wuninitialized-const-reference -Wunreachable-code -Wunreachable-code-break -Wunreachable-code-return") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
59 | endif() |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
60 | add_definitions(-DCOMPILER_ID="${CMAKE_CXX_COMPILER_ID}") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
61 | add_definitions(-DCOMPILER_VERSION="${CMAKE_CXX_COMPILER_VERSION}") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
62 | add_definitions(-DCOMPILER_FLAGS="${CMAKE_CXX_FLAGS}") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
63 | add_definitions(-DCOMPILER_CPU="${CMAKE_SYSTEM_PROCESSOR}") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
64 | add_definitions(-DCOMPILER_SYSTEM="${CMAKE_SYSTEM}") |
cd70c845563a
Add build system information to the about dialog
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
272
diff
changeset
|
65 | |
253
8b994c917f69
Make LDForge widgets visible in Qt Designer
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
252
diff
changeset
|
66 | add_subdirectory(widgets) |
252
da4876bfd822
Move some widgets into a static library
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
250
diff
changeset
|
67 | |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
68 | set(SOURCE_FILES |
26 | 69 | src/colors.cpp |
3 | 70 | src/documentmanager.cpp |
55 | 71 | src/geometry.cpp |
152 | 72 | src/ldrawalgorithm.cpp |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
73 | src/libraries.cpp |
17 | 74 | src/invert.cpp |
0 | 75 | src/main.cpp |
235
7ef03c2b46ab
Add a basic message log
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
233
diff
changeset
|
76 | src/messagelog.cpp |
3 | 77 | src/model.cpp |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
78 | src/parser.cpp |
150
b6cbba6e29a1
extract polygon cache out of Model
Teemu Piippo <teemu@hecknology.net>
parents:
148
diff
changeset
|
79 | src/polygoncache.cpp |
16 | 80 | src/uiutilities.cpp |
1 | 81 | src/version.cpp |
117 | 82 | src/vertexmap.cpp |
70 | 83 | src/gl/basicshaderprogram.cpp |
17 | 84 | src/gl/compiler.cpp |
237
10a6298f636f
Add an option to log opengl messages
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
235
diff
changeset
|
85 | src/gl/debug.cpp |
17 | 86 | src/gl/partrenderer.cpp |
215
34c6e7bc4ee1
Reimplement the axes program as a layer that can be added to PartRenderer
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
214
diff
changeset
|
87 | # src/gl/vertexprogram.cpp |
263
59b6027b9843
Move render layer files to new src/layers/ directory
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
259
diff
changeset
|
88 | src/layers/axeslayer.cpp |
59b6027b9843
Move render layer files to new src/layers/ directory
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
259
diff
changeset
|
89 | src/layers/edittools.cpp |
59b6027b9843
Move render layer files to new src/layers/ directory
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
259
diff
changeset
|
90 | src/layers/gridlayer.cpp |
16 | 91 | src/settingseditor/keyboardshortcutseditor.cpp |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
92 | src/settingseditor/librarieseditor.cpp |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
93 | src/settingseditor/settingseditor.cpp |
17 | 94 | src/types/boundingbox.cpp |
233 | 95 | src/ui/circletooloptionswidget.cpp |
81
62373840e33a
object editor widgets start to form up
Teemu Piippo <teemu@hecknology.net>
parents:
70
diff
changeset
|
96 | src/ui/objecteditor.cpp |
178 | 97 | src/widgets/colorindexinput.cpp |
94
164f53fb5921
added a color select dialog
Teemu Piippo <teemu@hecknology.net>
parents:
92
diff
changeset
|
98 | src/widgets/colorselectdialog.cpp |
0 | 99 | ) |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
100 | set(HEADER_FILES |
3 | 101 | src/basics.h |
232
8efa3a33172e
Add base code for circular primitives
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
223
diff
changeset
|
102 | src/circularprimitive.h |
3 | 103 | src/colors.h |
104 | src/documentmanager.h | |
63
f7dd937667a5
omg functional programming
Teemu Piippo <teemu@hecknology.net>
parents:
55
diff
changeset
|
105 | src/functional.h |
55 | 106 | src/geometry.h |
17 | 107 | src/invert.h |
152 | 108 | src/ldrawalgorithm.h |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
109 | src/libraries.h |
235
7ef03c2b46ab
Add a basic message log
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
233
diff
changeset
|
110 | src/messagelog.h |
3 | 111 | src/model.h |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
112 | src/parser.h |
150
b6cbba6e29a1
extract polygon cache out of Model
Teemu Piippo <teemu@hecknology.net>
parents:
148
diff
changeset
|
113 | src/polygoncache.h |
17 | 114 | src/ring.h |
218
63125c36de73
Replace config collector with a simpler system
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
216
diff
changeset
|
115 | src/settings.h |
63125c36de73
Replace config collector with a simpler system
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
216
diff
changeset
|
116 | src/typeconversions.h |
16 | 117 | src/uiutilities.h |
1 | 118 | src/version.h |
117 | 119 | src/vertexmap.h |
223
ce81db996275
Use Mapbox's ear clipping algorithm to handle drawing any simple polygon
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
221
diff
changeset
|
120 | src/algorithm/earcut.h |
70 | 121 | src/gl/basicshaderprogram.h |
17 | 122 | src/gl/common.h |
123 | src/gl/compiler.h | |
237
10a6298f636f
Add an option to log opengl messages
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
235
diff
changeset
|
124 | src/gl/debug.h |
17 | 125 | src/gl/partrenderer.h |
215
34c6e7bc4ee1
Reimplement the axes program as a layer that can be added to PartRenderer
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
214
diff
changeset
|
126 | # src/gl/vertexprogram.h |
263
59b6027b9843
Move render layer files to new src/layers/ directory
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
259
diff
changeset
|
127 | src/layers/axeslayer.h |
59b6027b9843
Move render layer files to new src/layers/ directory
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
259
diff
changeset
|
128 | src/layers/edittools.h |
59b6027b9843
Move render layer files to new src/layers/ directory
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
259
diff
changeset
|
129 | src/layers/gridlayer.h |
16 | 130 | src/settingseditor/keyboardshortcutseditor.h |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
131 | src/settingseditor/librarieseditor.h |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
132 | src/settingseditor/settingseditor.h |
17 | 133 | src/types/boundingbox.h |
233 | 134 | src/ui/circletooloptionswidget.h |
81
62373840e33a
object editor widgets start to form up
Teemu Piippo <teemu@hecknology.net>
parents:
70
diff
changeset
|
135 | src/ui/objecteditor.h |
178 | 136 | src/widgets/colorindexinput.h |
94
164f53fb5921
added a color select dialog
Teemu Piippo <teemu@hecknology.net>
parents:
92
diff
changeset
|
137 | src/widgets/colorselectdialog.h |
0 | 138 | ) |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
139 | set(FORM_FILES |
272
9d52b119b3f5
Sort out versions more, add about page
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
269
diff
changeset
|
140 | src/about.ui |
1 | 141 | src/mainwindow.ui |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
142 | src/settingseditor/librarieseditor.ui |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
143 | src/settingseditor/settingseditor.ui |
232
8efa3a33172e
Add base code for circular primitives
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
223
diff
changeset
|
144 | src/ui/circletool.ui |
182
27fb1c3c9fbb
add ui file to object editor
Teemu Piippo <teemu@hecknology.net>
parents:
180
diff
changeset
|
145 | src/ui/objecteditor.ui |
94
164f53fb5921
added a color select dialog
Teemu Piippo <teemu@hecknology.net>
parents:
92
diff
changeset
|
146 | src/widgets/colorselectdialog.ui |
178 | 147 | src/widgets/colorindexinput.ui |
0 | 148 | ) |
6 | 149 | |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
150 | set(LOCALE_FILES |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
151 | locale/fi.ts |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
152 | locale/sv.ts |
6 | 153 | ) |
154 | ||
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
155 | set (OTHER_FILES |
42
1d03dc1173cd
made configurationoptions.txt visible in Qt Creator
Teemu Piippo <teemu@hecknology.net>
parents:
41
diff
changeset
|
156 | ) |
1d03dc1173cd
made configurationoptions.txt visible in Qt Creator
Teemu Piippo <teemu@hecknology.net>
parents:
41
diff
changeset
|
157 | |
232
8efa3a33172e
Add base code for circular primitives
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
223
diff
changeset
|
158 | set(CMAKE_AUTOUIC_SEARCH_PATHS src/ui) |
267
9a482f506747
rename ldforge.qrc -> resources.qrc
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
266
diff
changeset
|
159 | set(QRC_FILE resources.qrc) |
148 | 160 | set(CMAKE_CXX_STANDARD 20) |
39
caac957e9834
Main color is now configurable
Teemu Piippo <teemu@hecknology.net>
parents:
33
diff
changeset
|
161 | set(CMAKE_CXX_STANDARD_REQUIRED ON) |
caac957e9834
Main color is now configurable
Teemu Piippo <teemu@hecknology.net>
parents:
33
diff
changeset
|
162 | set(CMAKE_CXX_EXTENSIONS OFF) |
caac957e9834
Main color is now configurable
Teemu Piippo <teemu@hecknology.net>
parents:
33
diff
changeset
|
163 | include_directories("${PROJECT_BINARY_DIR}") |
caac957e9834
Main color is now configurable
Teemu Piippo <teemu@hecknology.net>
parents:
33
diff
changeset
|
164 | include_directories("${PROJECT_BINARY_DIR}/src") |
252
da4876bfd822
Move some widgets into a static library
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
250
diff
changeset
|
165 | include_directories("${PROJECT_SOURCE_DIR}") |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
166 | qt_add_resources(QRC_SOURCE ${QRC_FILE}) |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
167 | qt_wrap_ui(FORMS_HEADERS ${FORM_FILES}) |
6 | 168 | |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
169 | add_executable(${TARGET_NAME} WIN32 |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
170 | ${SOURCE_FILES} |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
171 | ${HEADER_FILES} |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
172 | ${QRC_FILE} |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
173 | ${QRC_SOURCE} |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
174 | ${FORMS_HEADERS} |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
175 | ${OTHER_FILES} |
0 | 176 | ) |
6 | 177 | |
266
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
178 | set_source_files_properties(${HEADER_FILES} PROPERTIES HEADER_FILE_ONLY TRUE) |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
179 | set_source_files_properties(${QRC_FILE} PROPERTIES HEADER_FILE_ONLY TRUE) |
2800a15e2a2f
use project name more in cmakelists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
264
diff
changeset
|
180 | set_source_files_properties(${OTHER_FILES} PROPERTIES HEADER_FILE_ONLY TRUE) |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
181 | set_target_properties(${TARGET_NAME} PROPERTIES AUTOMOC 1) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
182 | target_link_libraries(${TARGET_NAME} PRIVATE Qt::Core) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
183 | target_link_libraries(${TARGET_NAME} PRIVATE Qt::Widgets) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
184 | target_link_libraries(${TARGET_NAME} PRIVATE Qt::OpenGL) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
185 | target_link_libraries(${TARGET_NAME} PRIVATE ${OPENGL_LIBRARIES}) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
186 | target_link_libraries(${TARGET_NAME} PRIVATE ${GLEW_LIBRARIES}) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
187 | target_link_libraries(${TARGET_NAME} PRIVATE ${WIDGETLIB}) |
259
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
188 | if (Qt6_FOUND) |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
189 | target_link_libraries(${TARGET_NAME} PRIVATE Qt6::Core5Compat) |
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
190 | target_link_libraries(${TARGET_NAME} PRIVATE Qt6::OpenGLWidgets) |
259
c27612f0eac0
- Made it build under Qt6
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
256
diff
changeset
|
191 | endif() |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
192 | |
114
4e03b0e2a29f
added build-time test for line length
Teemu Piippo <teemu@hecknology.net>
parents:
112
diff
changeset
|
193 | add_custom_target(linelength ALL |
4e03b0e2a29f
added build-time test for line length
Teemu Piippo <teemu@hecknology.net>
parents:
112
diff
changeset
|
194 | COMMAND python3 |
4e03b0e2a29f
added build-time test for line length
Teemu Piippo <teemu@hecknology.net>
parents:
112
diff
changeset
|
195 | "${CMAKE_SOURCE_DIR}/tools/linelength.py" |
267
9a482f506747
rename ldforge.qrc -> resources.qrc
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
266
diff
changeset
|
196 | ${SOURCE_FILES} |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
197 | ${HEADER_FILESl} |
114
4e03b0e2a29f
added build-time test for line length
Teemu Piippo <teemu@hecknology.net>
parents:
112
diff
changeset
|
198 | WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}) |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
199 | add_dependencies(${TARGET_NAME} linelength) |
114
4e03b0e2a29f
added build-time test for line length
Teemu Piippo <teemu@hecknology.net>
parents:
112
diff
changeset
|
200 | |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
201 | # Collect the current hg revision into hginfo.h |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
202 | add_custom_target(revision_check ALL |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
203 | COMMAND python3 "${CMAKE_SOURCE_DIR}/tools/updaterevision.py" --cwd "$(CMAKE_SOURCE_DIR)" hginfo.h |
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
204 | WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
205 | add_dependencies(${TARGET_NAME} revision_check) |
7
68443f5be176
added the settings editor
Teemu Piippo <teemu@hecknology.net>
parents:
6
diff
changeset
|
206 | |
268
fb319526ba6c
Define application name and version in CMakeLists
Teemu Piippo <teemu.s.piippo@gmail.com>
parents:
267
diff
changeset
|
207 | install(TARGETS ${TARGET_NAME} RUNTIME DESTINATION bin) |