Mercurial > trustbridge
annotate ui/CMakeLists.txt @ 633:6c090638b2b4
Use static buffer for module file name.
According to the msdn examle the return value of getmodulefilename
should be used to indicate success and not the size. And according
to comments on that function on Windows 8.1 it does not return
the needed size. So better be more robust and just use max_path
as a limit.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Mon, 23 Jun 2014 15:29:48 +0200 |
parents | 5d6e86cf3b87 |
children | 129e611eaf50 |
rev | line source |
---|---|
405
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
1 # Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
2 # Software engineering by Intevation GmbH |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
3 # |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
4 # This file is Free Software under the GNU GPL (v>=2) |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
5 # and comes with ABSOLUTELY NO WARRANTY! |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
6 # See LICENSE.txt for details. |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
369
diff
changeset
|
7 |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
8 include_directories(${Qt5Widgets_INCLUDE_DIRS}) |
57
d1aaee32e491
Include POLARSSL_INCLUDE_DIR in ui too
Andre Heinecke <aheinecke@intevation.de>
parents:
45
diff
changeset
|
9 include_directories(${POLARSSL_INCLUDE_DIR}) |
621
5d6e86cf3b87
Fix dependency handling for messages files.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
620
diff
changeset
|
10 include_directories(${CMAKE_SOURCE_DIR}/common) |
5d6e86cf3b87
Fix dependency handling for messages files.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
620
diff
changeset
|
11 include_directories(${CMAKE_BINARY_DIR}/common) |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
12 add_definitions(${Qt5Widgets_DEFINITIONS}) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
13 |
411
413b29f6758f
Add translation infrastructure and a file for the Administrator application
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
14 find_package(Qt5LinguistTools) |
413b29f6758f
Add translation infrastructure and a file for the Administrator application
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
15 |
520
09077eca0b0d
Rename administrator to trustbridge-admin
Andre Heinecke <aheinecke@intevation.de>
parents:
514
diff
changeset
|
16 # Common code is used in either the client or the administrator |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
17 # application or in unit tests. |
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
18 set(UICOMMON_SOURCES |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
19 ${CMAKE_CURRENT_SOURCE_DIR}/certificatelist.cpp |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
20 ${CMAKE_CURRENT_SOURCE_DIR}/certificate.cpp |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
21 ${CMAKE_CURRENT_SOURCE_DIR}/downloader.cpp |
45
c6125d73faf4
Move SSLConnection into it's own class
Andre Heinecke <aheinecke@intevation.de>
parents:
39
diff
changeset
|
22 ${CMAKE_CURRENT_SOURCE_DIR}/sslconnection.cpp |
452
f8b480b08532
Factor out polarssl error handling and start new sslhelp file
Andre Heinecke <aheinecke@intevation.de>
parents:
427
diff
changeset
|
23 ${CMAKE_CURRENT_SOURCE_DIR}/sslhelp.cpp |
45
c6125d73faf4
Move SSLConnection into it's own class
Andre Heinecke <aheinecke@intevation.de>
parents:
39
diff
changeset
|
24 ) |
c6125d73faf4
Move SSLConnection into it's own class
Andre Heinecke <aheinecke@intevation.de>
parents:
39
diff
changeset
|
25 |
497
5e77d1c4826c
Add Icon for Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
496
diff
changeset
|
26 # Cmake does not correctly identify gcc windres when cross compiling |
5e77d1c4826c
Add Icon for Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
496
diff
changeset
|
27 # making this line neccessary to set the correct flags for it. |
5e77d1c4826c
Add Icon for Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
496
diff
changeset
|
28 # See: http://public.kitware.com/Bug/view.php?id=11773 |
5e77d1c4826c
Add Icon for Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
496
diff
changeset
|
29 SET(CMAKE_RC_COMPILE_OBJECT |
5e77d1c4826c
Add Icon for Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
496
diff
changeset
|
30 "<CMAKE_RC_COMPILER> <FLAGS> <DEFINES> -Ocoff <SOURCE> <OBJECT>") |
5e77d1c4826c
Add Icon for Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
496
diff
changeset
|
31 |
407
af53c40e74b1
Rename m13ui to TrustBridge
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
32 set(TRUSTBRIDGE_SOURCES |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
33 ${CMAKE_CURRENT_SOURCE_DIR}/mainwindow.cpp |
190
1a66a15d0df8
Added stub for help dialog.
Raimund Renkert <rrenkert@intevation.de>
parents:
124
diff
changeset
|
34 ${CMAKE_CURRENT_SOURCE_DIR}/helpdialog.cpp |
266
dd6a09d2699f
Added delegate for certificate list items to render a custom ui.
Raimund Renkert <rrenkert@intevation.de>
parents:
257
diff
changeset
|
35 ${CMAKE_CURRENT_SOURCE_DIR}/certificateitemdelegate.cpp |
273
b6c2fa8457b6
Added new list item delegate for drawing a separator.
Raimund Renkert <rrenkert@intevation.de>
parents:
266
diff
changeset
|
36 ${CMAKE_CURRENT_SOURCE_DIR}/separatoritemdelegate.cpp |
257
06089ba2614a
Use Installwrapper to call certificate installation process
Andre Heinecke <aheinecke@intevation.de>
parents:
254
diff
changeset
|
37 ${CMAKE_CURRENT_SOURCE_DIR}/installwrapper.cpp |
527
bedeb38c244a
Move createcertlist and aboutdialog back into their respective source groups.
Andre Heinecke <aheinecke@intevation.de>
parents:
525
diff
changeset
|
38 ${CMAKE_CURRENT_SOURCE_DIR}/aboutdialog.cpp |
609
292c590ba9cb
Add warning dialog for running firefox and tunderbird processes
Andre Heinecke <andre.heinecke@intevation.de>
parents:
603
diff
changeset
|
39 ${CMAKE_CURRENT_SOURCE_DIR}/processhelp_win.cpp |
292c590ba9cb
Add warning dialog for running firefox and tunderbird processes
Andre Heinecke <andre.heinecke@intevation.de>
parents:
603
diff
changeset
|
40 ${CMAKE_CURRENT_SOURCE_DIR}/processhelp_linux.cpp |
292c590ba9cb
Add warning dialog for running firefox and tunderbird processes
Andre Heinecke <andre.heinecke@intevation.de>
parents:
603
diff
changeset
|
41 ${CMAKE_CURRENT_SOURCE_DIR}/processwaitdialog.cpp |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
42 ${CERTIFICATELIST_SOURCES} |
45
c6125d73faf4
Move SSLConnection into it's own class
Andre Heinecke <aheinecke@intevation.de>
parents:
39
diff
changeset
|
43 ${DOWNLOADER_SOURCES} |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
44 ) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
45 |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
46 set(ADMINISTRATOR_SOURCES |
333
de94c4ec22b1
Renamed management to administrator application.
Raimund Renkert <rrenkert@intevation.de>
parents:
327
diff
changeset
|
47 ${CMAKE_CURRENT_SOURCE_DIR}/administratorwindow.cpp |
335
811eec4e1b99
Use a table view with the new certificate table model in administrator app.
Raimund Renkert <rrenkert@intevation.de>
parents:
333
diff
changeset
|
48 ${CMAKE_CURRENT_SOURCE_DIR}/certificatetablemodel.cpp |
348
e6aa82466420
Use the table item delegate for certificates and make the model editable.
Raimund Renkert <rrenkert@intevation.de>
parents:
335
diff
changeset
|
49 ${CMAKE_CURRENT_SOURCE_DIR}/certificatetabledelegate.cpp |
362
857ae1ffdd6f
Open the new dialog from the main menu.
Raimund Renkert <rrenkert@intevation.de>
parents:
348
diff
changeset
|
50 ${CMAKE_CURRENT_SOURCE_DIR}/createinstallerdialog.cpp |
527
bedeb38c244a
Move createcertlist and aboutdialog back into their respective source groups.
Andre Heinecke <aheinecke@intevation.de>
parents:
525
diff
changeset
|
51 ${CMAKE_CURRENT_SOURCE_DIR}/aboutdialog.cpp |
bedeb38c244a
Move createcertlist and aboutdialog back into their respective source groups.
Andre Heinecke <aheinecke@intevation.de>
parents:
525
diff
changeset
|
52 ${CMAKE_CURRENT_SOURCE_DIR}/createcertlistdialog.cpp |
566
8728ae882b6a
Added dialog to show the differences before saving a certificate list.
Raimund Renkert <rrenkert@intevation.de>
parents:
561
diff
changeset
|
53 ${CMAKE_CURRENT_SOURCE_DIR}/certificatediffdialog.cpp |
327
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
54 ${CERTIFICATELIST_SOURCES} |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
55 ) |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
56 |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
57 # Seperated to make it easier to include the sources in tests |
407
af53c40e74b1
Rename m13ui to TrustBridge
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
58 set(TRUSTBRIDGE_RESOURCES |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
59 ${CMAKE_CURRENT_SOURCE_DIR}/icons.qrc |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
60 ${CMAKE_CURRENT_SOURCE_DIR}/certs.qrc |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
61 ) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
62 |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
63 set(ADMINISTRATOR_RESOURCES |
327
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
64 ${CMAKE_CURRENT_SOURCE_DIR}/icons.qrc |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
65 ) |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
66 |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
67 if(UNIX) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
68 # See: https://bugreports.qt-project.org/browse/QTBUG-35918 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
69 # XCB_EXTRA_LIBS should be gotten automatically. |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
70 # The following list is taken from the .pri file |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
71 get_target_property(_loc Qt5::Widgets LOCATION) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
72 get_filename_component(_qtpath ${_loc} PATH) |
107
5b9af103a355
Allow developers to overwrite the hardcoded xkb-common libname
Andre Heinecke <aheinecke@intevation.de>
parents:
81
diff
changeset
|
73 |
5b9af103a355
Allow developers to overwrite the hardcoded xkb-common libname
Andre Heinecke <aheinecke@intevation.de>
parents:
81
diff
changeset
|
74 if(NOT XKBCOMMON_LIB) |
5b9af103a355
Allow developers to overwrite the hardcoded xkb-common libname
Andre Heinecke <aheinecke@intevation.de>
parents:
81
diff
changeset
|
75 # Hack on a hack to overwrite the xkbcommon libname. |
5b9af103a355
Allow developers to overwrite the hardcoded xkb-common libname
Andre Heinecke <aheinecke@intevation.de>
parents:
81
diff
changeset
|
76 set(XKBCOMMON_LIB -lxkbcommon) |
108 | 77 endif() |
107
5b9af103a355
Allow developers to overwrite the hardcoded xkb-common libname
Andre Heinecke <aheinecke@intevation.de>
parents:
81
diff
changeset
|
78 |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
79 set(XCB_EXTRA_LIBS |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
80 -L${_qtpath} |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
81 -lX11 -lX11-xcb -lXi -lxcb-render-util -lXrender -lSM -lICE -lxcb-render -ldbus-1 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
82 -lxcb -lxcb-image -lxcb-icccm -lxcb-sync -lxcb-xfixes -lxcb-shm -lxcb-randr |
107
5b9af103a355
Allow developers to overwrite the hardcoded xkb-common libname
Andre Heinecke <aheinecke@intevation.de>
parents:
81
diff
changeset
|
83 ${XKBCOMMON_LIB} -lxcb-shape -lxcb-keysyms -lQt5PlatformSupport |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
84 -lfreetype -lQt5DBus -lQt5Gui -ljpeg -lpng -lQt5Core |
601
9cdc14373a5d
(issue #16) use qt with fontconfig
Andre Heinecke <andre.heinecke@intevation.de>
parents:
576
diff
changeset
|
85 -lz -lm -ldl -lrt -lpthread -lfontconfig) |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
86 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
87 set(EXTRA_STATIC_LIBS -lz -lpthread -ldl -lpng -ljpeg |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
88 Qt5::QXcbIntegrationPlugin ${XCB_EXTRA_LIBS}) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
89 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
90 elseif(WIN32) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
91 get_target_property(_loc Qt5::Widgets LOCATION) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
92 get_filename_component(_qtpath ${_loc} PATH) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
93 set(WINDOWS_EXTRA_LIBS |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
94 -L${_qtpath} |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
95 -lwinspool -lshlwapi -lfreetype -lbz2 -lpng16 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
96 -lQt5PlatformSupport -lQt5Gui -lcomdlg32 -loleaut32 -limm32 -lwinmm |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
97 -lglu32 -lopengl32 -lgdi32 -ljpeg -lpng -lQt5Core -lole32 -luuid -lws2_32 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
98 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lsicuin -lsicuuc -lsicudt -lpcre16) |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
99 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
100 set(EXTRA_STATIC_LIBS Qt5::QWindowsIntegrationPlugin ${WINDOWS_EXTRA_LIBS} -lwinhttp -lcrypt32) |
602
854248d81ba4
Fully switch to unicode for windows.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
101 |
854248d81ba4
Fully switch to unicode for windows.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
601
diff
changeset
|
102 add_definitions(-DUNICODE) |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
103 endif() |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
104 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
105 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}") |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
106 |
409
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
107 generate_cppcheck(SOURCES ${CINST_SOURCES} ${TRUSTBRIDGE_SOURCES} TARGET_NAME custom_cppcheck) |
09bb19e5e369
Remove m13 mentions and change test certificate to intevation.de
Andre Heinecke <aheinecke@intevation.de>
parents:
408
diff
changeset
|
108 add_dependencies(static_check custom_cppcheck) |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
109 |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
110 # Adding resources here in an extra variable to enable reuse of |
407
af53c40e74b1
Rename m13ui to TrustBridge
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
111 # TRUSTBRIDGE_SOURCES in the test subdirectory. |
576
a677cffcaed4
Readd icon to the resource files (have to be linked with main)
Andre Heinecke <aheinecke@intevation.de>
parents:
572
diff
changeset
|
112 set(TRUSTBRIDGE_MAIN_WITH_RESOURCES ${CMAKE_CURRENT_SOURCE_DIR}/main.cpp |
620
bc02ee484067
Add dummy logging with ressourced messages.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
617
diff
changeset
|
113 ${CMAKE_CURRENT_SOURCE_DIR}/img/icon.rc) |
561
4433f9d57f6d
Add resources to main.
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
114 qt5_add_resources(TRUSTBRIDGE_MAIN_WITH_RESOURCES ${TRUSTBRIDGE_RESOURCES}) |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
115 |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
116 set(ADMINISTRATOR_MAIN_WITH_RESOURCES ${CMAKE_CURRENT_SOURCE_DIR}/administrator.cpp) |
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
117 qt5_add_resources(ADMINISTRATOR_MAIN_WITH_RESOURCES ${ADMINISTRATOR_RESOURCES}) |
411
413b29f6758f
Add translation infrastructure and a file for the Administrator application
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
118 |
514
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
119 if(WIN32) |
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
120 # This option causes cmake to use the appropiate liker flags to hide |
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
121 # the console Window on Windows |
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
122 set (_add_executable_params WIN32) |
617
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
123 |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
124 # Add the event messages |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
125 if (MINGW) |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
126 STRING(REGEX REPLACE "windres" "windmc" MC_COMPILER ${CMAKE_RC_COMPILER}) |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
127 else() |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
128 # untested |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
129 set(MC_COMPILER "mc.exe") |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
130 endif() |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
131 |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
132 add_custom_command( |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
133 OUTPUT ${CMAKE_BINARY_DIR}/common/events.h |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
134 ${CMAKE_BINARY_DIR}/common/events.rc |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
135 ${CMAKE_BINARY_DIR}/common/MSG00407.bin |
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
136 ${CMAKE_BINARY_DIR}/common/MSG00409.bin |
621
5d6e86cf3b87
Fix dependency handling for messages files.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
620
diff
changeset
|
137 COMMAND ${MC_COMPILER} ${CMAKE_SOURCE_DIR}/common/events.mc -r ${CMAKE_BINARY_DIR}/common -h ${CMAKE_BINARY_DIR}/common |
617
63a128400bf3
Add message compiler logic and messages file
Andre Heinecke <andre.heinecke@intevation.de>
parents:
609
diff
changeset
|
138 DEPENDS ${CMAKE_SOURCE_DIR}/common/events.mc) |
621
5d6e86cf3b87
Fix dependency handling for messages files.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
620
diff
changeset
|
139 set_property(SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/img/icon.rc APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/common/events.rc) |
514
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
140 endif() |
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
141 |
411
413b29f6758f
Add translation infrastructure and a file for the Administrator application
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
142 if(Qt5LinguistTools_FOUND) |
420
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
143 # Include translation as a resource |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
144 # This works in the source directory to enable the rcc dependencies to be found |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
145 # and it also updates the currently available localization. |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
146 # This would probably be better placed in a macro |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
147 configure_file(l10n/administrator.qrc.in administrator.qrc) |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
148 qt5_add_resources(ADMINISTRATOR_L10N ${CMAKE_CURRENT_BINARY_DIR}/administrator.qrc) |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
149 qt5_create_translation(ADMINISTRATOR_TRANSLATION ${ADMINISTRATOR_SOURCES} |
420
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
150 ${CMAKE_CURRENT_SOURCE_DIR}/l10n/administrator_de_DE.ts) |
520
09077eca0b0d
Rename administrator to trustbridge-admin
Andre Heinecke <aheinecke@intevation.de>
parents:
514
diff
changeset
|
151 add_executable(trustbridge-admin |
514
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
152 ${_add_executable_params} |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
153 ${ADMINISTRATOR_MAIN_WITH_RESOURCES} |
420
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
154 ${ADMINISTRATOR_L10N} |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
155 ${ADMINISTRATOR_TRANSLATION} |
16b6d5686835
Switch to resource based loading of translations
Andre Heinecke <aheinecke@intevation.de>
parents:
411
diff
changeset
|
156 ) |
421
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
157 |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
158 configure_file(l10n/trustbridge.qrc.in trustbridge.qrc) |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
159 qt5_add_resources(TRUSTBRIDGE_L10N ${CMAKE_CURRENT_BINARY_DIR}/trustbridge.qrc) |
561
4433f9d57f6d
Add resources to main.
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
160 qt5_create_translation(TRUSTBRIDGE_TRANSLATION ${TRUSTBRIDGE_SOURCES} |
421
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
161 ${CMAKE_CURRENT_SOURCE_DIR}/l10n/trustbridge_de_DE.ts) |
514
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
162 add_executable(trustbridge |
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
163 ${_add_executable_params} |
561
4433f9d57f6d
Add resources to main.
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
164 ${TRUSTBRIDGE_MAIN_WITH_RESOURCES} |
421
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
165 ${TRUSTBRIDGE_L10N} |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
166 ${TRUSTBRIDGE_TRANSLATION} |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
167 ) |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
168 |
411
413b29f6758f
Add translation infrastructure and a file for the Administrator application
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
169 else() |
421
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
170 message (STATUS "WARNING: Could not find qt linguist tools. Translation will not be included.") |
520
09077eca0b0d
Rename administrator to trustbridge-admin
Andre Heinecke <aheinecke@intevation.de>
parents:
514
diff
changeset
|
171 add_executable(trustbridge-admin |
514
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
172 ${_add_executable_params} |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
173 ${ADMINISTRATOR_MAIN_WITH_RESOURCES}) |
514
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
174 add_executable(trustbridge |
ce8325686b09
Use Win32 linker flags on Windows
Andre Heinecke <aheinecke@intevation.de>
parents:
497
diff
changeset
|
175 ${_add_executable_params} |
561
4433f9d57f6d
Add resources to main.
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
176 ${TRUSTBRIDGE_MAIN_WITH_RESOURCES}) |
411
413b29f6758f
Add translation infrastructure and a file for the Administrator application
Andre Heinecke <aheinecke@intevation.de>
parents:
409
diff
changeset
|
177 endif() |
327
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
178 |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
179 add_library(ui_common STATIC ${UICOMMON_SOURCES}) |
572
2459a7122532
Fix administrator typo
Andre Heinecke <aheinecke@intevation.de>
parents:
566
diff
changeset
|
180 add_library(tbadminlib STATIC ${ADMINISTRATOR_SOURCES}) |
561
4433f9d57f6d
Add resources to main.
Andre Heinecke <aheinecke@intevation.de>
parents:
560
diff
changeset
|
181 add_library(tblib STATIC ${TRUSTBRIDGE_SOURCES}) |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
182 |
560
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
558
diff
changeset
|
183 target_link_libraries(trustbridge-admin |
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
558
diff
changeset
|
184 tbadminlib |
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
558
diff
changeset
|
185 Qt5::Widgets |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
186 ui_common |
408
ac9e95ef6966
rename m13_common to trustbridge_common
Andre Heinecke <aheinecke@intevation.de>
parents:
407
diff
changeset
|
187 trustbridge_common |
327
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
188 ${POLARSSL_LIBRARIES} |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
189 ${EXTRA_STATIC_LIBS} |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
190 ${PROFILING_LIBS}) |
3261b2a9cab7
Added a first version of the management application gui.
Raimund Renkert <rrenkert@intevation.de>
parents:
273
diff
changeset
|
191 |
560
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
558
diff
changeset
|
192 target_link_libraries(trustbridge |
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
558
diff
changeset
|
193 tblib |
3af16cbc961d
Move UI code into librarys to speed up build of unit tests
Andre Heinecke <aheinecke@intevation.de>
parents:
558
diff
changeset
|
194 Qt5::Widgets |
496
fa3a7ebf0049
Move some common UI code into a library to avoid recompiling for each test
Andre Heinecke <aheinecke@intevation.de>
parents:
452
diff
changeset
|
195 ui_common |
421
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
196 trustbridge_common |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
197 ${POLARSSL_LIBRARIES} |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
198 ${EXTRA_STATIC_LIBS} |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
199 ${PROFILING_LIBS}) |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
200 |
7edfc9b9b360
Add translation for trustbridge
Andre Heinecke <aheinecke@intevation.de>
parents:
420
diff
changeset
|
201 |
33
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
202 # Tests |
25c08d63d2b7
Add CMakeLists in UI
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
203 add_subdirectory(tests) |
124
2d50ff378367
Add install targets
Andre Heinecke <aheinecke@intevation.de>
parents:
109
diff
changeset
|
204 |
407
af53c40e74b1
Rename m13ui to TrustBridge
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
205 install(TARGETS trustbridge DESTINATION bin) |
520
09077eca0b0d
Rename administrator to trustbridge-admin
Andre Heinecke <aheinecke@intevation.de>
parents:
514
diff
changeset
|
206 install(TARGETS trustbridge-admin DESTINATION bin) |