comparison Resources/CMake/OrthancFrameworkParameters.cmake @ 2388:50cde8246542

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