annotate Resources/CMake/OrthancFrameworkParameters.cmake @ 2404:e6af2c5cd0f1

migration of Google Test into OrthancFramework
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 08 Sep 2017 16:48:33 +0200
parents 7f9a78f7b5a7
children f0cfacd0c9b8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2 ## Versioning information
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 # Version of the build, should always be "mainline" except in release branches
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6 set(ORTHANC_VERSION "mainline")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8 # Version of the database schema. History:
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9 # * Orthanc 0.1.0 -> Orthanc 0.3.0 = no versioning
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10 # * Orthanc 0.3.1 = version 2
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
11 # * Orthanc 0.4.0 -> Orthanc 0.7.2 = version 3
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 # * Orthanc 0.7.3 -> Orthanc 0.8.4 = version 4
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13 # * Orthanc 0.8.5 -> Orthanc 0.9.4 = version 5
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14 # * Orthanc 0.9.5 -> mainline = version 6
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
15 set(ORTHANC_DATABASE_VERSION 6)
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
16
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
17
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
18 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
19 ## CMake parameters tunable by the user
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
20 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
21
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
22 # Support of static compilation
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23 set(ALLOW_DOWNLOADS OFF CACHE BOOL "Allow CMake to download packages")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
24 set(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)")
2398
7f9a78f7b5a7 STANDALONE_BUILD is a paramater of the Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2388
diff changeset
25 set(STANDALONE_BUILD ON CACHE BOOL "Standalone build (all the resources are embedded, necessary for releases)")
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
26
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
27 # Generic parameters of the build
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28 set(ENABLE_CIVETWEB OFF CACHE BOOL "Use Civetweb instead of Mongoose (experimental)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
29 set(ENABLE_PKCS11 OFF CACHE BOOL "Enable PKCS#11 for HTTPS client authentication using hardware security modules and smart cards")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
30 set(ENABLE_PROFILING OFF CACHE BOOL "Whether to enable the generation of profiling information with gprof")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
31 set(ENABLE_SSL ON CACHE BOOL "Include support for SSL")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33 # Parameters to fine-tune linking against system libraries
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34 set(USE_SYSTEM_BOOST ON CACHE BOOL "Use the system version of Boost")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35 set(USE_SYSTEM_CIVETWEB ON CACHE BOOL "Use the system version of Civetweb (experimental)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
36 set(USE_SYSTEM_CURL ON CACHE BOOL "Use the system version of LibCurl")
2404
e6af2c5cd0f1 migration of Google Test into OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2398
diff changeset
37 set(USE_SYSTEM_GOOGLE_TEST ON CACHE BOOL "Use the system version of Google Test")
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38 set(USE_SYSTEM_JSONCPP ON CACHE BOOL "Use the system version of JsonCpp")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39 set(USE_SYSTEM_LIBICONV ON CACHE BOOL "Use the system version of libiconv")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40 set(USE_SYSTEM_LIBJPEG ON CACHE BOOL "Use the system version of libjpeg")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
41 set(USE_SYSTEM_LIBP11 OFF CACHE BOOL "Use the system version of libp11 (PKCS#11 wrapper library)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42 set(USE_SYSTEM_LIBPNG ON CACHE BOOL "Use the system version of libpng")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
43 set(USE_SYSTEM_LUA ON CACHE BOOL "Use the system version of Lua")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
44 set(USE_SYSTEM_MONGOOSE ON CACHE BOOL "Use the system version of Mongoose")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
45 set(USE_SYSTEM_OPENSSL ON CACHE BOOL "Use the system version of OpenSSL")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
46 set(USE_SYSTEM_PUGIXML ON CACHE BOOL "Use the system version of Pugixml")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
47 set(USE_SYSTEM_SQLITE ON CACHE BOOL "Use the system version of SQLite")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
48 set(USE_SYSTEM_ZLIB ON CACHE BOOL "Use the system version of ZLib")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
49
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
50 # Parameters specific to DCMTK
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
51 set(DCMTK_DICTIONARY_DIR "" CACHE PATH "Directory containing the DCMTK dictionaries \"dicom.dic\" and \"private.dic\" (only when using system version of DCMTK)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
52 set(USE_DCMTK_360 OFF CACHE BOOL "Use older DCMTK version 3.6.0 in static builds (instead of default 3.6.2)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
53 set(USE_DCMTK_362_PRIVATE_DIC ON CACHE BOOL "Use the dictionary of private tags from DCMTK 3.6.2 if using DCMTK 3.6.0")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
54 set(USE_SYSTEM_DCMTK ON CACHE BOOL "Use the system version of DCMTK")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
55 set(ENABLE_DCMTK_JPEG ON CACHE BOOL "Enable JPEG-LS (Lossless) decompression")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
56 set(ENABLE_DCMTK_JPEG_LOSSLESS ON CACHE BOOL "Enable JPEG-LS (Lossless) decompression")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
57
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58 # Advanced and distribution-specific parameters
2404
e6af2c5cd0f1 migration of Google Test into OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2398
diff changeset
59 set(USE_GOOGLE_TEST_DEBIAN_PACKAGE OFF CACHE BOOL "Use the sources of Google Test shipped with libgtest-dev (Debian only)")
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
60 set(SYSTEM_MONGOOSE_USE_CALLBACKS ON CACHE BOOL "The system version of Mongoose uses callbacks (version >= 3.7)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
61 set(USE_BOOST_ICONV ON CACHE BOOL "Use iconv instead of wconv (Windows only)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
62 set(USE_PUGIXML ON CACHE BOOL "Use the Pugixml parser (turn off only for debug)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
63
2404
e6af2c5cd0f1 migration of Google Test into OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2398
diff changeset
64 mark_as_advanced(USE_GOOGLE_TEST_DEBIAN_PACKAGE)
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
65 mark_as_advanced(SYSTEM_MONGOOSE_USE_CALLBACKS)
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
66 mark_as_advanced(USE_BOOST_ICONV)
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
67 mark_as_advanced(USE_PUGIXML)
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
68
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
69
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
70 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71 ## Internal CMake parameters to enable the optional subcomponents of
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
72 ## the Orthanc framework
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
73 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75 # These options must be set to "ON" if compiling Orthanc, but might be
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76 # set to "OFF" by third-party projects if their associated features
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77 # are not required
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
79 set(ENABLE_CRYPTO_OPTIONS OFF CACHE INTERNAL "Show options related to cryptography")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 set(ENABLE_JPEG OFF CACHE INTERNAL "Enable support of JPEG")
2404
e6af2c5cd0f1 migration of Google Test into OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2398
diff changeset
81 set(ENABLE_GOOGLE_TEST OFF CACHE INTERNAL "Enable support of Google Test")
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82 set(ENABLE_LOCALE OFF CACHE INTERNAL "Enable support for locales (notably in Boost)")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
83 set(ENABLE_LUA OFF CACHE INTERNAL "Enable support of Lua scripting")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
84 set(ENABLE_PNG OFF CACHE INTERNAL "Enable support of PNG")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85 set(ENABLE_PUGIXML OFF CACHE INTERNAL "Enable support of XML through Pugixml")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 set(ENABLE_SQLITE OFF CACHE INTERNAL "Enable support of SQLite databases")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
87 set(ENABLE_WEB_CLIENT OFF CACHE INTERNAL "Enable Web client")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
88 set(ENABLE_WEB_SERVER OFF CACHE INTERNAL "Enable embedded Web server")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
89 set(ENABLE_DCMTK OFF CACHE INTERNAL "Enable DCMTK")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
90 set(ENABLE_DCMTK_NETWORKING OFF CACHE INTERNAL "Enable DICOM networking in DCMTK")
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 set(HAS_EMBEDDED_RESOURCES OFF CACHE INTERNAL
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
93 "Whether resources are auto-generated using EmbedResources.py")