annotate Resources/CMake/OrthancFrameworkParameters.cmake @ 2480:813ab664f7fe lua_dll

Close lua_dll branch
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 20 Feb 2018 11:16:14 +0100
parents 1e2d5e14b3d3
children 0611aa383e62
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
2440
e11483be3f3b fix mainline version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2438
diff changeset
6 set(ORTHANC_VERSION "mainline")
2388
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
2444
d9e3781d2023 "/system" URI returns the version of the Orthanc REST API
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2440
diff changeset
17 # Version of the Orthanc API, can be retrieved from "/system" URI in
d9e3781d2023 "/system" URI returns the version of the Orthanc REST API
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2440
diff changeset
18 # order to check whether new URI endpoints are available even if using
d9e3781d2023 "/system" URI returns the version of the Orthanc REST API
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2440
diff changeset
19 # the mainline version of Orthanc
d9e3781d2023 "/system" URI returns the version of the Orthanc REST API
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2440
diff changeset
20 set(ORTHANC_API_VERSION "1.0")
d9e3781d2023 "/system" URI returns the version of the Orthanc REST API
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2440
diff changeset
21
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
22
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
24 ## 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
25 #####################################################################
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 # Support of static compilation
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28 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
29 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
30 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
31
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32 # 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
33 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
34 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
35 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
36 set(ENABLE_SSL ON CACHE BOOL "Include support for SSL")
2478
1e2d5e14b3d3 New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2450
diff changeset
37 set(ENABLE_LUA_MODULES OFF CACHE BOOL "Enable support for loading external Lua modules (only meaningful if using static version of the Lua engine)")
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39 # 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
40 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
41 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
42 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
43 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
44 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
45 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
46 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
47 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
48 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
49 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
50 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
51 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
52 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
53 set(USE_SYSTEM_SQLITE ON CACHE BOOL "Use the system version of SQLite")
2450
ade8b4ddd8a6 Static linking against libuuid
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2444
diff changeset
54 set(USE_SYSTEM_UUID ON CACHE BOOL "Use the system version of the uuid library from e2fsprogs")
2388
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
55 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
56
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
57 # Parameters specific to DCMTK
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58 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
59 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
60 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
61 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
62 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
63 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
64
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
65 # Advanced and distribution-specific parameters
2404
e6af2c5cd0f1 migration of Google Test into OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2398
diff changeset
66 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
67 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
68 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
69 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
70
2404
e6af2c5cd0f1 migration of Google Test into OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2398
diff changeset
71 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
72 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
73 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
74 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
75
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78 ## 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
79 ## the Orthanc framework
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 #####################################################################
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
81
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82 # 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
83 # 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
84 # are not required
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 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
87 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
88 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
89 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
90 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
91 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
92 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
93 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
94 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
95 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
96 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
97 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
98
50cde8246542 CMake to build the Orthanc framework without the Orthanc server
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99 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
100 "Whether resources are auto-generated using EmbedResources.py")
2406
f0cfacd0c9b8 Orthanc framework: ORTHANC_SANDBOXED parameter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2404
diff changeset
101
f0cfacd0c9b8 Orthanc framework: ORTHANC_SANDBOXED parameter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2404
diff changeset
102 set(ORTHANC_SANDBOXED OFF CACHE INTERNAL
f0cfacd0c9b8 Orthanc framework: ORTHANC_SANDBOXED parameter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2404
diff changeset
103 "Whether Orthanc runs inside a sandboxed environment (such as Google NaCl or WebAssembly)")