Mercurial > trustbridge
annotate cinst/CMakeLists.txt @ 1171:76c469b460d8
ui/img: (issue115) Icon consistency improved by using inkscape automated export.
author | Bernhard Reiter <bernhard@intevation.de> |
---|---|
date | Fri, 19 Sep 2014 15:23:50 +0200 |
parents | fc4e1fe4e4d4 |
children | 148014db2f3b e210ecc32d69 |
rev | line source |
---|---|
405
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
363
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:
363
diff
changeset
|
2 # Software engineering by Intevation GmbH |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
363
diff
changeset
|
3 # |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
363
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:
363
diff
changeset
|
5 # and comes with ABSOLUTELY NO WARRANTY! |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
363
diff
changeset
|
6 # See LICENSE.txt for details. |
35d6b371ba63
Add License header for CMake and shell scripts
Andre Heinecke <aheinecke@intevation.de>
parents:
363
diff
changeset
|
7 |
101
7e2d08555112
Make cinst cmakelist relative so it can be used standalone
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
8 cmake_minimum_required(VERSION 2.8) |
7e2d08555112
Make cinst cmakelist relative so it can be used standalone
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
9 |
25
92108a2120f1
Move certificatelist to common. Add cinst directory
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
10 set(CMAKE_AUTOMOC OFF) |
92108a2120f1
Move certificatelist to common. Add cinst directory
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
11 |
101
7e2d08555112
Make cinst cmakelist relative so it can be used standalone
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
12 include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../common) |
37
00aa5fa3c2fb
Build System maintainance. Correct integration of Polarssl.
Andre Heinecke <aheinecke@intevation.de>
parents:
25
diff
changeset
|
13 |
25
92108a2120f1
Move certificatelist to common. Add cinst directory
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
14 set(CINST_SOURCES |
137
4904fe01055d
Factor out windows specific parts
Andre Heinecke <aheinecke@intevation.de>
parents:
124
diff
changeset
|
15 ${CMAKE_CURRENT_SOURCE_DIR}/windowsstore.c |
302
fac7e1b0e558
Add nss store calling function and use it in cinst
Andre Heinecke <andre.heinecke@intevation.de>
parents:
242
diff
changeset
|
16 ${CMAKE_CURRENT_SOURCE_DIR}/nssstore_linux.c |
324
eff8e7ce4dae
Add first compiling implementation of nssstore_win.c
Andre Heinecke <aheinecke@intevation.de>
parents:
307
diff
changeset
|
17 ${CMAKE_CURRENT_SOURCE_DIR}/nssstore_win.c |
101
7e2d08555112
Make cinst cmakelist relative so it can be used standalone
Andre Heinecke <aheinecke@intevation.de>
parents:
68
diff
changeset
|
18 ${CMAKE_CURRENT_SOURCE_DIR}/main.c |
25
92108a2120f1
Move certificatelist to common. Add cinst directory
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
19 ) |
223
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
20 add_executable(cinst ${CINST_SOURCES}) |
25
92108a2120f1
Move certificatelist to common. Add cinst directory
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
21 |
68
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
59
diff
changeset
|
22 if (WIN32) |
363
d10d9bc2e84f
Update Windows api usage. Warning: To build on windows you need
Andre Heinecke <aheinecke@intevation.de>
parents:
324
diff
changeset
|
23 set(WIN_EXTRA_LIBS -lcrypt32 -luserenv -lshell32) |
68
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
59
diff
changeset
|
24 endif(WIN32) |
37
00aa5fa3c2fb
Build System maintainance. Correct integration of Polarssl.
Andre Heinecke <aheinecke@intevation.de>
parents:
25
diff
changeset
|
25 |
00aa5fa3c2fb
Build System maintainance. Correct integration of Polarssl.
Andre Heinecke <aheinecke@intevation.de>
parents:
25
diff
changeset
|
26 target_link_libraries(cinst |
408
ac9e95ef6966
rename m13_common to trustbridge_common
Andre Heinecke <aheinecke@intevation.de>
parents:
405
diff
changeset
|
27 trustbridge_common |
37
00aa5fa3c2fb
Build System maintainance. Correct integration of Polarssl.
Andre Heinecke <aheinecke@intevation.de>
parents:
25
diff
changeset
|
28 ${PROFILING_LIBS} |
68
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
59
diff
changeset
|
29 ${POLARSSL_LIBRARIES} |
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
59
diff
changeset
|
30 ${WIN_EXTRA_LIBS}) |
8ffbb48528ae
Add certificate installation for windows
Andre Heinecke <aheinecke@intevation.de>
parents:
59
diff
changeset
|
31 |
124
2d50ff378367
Add install targets
Andre Heinecke <aheinecke@intevation.de>
parents:
122
diff
changeset
|
32 install(TARGETS cinst DESTINATION bin) |
1019
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
33 if (WIN32) |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
34 add_custom_command( |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
35 TARGET cinst |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
36 POST_BUILD |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
37 COMMAND ${CMAKE_STRIP} cinst.exe |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
38 ) |
1071
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
39 if (NOT RELEASE_BUILD) |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
40 add_custom_command( |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
41 TARGET cinst |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
42 POST_BUILD |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
43 COMMAND ${OSSLSIGNCODE_EXECUTABLE} sign -certs ${CMAKE_SOURCE_DIR}/ui/tests/data/codesign/codesigning.pem |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
44 -key ${CMAKE_SOURCE_DIR}/ui/tests/data/codesign/codesigning.key |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
45 -h sha256 -in ${CMAKE_CURRENT_BINARY_DIR}/cinst.exe |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
46 -out ${CMAKE_CURRENT_BINARY_DIR}/cinst-signed.exe && |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
47 mv ${CMAKE_CURRENT_BINARY_DIR}/cinst-signed.exe ${CMAKE_CURRENT_BINARY_DIR}/cinst.exe |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
48 ) |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
49 endif() |
1019
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
50 else() |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
51 add_custom_command( |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
52 TARGET cinst |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
53 POST_BUILD |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
54 COMMAND strip cinst |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
55 ) |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
56 endif() |
124
2d50ff378367
Add install targets
Andre Heinecke <aheinecke@intevation.de>
parents:
122
diff
changeset
|
57 |
223
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
58 # ---------------------------------------------------------------------- |
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
59 # Mozilla nss store specific certificate installer: |
834
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
60 set(MOZILLA_SOURCES |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
61 ${CMAKE_CURRENT_SOURCE_DIR}/nss-secitemlist.c |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
62 ${CMAKE_CURRENT_SOURCE_DIR}/mozilla.c |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
63 ) |
223
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
64 |
834
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
65 if(WIN32 OR NSS_FOUND) |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
66 include_directories(${NSS_INCLUDE_DIRS}) |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
67 add_executable(mozilla ${MOZILLA_SOURCES}) |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
68 target_link_libraries(mozilla |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
69 trustbridge_common |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
70 ${POLARSSL_LIBRARIES} |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
71 ${NSS_LIBRARIES} |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
72 ${PROFILING_LIBS}) |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
73 set_target_properties(mozilla PROPERTIES COMPILE_FLAGS "-std=c99") |
8081ed84589d
Use static nss from subrepository on windows
Andre Heinecke <andre.heinecke@intevation.de>
parents:
408
diff
changeset
|
74 install(TARGETS mozilla DESTINATION bin) |
1019
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
75 |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
76 if (WIN32) |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
77 add_custom_command( |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
78 TARGET mozilla |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
79 POST_BUILD |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
80 COMMAND ${CMAKE_STRIP} mozilla.exe |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
81 ) |
1071
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
82 if (NOT RELEASE_BUILD) |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
83 add_custom_command( |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
84 TARGET mozilla |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
85 POST_BUILD |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
86 COMMAND ${OSSLSIGNCODE_EXECUTABLE} sign -certs ${CMAKE_SOURCE_DIR}/ui/tests/data/codesign/codesigning.pem |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
87 -key ${CMAKE_SOURCE_DIR}/ui/tests/data/codesign/codesigning.key |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
88 -h sha256 -in ${CMAKE_CURRENT_BINARY_DIR}/mozilla.exe |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
89 -out ${CMAKE_CURRENT_BINARY_DIR}/mozilla-signed.exe && |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
90 mv ${CMAKE_CURRENT_BINARY_DIR}/mozilla-signed.exe ${CMAKE_CURRENT_BINARY_DIR}/mozilla.exe |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
91 ) |
fc4e1fe4e4d4
(issue116) Sign binaries with test certificate if RELESE_BUILD option is not used
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1019
diff
changeset
|
92 endif() |
1019
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
93 else() |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
94 add_custom_command( |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
95 TARGET mozilla |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
96 POST_BUILD |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
97 COMMAND strip mozilla |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
98 ) |
4f999c7821ce
Strip created executables
Andre Heinecke <andre.heinecke@intevation.de>
parents:
834
diff
changeset
|
99 endif() |
223
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
100 else() |
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
101 message(STATUS "WARNING: Could not find nss. Mozilla cert installer will not be build!") |
d29997e09177
NSS first Blood. Added code to list certs in found stores.
Sascha Wilde <wilde@intevation.de>
parents:
196
diff
changeset
|
102 endif() |