annotate CMakeLists.txt @ 2137:595cf22b3e7e

safety checks of macros
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 09 Nov 2016 15:07:50 +0100
parents dd609a99d39a
children 5a8840920121
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
1 cmake_minimum_required(VERSION 2.8)
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
2
57
4bc019d2f969 renaming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 52
diff changeset
3 project(Orthanc)
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
4
135
a2dbb5024fdf install in cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 134
diff changeset
5 # Version of the build, should always be "mainline" except in release branches
2053
c51f6263b361 fix mainline version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2051
diff changeset
6 set(ORTHANC_VERSION "mainline")
135
a2dbb5024fdf install in cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 134
diff changeset
7
1407
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
8 # Version of the database schema. History:
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
9 # * Orthanc 0.1.0 -> Orthanc 0.3.0 = no versioning
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
10 # * Orthanc 0.3.1 = version 2
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
11 # * Orthanc 0.4.0 -> Orthanc 0.7.2 = version 3
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
12 # * Orthanc 0.7.3 -> Orthanc 0.8.4 = version 4
1671
2f2e2ec17bc4 sample database plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1670
diff changeset
13 # * Orthanc 0.8.5 -> Orthanc 0.9.4 = version 5
2f2e2ec17bc4 sample database plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1670
diff changeset
14 # * Orthanc 0.9.5 -> mainline = version 6
1661
1a80777ad462 db version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1644
diff changeset
15 set(ORTHANC_DATABASE_VERSION 6)
1407
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
16
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
17
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
18 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
19 ## CMake parameters tunable at the command line
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
20 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
21
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
22 # Parameters of the build
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
23 SET(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)")
447
e0c398d4721e standalone build is the default
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 423
diff changeset
24 SET(STANDALONE_BUILD ON CACHE BOOL "Standalone build (all the resources are embedded, necessary for releases)")
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
25 SET(ENABLE_SSL ON CACHE BOOL "Include support for SSL")
734
8c29c1056d45 automatic search of the dicom dictionaries in CMake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 726
diff changeset
26 SET(DCMTK_DICTIONARY_DIR "" CACHE PATH "Directory containing the DCMTK dictionaries \"dicom.dic\" and \"private.dic\" (only when using system version of DCMTK)")
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
27 SET(ALLOW_DOWNLOADS OFF CACHE BOOL "Allow CMake to download packages")
707
203157cb4fde unit tests of httpclient
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 694
diff changeset
28 SET(UNIT_TESTS_WITH_HTTP_CONNEXIONS ON CACHE BOOL "Allow unit tests to make HTTP requests")
850
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
29 SET(ENABLE_JPEG ON CACHE BOOL "Enable JPEG decompression")
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
30 SET(ENABLE_JPEG_LOSSLESS ON CACHE BOOL "Enable JPEG-LS (Lossless) decompression")
1455
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
31 SET(ENABLE_PLUGINS ON CACHE BOOL "Enable plugins")
2034
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
32 SET(BUILD_SERVE_FOLDERS ON CACHE BOOL "Whether to build the ServeFolders plugin")
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
33 SET(BUILD_MODALITY_WORKLISTS ON CACHE BOOL "Whether to build the sample plugin to serve modality worklists")
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
34 SET(BUILD_RECOVER_COMPRESSED_FILE ON CACHE BOOL "Whether to build the companion tool to recover files compressed using Orthanc")
1951
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
35 SET(USE_DCMTK_361 OFF CACHE BOOL "Use forthcoming DCMTK version 3.6.1 in static builds (instead of 3.6.0)")
2022
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
36 SET(ENABLE_PKCS11 OFF CACHE BOOL "Enable PKCS#11 for HTTPS client authentication using hardware security modules and smart cards")
135
a2dbb5024fdf install in cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 134
diff changeset
37
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
38 # Advanced parameters to fine-tune linking against system libraries
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
39 SET(USE_SYSTEM_JSONCPP ON CACHE BOOL "Use the system version of JsonCpp")
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
40 SET(USE_SYSTEM_GOOGLE_TEST ON CACHE BOOL "Use the system version of Google Test")
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
41 SET(USE_SYSTEM_SQLITE ON CACHE BOOL "Use the system version of SQLite")
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
42 SET(USE_SYSTEM_MONGOOSE ON CACHE BOOL "Use the system version of Mongoose")
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
43 SET(USE_SYSTEM_LUA ON CACHE BOOL "Use the system version of Lua")
626
b8322fe3bdba possibility to disable the use of system dcmtk or boost
jodogne
parents: 619
diff changeset
44 SET(USE_SYSTEM_DCMTK ON CACHE BOOL "Use the system version of DCMTK")
b8322fe3bdba possibility to disable the use of system dcmtk or boost
jodogne
parents: 619
diff changeset
45 SET(USE_SYSTEM_BOOST ON CACHE BOOL "Use the system version of Boost")
1602
292bce3f54ed JpegWriter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1589
diff changeset
46 SET(USE_SYSTEM_LIBPNG ON CACHE BOOL "Use the system version of libpng")
292bce3f54ed JpegWriter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1589
diff changeset
47 SET(USE_SYSTEM_LIBJPEG ON CACHE BOOL "Use the system version of libjpeg")
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
48 SET(USE_SYSTEM_CURL ON CACHE BOOL "Use the system version of LibCurl")
672
670dd1f2edab improvements to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 671
diff changeset
49 SET(USE_SYSTEM_OPENSSL ON CACHE BOOL "Use the system version of OpenSSL")
670dd1f2edab improvements to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 671
diff changeset
50 SET(USE_SYSTEM_ZLIB ON CACHE BOOL "Use the system version of ZLib")
2022
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
51 SET(USE_SYSTEM_PUGIXML ON CACHE BOOL "Use the system version of Pugixml")
2025
e7e1858d9504 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2022
diff changeset
52 SET(USE_SYSTEM_LIBP11 OFF CACHE BOOL "Use the system version of libp11 (PKCS#11 wrapper library)")
1045
0bfeeb6d340f json to xml conversion with pugixml
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1036
diff changeset
53
0bfeeb6d340f json to xml conversion with pugixml
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1036
diff changeset
54 # Experimental options
1046
00f9f36bcd94 on-the-fly conversion of JSON to XML according to HTTP Accept
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1045
diff changeset
55 SET(USE_PUGIXML ON CACHE BOOL "Use the Pugixml parser (turn off only for debug)")
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
56
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
57 # Distribution-specific settings
638
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 635
diff changeset
58 SET(USE_GTEST_DEBIAN_SOURCE_PACKAGE OFF CACHE BOOL "Use the sources of Google Test shipped with libgtest-dev (Debian only)")
1323
5a92665dee23 Sample plugin: Serve folders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1320
diff changeset
59 SET(SYSTEM_MONGOOSE_USE_CALLBACKS ON CACHE BOOL "The system version of Mongoose uses callbacks (version >= 3.7)")
5a92665dee23 Sample plugin: Serve folders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1320
diff changeset
60 SET(USE_BOOST_ICONV ON CACHE BOOL "Use iconv instead of wconv (Windows only)")
5a92665dee23 Sample plugin: Serve folders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1320
diff changeset
61
638
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 635
diff changeset
62 mark_as_advanced(USE_GTEST_DEBIAN_SOURCE_PACKAGE)
1112
a119f9ae3640 upgrade to Mongoose 3.8
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1109
diff changeset
63 mark_as_advanced(SYSTEM_MONGOOSE_USE_CALLBACKS)
1323
5a92665dee23 Sample plugin: Serve folders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1320
diff changeset
64 mark_as_advanced(USE_BOOST_ICONV)
1455
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
65 mark_as_advanced(USE_PUGIXML)
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
66
1062
804a75413ee7 fix windows build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1046
diff changeset
67 # Path to the root folder of the Orthanc distribution
804a75413ee7 fix windows build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1046
diff changeset
68 set(ORTHANC_ROOT ${CMAKE_SOURCE_DIR})
1914
501769757bf9 flag to remove network support in dcmtk, removal of unneeded sources in static builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1913
diff changeset
69 set(ENABLE_DCMTK_NETWORK ON)
1062
804a75413ee7 fix windows build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1046
diff changeset
70
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
71 # Some basic inclusions
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
72 include(CheckIncludeFiles)
101
428784e59dcd trying to use log4cplus
jodogne
parents: 100
diff changeset
73 include(CheckIncludeFileCXX)
389
9aa8ecbeeeb9 dynamically linking against Mongoose
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 383
diff changeset
74 include(CheckLibraryExists)
1339
a87d3288bd39 autodetect python binary
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1337
diff changeset
75 include(FindPythonInterp)
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
76 include(${CMAKE_SOURCE_DIR}/Resources/CMake/AutoGeneratedCode.cmake)
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
77 include(${CMAKE_SOURCE_DIR}/Resources/CMake/DownloadPackage.cmake)
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
78 include(${CMAKE_SOURCE_DIR}/Resources/CMake/Compiler.cmake)
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
79 include(${CMAKE_SOURCE_DIR}/Resources/CMake/VisualStudioPrecompiledHeaders.cmake)
133
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 130
diff changeset
80
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
81
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
82
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
83 #####################################################################
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
84 ## List of source files
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
85 #####################################################################
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
86
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
87 set(ORTHANC_CORE_SOURCES
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
88 Core/Cache/MemoryCache.cpp
1367
fe6e5a9f1ea2 SharedArchive
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1360
diff changeset
89 Core/Cache/SharedArchive.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
90 Core/ChunkedBuffer.cpp
1512
52dc56bcec7d refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1506
diff changeset
91 Core/Compression/DeflateBaseCompressor.cpp
1513
fe07f82d83d3 gzip compression
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1512
diff changeset
92 Core/Compression/GzipCompressor.cpp
1512
52dc56bcec7d refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1506
diff changeset
93 Core/Compression/HierarchicalZipWriter.cpp
52dc56bcec7d refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1506
diff changeset
94 Core/Compression/ZipWriter.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
95 Core/Compression/ZlibCompressor.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
96 Core/DicomFormat/DicomArray.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
97 Core/DicomFormat/DicomMap.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
98 Core/DicomFormat/DicomTag.cpp
853
839be3022203 DicomImageInformation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 850
diff changeset
99 Core/DicomFormat/DicomImageInformation.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
100 Core/DicomFormat/DicomIntegerPixelAccessor.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
101 Core/DicomFormat/DicomInstanceHasher.cpp
1738
15a788a63846 DicomToJsonFlags_IncludeBinary
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1711
diff changeset
102 Core/DicomFormat/DicomValue.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
103 Core/Enumerations.cpp
1123
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1121
diff changeset
104 Core/FileStorage/FilesystemStorage.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
105 Core/FileStorage/StorageAccessor.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
106 Core/HttpClient.cpp
1519
8bd0d897763f refactoring: IHttpStreamAnswer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1517
diff changeset
107 Core/HttpServer/BufferHttpSender.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
108 Core/HttpServer/EmbeddedResourceHttpHandler.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
109 Core/HttpServer/FilesystemHttpHandler.cpp
1441
f3672356c121 refactoring: IHttpHandler and HttpToolbox
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1437
diff changeset
110 Core/HttpServer/HttpToolbox.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
111 Core/HttpServer/HttpOutput.cpp
1437
02f5a3f5c0a0 access to the REST API from Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1433
diff changeset
112 Core/HttpServer/StringHttpOutput.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
113 Core/HttpServer/MongooseServer.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
114 Core/HttpServer/HttpFileSender.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
115 Core/HttpServer/FilesystemHttpSender.cpp
1783
dbb07eb1a2f3 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1759
diff changeset
116 Core/HttpServer/HttpContentNegociation.cpp
1525
f9b0169eb6bb testing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1519
diff changeset
117 Core/HttpServer/HttpStreamTranscoder.cpp
1485
27661b33f624 Creation of Logging.h
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1484
diff changeset
118 Core/Logging.cpp
974
83622b0f544c refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 969
diff changeset
119 Core/RestApi/RestApiCall.cpp
83622b0f544c refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 969
diff changeset
120 Core/RestApi/RestApiGetCall.cpp
969
3dce528b0cc2 RestApiHierarchy
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 967
diff changeset
121 Core/RestApi/RestApiHierarchy.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
122 Core/RestApi/RestApiPath.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
123 Core/RestApi/RestApiOutput.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
124 Core/RestApi/RestApi.cpp
1920
b97aa579e85b bag of tasks
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1914
diff changeset
125 Core/MultiThreading/BagOfTasksProcessor.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
126 Core/MultiThreading/Mutex.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
127 Core/MultiThreading/ReaderWriterLock.cpp
1681
ee4367497d0d got rid of buggy BagOfRunnablesBySteps
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1679
diff changeset
128 Core/MultiThreading/RunnableWorkersPool.cpp
995
8c67382f44a7 limit number of jobs in the scheduler
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 994
diff changeset
129 Core/MultiThreading/Semaphore.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
130 Core/MultiThreading/SharedMessageQueue.cpp
1612
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
131 Core/Images/Font.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
132 Core/Images/FontRegistry.cpp
2083
bfeacb51af20 cleaning up code
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2062
diff changeset
133 Core/Images/IImageWriter.cpp
2084
20a001ea4aa2 Image::Clone()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2083
diff changeset
134 Core/Images/Image.cpp
1612
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
135 Core/Images/ImageAccessor.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
136 Core/Images/ImageBuffer.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
137 Core/Images/ImageProcessing.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
138 Core/Images/JpegErrorManager.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
139 Core/Images/JpegReader.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
140 Core/Images/JpegWriter.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
141 Core/Images/PngReader.cpp
96582230ddcb Core/ImageFormats folder renamed as Core/Images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1610
diff changeset
142 Core/Images/PngWriter.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
143 Core/SQLite/Connection.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
144 Core/SQLite/FunctionContext.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
145 Core/SQLite/Statement.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
146 Core/SQLite/StatementId.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
147 Core/SQLite/StatementReference.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
148 Core/SQLite/Transaction.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
149 Core/Toolbox.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
150 Core/Uuid.cpp
2020
a0bd8cd55da7 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2014
diff changeset
151 Core/WebServiceParameters.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
152 Core/Lua/LuaContext.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
153 Core/Lua/LuaFunctionCall.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
154 )
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
155
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
156
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
157 set(ORTHANC_SERVER_SOURCES
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
158 OrthancServer/DatabaseWrapper.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
159 OrthancServer/DatabaseWrapperBase.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
160 OrthancServer/DicomDirWriter.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
161 OrthancServer/DicomModification.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
162 OrthancServer/DicomProtocol/DicomFindAnswers.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
163 OrthancServer/DicomProtocol/DicomServer.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
164 OrthancServer/DicomProtocol/DicomUserConnection.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
165 OrthancServer/DicomProtocol/RemoteModalityParameters.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
166 OrthancServer/DicomProtocol/ReusableDicomUserConnection.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
167 OrthancServer/ExportedResource.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
168 OrthancServer/FromDcmtkBridge.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
169 OrthancServer/Internals/CommandDispatcher.cpp
1924
6c73df12ca51 New URI: "/instances/.../frames/.../raw" to access the raw frames (bypass image decoding)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1920
diff changeset
170 OrthancServer/Internals/DicomFrameIndex.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
171 OrthancServer/Internals/DicomImageDecoder.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
172 OrthancServer/Internals/FindScp.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
173 OrthancServer/Internals/MoveScp.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
174 OrthancServer/Internals/StoreScp.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
175 OrthancServer/LuaScripting.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
176 OrthancServer/OrthancFindRequestHandler.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
177 OrthancServer/OrthancHttpHandler.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
178 OrthancServer/OrthancInitialization.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
179 OrthancServer/OrthancMoveRequestHandler.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
180 OrthancServer/OrthancRestApi/OrthancRestAnonymizeModify.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
181 OrthancServer/OrthancRestApi/OrthancRestApi.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
182 OrthancServer/OrthancRestApi/OrthancRestArchive.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
183 OrthancServer/OrthancRestApi/OrthancRestChanges.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
184 OrthancServer/OrthancRestApi/OrthancRestModalities.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
185 OrthancServer/OrthancRestApi/OrthancRestResources.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
186 OrthancServer/OrthancRestApi/OrthancRestSystem.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
187 OrthancServer/ParsedDicomFile.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
188 OrthancServer/QueryRetrieveHandler.cpp
1795
af6840eb23ee HierarchicalMatcher
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1791
diff changeset
189 OrthancServer/Search/HierarchicalMatcher.cpp
1791
91a5d39ec665 refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1787
diff changeset
190 OrthancServer/Search/IFindConstraint.cpp
1747
ca69082ab200 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1746
diff changeset
191 OrthancServer/Search/LookupIdentifierQuery.cpp
1749
99f4a05f39fa various types of constraints
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1747
diff changeset
192 OrthancServer/Search/LookupResource.cpp
1747
ca69082ab200 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1746
diff changeset
193 OrthancServer/Search/SetOfResources.cpp
1749
99f4a05f39fa various types of constraints
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1747
diff changeset
194 OrthancServer/Search/ListConstraint.cpp
99f4a05f39fa various types of constraints
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1747
diff changeset
195 OrthancServer/Search/RangeConstraint.cpp
99f4a05f39fa various types of constraints
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1747
diff changeset
196 OrthancServer/Search/ValueConstraint.cpp
99f4a05f39fa various types of constraints
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1747
diff changeset
197 OrthancServer/Search/WildcardConstraint.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
198 OrthancServer/ServerContext.cpp
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
199 OrthancServer/ServerEnumerations.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
200 OrthancServer/ServerIndex.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
201 OrthancServer/ServerToolbox.cpp
1702
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
202 OrthancServer/SliceOrdering.cpp
9980875edc7c started work on SliceOrdering
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1682
diff changeset
203 OrthancServer/ToDcmtkBridge.cpp
946
394a19d44f9d integration mainline -> lua-scripting
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 781 930
diff changeset
204
394a19d44f9d integration mainline -> lua-scripting
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 781 930
diff changeset
205 # From "lua-scripting" branch
1003
1d35281d967c DicomInstanceToStore
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1001
diff changeset
206 OrthancServer/DicomInstanceToStore.cpp
1001
f3929718ea7e autorouting primitives
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1000
diff changeset
207 OrthancServer/Scheduler/DeleteInstanceCommand.cpp
1008
187ed107a59f modify command
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1007
diff changeset
208 OrthancServer/Scheduler/ModifyInstanceCommand.cpp
1000
13e230bbd882 rename filter to command
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 999
diff changeset
209 OrthancServer/Scheduler/ServerCommandInstance.cpp
946
394a19d44f9d integration mainline -> lua-scripting
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 781 930
diff changeset
210 OrthancServer/Scheduler/ServerJob.cpp
394a19d44f9d integration mainline -> lua-scripting
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 781 930
diff changeset
211 OrthancServer/Scheduler/ServerScheduler.cpp
1008
187ed107a59f modify command
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1007
diff changeset
212 OrthancServer/Scheduler/StorePeerCommand.cpp
1000
13e230bbd882 rename filter to command
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 999
diff changeset
213 OrthancServer/Scheduler/StoreScuCommand.cpp
1065
921532f67770 Lua scripts can invoke system commands, with CallSystem()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1062
diff changeset
214 OrthancServer/Scheduler/CallSystemCommand.cpp
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
215 )
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
216
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
217
827
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
218 set(ORTHANC_UNIT_TESTS_SOURCES
967
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
219 UnitTestsSources/DicomMapTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
220 UnitTestsSources/FileStorageTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
221 UnitTestsSources/FromDcmtkTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
222 UnitTestsSources/MemoryCacheTests.cpp
1602
292bce3f54ed JpegWriter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1589
diff changeset
223 UnitTestsSources/ImageTests.cpp
967
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
224 UnitTestsSources/RestApiTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
225 UnitTestsSources/SQLiteTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
226 UnitTestsSources/SQLiteChromiumTests.cpp
827
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
227 UnitTestsSources/ServerIndexTests.cpp
967
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
228 UnitTestsSources/VersionsTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
229 UnitTestsSources/ZipTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
230 UnitTestsSources/LuaTests.cpp
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
231 UnitTestsSources/MultiThreadingTests.cpp
827
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
232 UnitTestsSources/UnitTestsMain.cpp
853
839be3022203 DicomImageInformation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 850
diff changeset
233 UnitTestsSources/ImageProcessingTests.cpp
967
dfc076546821 add suffix Tests to unit test sources
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 950
diff changeset
234 UnitTestsSources/JpegLosslessTests.cpp
1525
f9b0169eb6bb testing
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1519
diff changeset
235 UnitTestsSources/StreamTests.cpp
827
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
236 )
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
237
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
238
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
239 if (ENABLE_PLUGINS)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
240 list(APPEND ORTHANC_SERVER_SOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
241 Plugins/Engine/OrthancPluginDatabase.cpp
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
242 Plugins/Engine/OrthancPlugins.cpp
1625
c17b1142caab reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1621
diff changeset
243 Plugins/Engine/PluginsEnumerations.cpp
1644
939b921b2c81 plugin error dictionary
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1625
diff changeset
244 Plugins/Engine/PluginsErrorDictionary.cpp
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
245 Plugins/Engine/PluginsManager.cpp
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
246 Plugins/Engine/SharedLibrary.cpp
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
247 )
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
248
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
249 list(APPEND ORTHANC_UNIT_TESTS_SOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
250 UnitTestsSources/PluginsTests.cpp
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
251 )
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
252 endif()
1467
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
253
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
254
1951
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
255 set(ORTHANC_ALL_SOURCES
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
256 ${ORTHANC_CORE_SOURCES}
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
257 ${ORTHANC_SERVER_SOURCES}
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
258 ${ORTHANC_UNIT_TESTS_SOURCES}
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
259 Plugins/Samples/ServeFolders/Plugin.cpp
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
260 Plugins/Samples/ModalityWorklists/Plugin.cpp
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
261 OrthancServer/main.cpp
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
262 )
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
263
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
264
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
265 if (CMAKE_COMPILER_IS_GNUCXX
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
266 AND NOT CMAKE_CROSSCOMPILING
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
267 AND NOT USE_DCMTK_361)
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
268 # Add the "-pedantic" flag only on the Orthanc sources, and only if
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
269 # using DCMTK 3.6.0
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
270 set_source_files_properties(${ORTHANC_ALL_SOURCES}
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
271 PROPERTIES COMPILE_FLAGS -pedantic
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
272 )
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
273 endif()
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
274
01de36d949c3 Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1924
diff changeset
275
1251
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
276 set(ORTHANC_EMBEDDED_FILES
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
277 PREPARE_DATABASE ${CMAKE_CURRENT_SOURCE_DIR}/OrthancServer/PrepareDatabase.sql
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
278 UPGRADE_DATABASE_3_TO_4 ${CMAKE_CURRENT_SOURCE_DIR}/OrthancServer/Upgrade3To4.sql
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
279 UPGRADE_DATABASE_4_TO_5 ${CMAKE_CURRENT_SOURCE_DIR}/OrthancServer/Upgrade4To5.sql
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
280 CONFIGURATION_SAMPLE ${CMAKE_CURRENT_SOURCE_DIR}/Resources/Configuration.json
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
281 DICOM_CONFORMANCE_STATEMENT ${CMAKE_CURRENT_SOURCE_DIR}/Resources/DicomConformanceStatement.txt
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
282 LUA_TOOLBOX ${CMAKE_CURRENT_SOURCE_DIR}/Resources/Toolbox.lua
1610
2dff2bdffdb8 font support within Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1604
diff changeset
283 FONT_UBUNTU_MONO_BOLD_16 ${CMAKE_CURRENT_SOURCE_DIR}/Resources/Fonts/UbuntuMonoBold-16.json
1251
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
284 )
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
285
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
286
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
287
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
288 #####################################################################
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
289 ## Inclusion of third-party dependencies
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
290 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
291
1539
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
292 include(${CMAKE_SOURCE_DIR}/Resources/CMake/JsonCppConfiguration.cmake)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
293 include(${CMAKE_SOURCE_DIR}/Resources/CMake/LibCurlConfiguration.cmake)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
294 include(${CMAKE_SOURCE_DIR}/Resources/CMake/LibPngConfiguration.cmake)
1602
292bce3f54ed JpegWriter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1589
diff changeset
295 include(${CMAKE_SOURCE_DIR}/Resources/CMake/LibJpegConfiguration.cmake)
1539
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
296 include(${CMAKE_SOURCE_DIR}/Resources/CMake/LuaConfiguration.cmake)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
297 include(${CMAKE_SOURCE_DIR}/Resources/CMake/MongooseConfiguration.cmake)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
298 include(${CMAKE_SOURCE_DIR}/Resources/CMake/PugixmlConfiguration.cmake)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
299 include(${CMAKE_SOURCE_DIR}/Resources/CMake/SQLiteConfiguration.cmake)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
300 include(${CMAKE_SOURCE_DIR}/Resources/CMake/ZlibConfiguration.cmake)
2038
sjodogne
parents: 2037
diff changeset
301 include(${CMAKE_SOURCE_DIR}/Resources/CMake/GoogleTestConfiguration.cmake)
1539
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
302
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
303 # These are the two most heavyweight dependencies. We put them as the
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
304 # last includes to quickly spot problems when configuring static
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1525
diff changeset
305 # builds.
672
670dd1f2edab improvements to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 671
diff changeset
306 include(${CMAKE_SOURCE_DIR}/Resources/CMake/BoostConfiguration.cmake)
670dd1f2edab improvements to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 671
diff changeset
307 include(${CMAKE_SOURCE_DIR}/Resources/CMake/DcmtkConfiguration.cmake)
670dd1f2edab improvements to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 671
diff changeset
308
102
7593b57dc1bf switch to google log
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 101
diff changeset
309
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
310 if (ENABLE_SSL)
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
311 add_definitions(-DORTHANC_ENABLE_SSL=1)
29
042ac60f5bf9 simplified build of curl
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
312 include(${CMAKE_SOURCE_DIR}/Resources/CMake/OpenSslConfiguration.cmake)
042ac60f5bf9 simplified build of curl
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
313 else()
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
314 add_definitions(-DORTHANC_ENABLE_SSL=0)
29
042ac60f5bf9 simplified build of curl
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
315 endif()
042ac60f5bf9 simplified build of curl
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
316
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
317
850
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
318 if (ENABLE_JPEG)
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
319 add_definitions(-DORTHANC_ENABLE_JPEG=1)
850
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
320 else()
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
321 add_definitions(-DORTHANC_ENABLE_JPEG=0)
850
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
322 endif()
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
323
9ee2e7a5efaf support of JPEG images
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 845
diff changeset
324
839
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 836
diff changeset
325 if (ENABLE_JPEG_LOSSLESS)
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
326 add_definitions(-DORTHANC_ENABLE_JPEG_LOSSLESS=1)
839
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 836
diff changeset
327 else()
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
328 add_definitions(-DORTHANC_ENABLE_JPEG_LOSSLESS=0)
839
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 836
diff changeset
329 endif()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 836
diff changeset
330
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 836
diff changeset
331
1455
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
332 if (ENABLE_PLUGINS)
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
333 add_definitions(-DORTHANC_ENABLE_PLUGINS=1)
1455
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
334 else()
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
335 add_definitions(-DORTHANC_ENABLE_PLUGINS=0)
1455
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
336 endif()
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
337
a68545767975 Initialize() and Finalize() events in Lua
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1444
diff changeset
338
2022
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
339 if (ENABLE_PKCS11)
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
340 if (ENABLE_SSL)
2025
e7e1858d9504 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2022
diff changeset
341 include(${CMAKE_SOURCE_DIR}/Resources/CMake/LibP11Configuration.cmake)
e7e1858d9504 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2022
diff changeset
342
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
343 add_definitions(-DORTHANC_ENABLE_PKCS11=1)
2025
e7e1858d9504 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2022
diff changeset
344 list(APPEND ORTHANC_CORE_SOURCES Core/Pkcs11.cpp)
2022
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
345 else()
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
346 message(FATAL_ERROR "OpenSSL is required to enable PKCS#11")
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
347 endif()
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
348 else()
2136
dd609a99d39a uniformization of the macro naming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2084
diff changeset
349 add_definitions(-DORTHANC_ENABLE_PKCS11=0)
2022
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
350 endif()
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
351
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
352
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
353
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
354 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
355 ## Autogeneration of files
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
356 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
357
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
358 if (STANDALONE_BUILD)
291
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
359 # We embed all the resources in the binaries for standalone builds
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
360 add_definitions(-DORTHANC_STANDALONE=1)
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
361 EmbedResources(
1251
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
362 ${ORTHANC_EMBEDDED_FILES}
291
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
363 ORTHANC_EXPLORER ${CMAKE_CURRENT_SOURCE_DIR}/OrthancExplorer
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
364 ${DCMTK_DICTIONARIES}
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
365 )
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
366 else()
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
367 add_definitions(
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
368 -DORTHANC_STANDALONE=0
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
369 -DORTHANC_PATH=\"${CMAKE_SOURCE_DIR}\"
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
370 )
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
371 EmbedResources(
1251
ac877a0fcf52 cleaning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1247
diff changeset
372 ${ORTHANC_EMBEDDED_FILES}
291
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
373 )
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
374 endif()
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
375
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
376 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
1467
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
377 execute_process(
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
378 COMMAND
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
379 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
380 ${ORTHANC_VERSION} Orthanc Orthanc.exe "Lightweight, RESTful DICOM server for medical imaging"
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
381 ERROR_VARIABLE Failure
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
382 OUTPUT_FILE ${AUTOGENERATED_DIR}/Orthanc.rc
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
383 )
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
384
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
385 if (Failure)
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
386 message(FATAL_ERROR "Error while computing the version information: ${Failure}")
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
387 endif()
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
388
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
389 list(APPEND ORTHANC_RESOURCES ${AUTOGENERATED_DIR}/Orthanc.rc)
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
390 endif()
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
391
291
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
392
4d7469f72a0b embedding of dicom dictionaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 289
diff changeset
393
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
394 #####################################################################
2037
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
395 ## Configuration of the C/C++ macros
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
396 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
397
2037
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
398 if (UNIT_TESTS_WITH_HTTP_CONNEXIONS)
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
399 add_definitions(-DUNIT_TESTS_WITH_HTTP_CONNEXIONS=1)
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
400 else()
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
401 add_definitions(-DUNIT_TESTS_WITH_HTTP_CONNEXIONS=0)
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
402 endif()
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
403
2038
sjodogne
parents: 2037
diff changeset
404 include_directories(${CMAKE_SOURCE_DIR}/Plugins/Include)
sjodogne
parents: 2037
diff changeset
405
600
851b6a19a81c setting soname
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 599
diff changeset
406 add_definitions(
851b6a19a81c setting soname
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 599
diff changeset
407 -DORTHANC_VERSION="${ORTHANC_VERSION}"
1407
d371a66972a4 OrthancPluginGetExpectedDatabaseVersion
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1400
diff changeset
408 -DORTHANC_DATABASE_VERSION=${ORTHANC_DATABASE_VERSION}
1488
c8763b603b0e flag for plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1487
diff changeset
409 -DORTHANC_ENABLE_LOGGING=1
2137
595cf22b3e7e safety checks of macros
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2136
diff changeset
410 -DORTHANC_ENABLE_BASE64=1
595cf22b3e7e safety checks of macros
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2136
diff changeset
411 -DORTHANC_ENABLE_MD5=1
1854
e2c3d752ee1a prevent too long tags to be inserted
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1808
diff changeset
412 -DORTHANC_MAXIMUM_TAG_LENGTH=256
2037
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
413 -DORTHANC_BUILD_UNIT_TESTS=1
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
414
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
415 # Macros for the plugins
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
416 -DMODALITY_WORKLISTS_VERSION="${ORTHANC_VERSION}"
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
417 -DSERVE_FOLDERS_VERSION="${ORTHANC_VERSION}"
600
851b6a19a81c setting soname
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 599
diff changeset
418 )
851b6a19a81c setting soname
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 599
diff changeset
419
2037
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
420
2038
sjodogne
parents: 2037
diff changeset
421 # Setup precompiled headers for Microsoft Visual Studio
sjodogne
parents: 2037
diff changeset
422
sjodogne
parents: 2037
diff changeset
423 # WARNING: There must be NO MORE "add_definitions()", "include()" or
sjodogne
parents: 2037
diff changeset
424 # "include_directories()" below, otherwise the generated precompiled
sjodogne
parents: 2037
diff changeset
425 # headers might get broken!
sjodogne
parents: 2037
diff changeset
426
sjodogne
parents: 2037
diff changeset
427 if (MSVC)
sjodogne
parents: 2037
diff changeset
428 add_definitions(-DORTHANC_USE_PRECOMPILED_HEADERS=1)
sjodogne
parents: 2037
diff changeset
429
sjodogne
parents: 2037
diff changeset
430 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS(
sjodogne
parents: 2037
diff changeset
431 "PrecompiledHeaders.h" "Core/PrecompiledHeaders.cpp" ORTHANC_CORE_SOURCES)
sjodogne
parents: 2037
diff changeset
432
sjodogne
parents: 2037
diff changeset
433 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS(
sjodogne
parents: 2037
diff changeset
434 "PrecompiledHeadersServer.h" "OrthancServer/PrecompiledHeadersServer.cpp" ORTHANC_SERVER_SOURCES)
sjodogne
parents: 2037
diff changeset
435
sjodogne
parents: 2037
diff changeset
436 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS(
sjodogne
parents: 2037
diff changeset
437 "PrecompiledHeadersUnitTests.h" "UnitTestsSources/PrecompiledHeadersUnitTests.cpp" ORTHANC_UNIT_TESTS_SOURCES)
sjodogne
parents: 2037
diff changeset
438 endif()
sjodogne
parents: 2037
diff changeset
439
sjodogne
parents: 2037
diff changeset
440
2037
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
441
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
442 #####################################################################
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
443 ## Build the core of Orthanc
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
444 #####################################################################
661c75c7ff8f reorganization in the cmake
sjodogne
parents: 2036
diff changeset
445
520
cd7d4842851c fix build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 516
diff changeset
446 list(LENGTH OPENSSL_SOURCES OPENSSL_SOURCES_LENGTH)
cd7d4842851c fix build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 516
diff changeset
447 if (${OPENSSL_SOURCES_LENGTH} GREATER 0)
cd7d4842851c fix build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 516
diff changeset
448 add_library(OpenSSL STATIC ${OPENSSL_SOURCES})
cd7d4842851c fix build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 516
diff changeset
449 endif()
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
450
2038
sjodogne
parents: 2037
diff changeset
451 # "CodeLibrary" contains all the third-party dependencies and the
sjodogne
parents: 2037
diff changeset
452 # content of the "Core" folder, but not OpenSSL, nor DCMTK.
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
453 add_library(CoreLibrary
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
454 STATIC
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
455 ${ORTHANC_CORE_SOURCES}
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
456 ${AUTOGENERATED_SOURCES}
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
457
1487
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
458 ${BOOST_SOURCES}
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
459 ${CURL_SOURCES}
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
460 ${JSONCPP_SOURCES}
1487
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
461 ${LIBPNG_SOURCES}
1602
292bce3f54ed JpegWriter
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1589
diff changeset
462 ${LIBJPEG_SOURCES}
1487
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
463 ${LUA_SOURCES}
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
464 ${MONGOOSE_SOURCES}
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
465 ${PUGIXML_SOURCES}
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
466 ${SQLITE_SOURCES}
1487
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
467 ${ZLIB_SOURCES}
2022
fefbe71c2272 Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2020
diff changeset
468 ${LIBP11_SOURCES}
1414
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
469
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
470 ${CMAKE_SOURCE_DIR}/Resources/ThirdParty/md5/md5.c
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1413
diff changeset
471 ${CMAKE_SOURCE_DIR}/Resources/ThirdParty/base64/base64.cpp
1493
9a1c7293955b minizip should not be inside zlib
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1490
diff changeset
472
9a1c7293955b minizip should not be inside zlib
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1490
diff changeset
473 # This is the minizip distribution to create ZIP files using zlib
9a1c7293955b minizip should not be inside zlib
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1490
diff changeset
474 ${ORTHANC_ROOT}/Resources/ThirdParty/minizip/ioapi.c
9a1c7293955b minizip should not be inside zlib
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1490
diff changeset
475 ${ORTHANC_ROOT}/Resources/ThirdParty/minizip/zip.c
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
476 )
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
477
135
a2dbb5024fdf install in cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 134
diff changeset
478
546
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
479 #####################################################################
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
480 ## Build the Orthanc server
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
481 #####################################################################
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
482
2038
sjodogne
parents: 2037
diff changeset
483 # "ServerLibrary" contains DCMTK
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
484 add_library(ServerLibrary
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
485 STATIC
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
486 ${DCMTK_SOURCES}
824
a811bdf8b8eb precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 822
diff changeset
487 ${ORTHANC_SERVER_SOURCES}
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
488 )
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
489
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
490 # Ensure autogenerated code is built before building ServerLibrary
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
491 add_dependencies(ServerLibrary CoreLibrary)
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
492
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
493 add_executable(Orthanc
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
494 OrthancServer/main.cpp
1467
5068de14eef1 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1463
diff changeset
495 ${ORTHANC_RESOURCES}
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
496 )
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
497
1487
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
498 target_link_libraries(Orthanc ServerLibrary CoreLibrary ${DCMTK_LIBRARIES})
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
499
546
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
500 if (${OPENSSL_SOURCES_LENGTH} GREATER 0)
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
501 target_link_libraries(Orthanc OpenSSL)
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
502 endif()
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
503
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
504 install(
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
505 TARGETS Orthanc
649
7446a8ae2fad fix installation path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 638
diff changeset
506 RUNTIME DESTINATION sbin
517
b2b56b4e33b0 simplifications to cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 494
diff changeset
507 )
261
9e24c33c3361 possibility to compile just the CoreLibrary
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 259
diff changeset
508
546
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
509
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
510
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
511 #####################################################################
635
cd3b60f6e7d4 refactoring cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 634
diff changeset
512 ## Build the unit tests
546
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
513 #####################################################################
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
514
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
515 add_executable(UnitTests
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
516 ${GTEST_SOURCES}
827
3d6f9b7d0add precompiled headers in unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 826
diff changeset
517 ${ORTHANC_UNIT_TESTS_SOURCES}
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
518 )
2038
sjodogne
parents: 2037
diff changeset
519
1487
23083810d543 removal of unneeded static libraries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1485
diff changeset
520 target_link_libraries(UnitTests ServerLibrary CoreLibrary ${DCMTK_LIBRARIES})
520
cd7d4842851c fix build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 516
diff changeset
521
634
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
522 if (${OPENSSL_SOURCES_LENGTH} GREATER 0)
d775a3cb5a06 refactoring of CMake scripts
jodogne
parents: 633
diff changeset
523 target_link_libraries(UnitTests OpenSSL)
120
5af0a4345d06 disabling of unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 102
diff changeset
524 endif()
5af0a4345d06 disabling of unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 102
diff changeset
525
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
526
546
0e510ea3de31 merge mainline -> laaw
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 543 517
diff changeset
527
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
528 #####################################################################
1392
477e35614602 build ServeFolders as part of Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1368
diff changeset
529 ## Build the "ServeFolders" plugin
477e35614602 build ServeFolders as part of Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1368
diff changeset
530 #####################################################################
477e35614602 build ServeFolders as part of Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1368
diff changeset
531
1589
334d3a92ed83 improvements to the ServeFolders plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1578
diff changeset
532 if (ENABLE_PLUGINS AND BUILD_SERVE_FOLDERS)
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
533 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
534 execute_process(
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
535 COMMAND
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
536 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
537 ${ORTHANC_VERSION} ServeFolders ServeFolders.dll "Orthanc plugin to serve additional folders"
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
538 ERROR_VARIABLE Failure
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
539 OUTPUT_FILE ${AUTOGENERATED_DIR}/ServeFolders.rc
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
540 )
1589
334d3a92ed83 improvements to the ServeFolders plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1578
diff changeset
541
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
542 if (Failure)
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
543 message(FATAL_ERROR "Error while computing the version information: ${Failure}")
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
544 endif()
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
545
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
546 list(APPEND SERVE_FOLDERS_RESOURCES ${AUTOGENERATED_DIR}/ServeFolders.rc)
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
547 endif()
1589
334d3a92ed83 improvements to the ServeFolders plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1578
diff changeset
548
334d3a92ed83 improvements to the ServeFolders plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1578
diff changeset
549 add_library(ServeFolders SHARED
334d3a92ed83 improvements to the ServeFolders plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1578
diff changeset
550 ${BOOST_SOURCES}
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
551 ${JSONCPP_SOURCES}
1589
334d3a92ed83 improvements to the ServeFolders plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1578
diff changeset
552 Plugins/Samples/ServeFolders/Plugin.cpp
2062
40ffd0e8676a generation of etag in ServeFolders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2053
diff changeset
553 Plugins/Samples/Common/OrthancPluginCppWrapper.cpp
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
554 ${SERVE_FOLDERS_RESOURCES}
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
555 )
1392
477e35614602 build ServeFolders as part of Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1368
diff changeset
556
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
557 set_target_properties(
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
558 ServeFolders PROPERTIES
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
559 VERSION ${ORTHANC_VERSION}
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
560 SOVERSION ${ORTHANC_VERSION}
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
561 )
1392
477e35614602 build ServeFolders as part of Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1368
diff changeset
562
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
563 install(
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
564 TARGETS ServeFolders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
565 RUNTIME DESTINATION lib # Destination for Windows
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
566 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
567 )
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
568 endif()
1412
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1411
diff changeset
569
1392
477e35614602 build ServeFolders as part of Orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1368
diff changeset
570
600
851b6a19a81c setting soname
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 599
diff changeset
571
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
572 #####################################################################
1808
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
573 ## Build the "ModalityWorklists" plugin
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
574 #####################################################################
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
575
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
576 if (ENABLE_PLUGINS AND BUILD_MODALITY_WORKLISTS)
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
577 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
578 execute_process(
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
579 COMMAND
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
580 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
581 ${ORTHANC_VERSION} ModalityWorklists ModalityWorklists.dll "Sample Orthanc plugin to serve modality worklists"
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
582 ERROR_VARIABLE Failure
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
583 OUTPUT_FILE ${AUTOGENERATED_DIR}/ModalityWorklists.rc
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
584 )
1808
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
585
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
586 if (Failure)
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
587 message(FATAL_ERROR "Error while computing the version information: ${Failure}")
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
588 endif()
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
589
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
590 list(APPEND MODALITY_WORKLISTS_RESOURCES ${AUTOGENERATED_DIR}/ModalityWorklists.rc)
1808
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
591 endif()
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
592
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
593 add_library(ModalityWorklists SHARED
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
594 ${BOOST_SOURCES}
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
595 ${JSONCPP_SOURCES}
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
596 Plugins/Samples/ModalityWorklists/Plugin.cpp
1913
41e402cd7b3a do not generate RC files for non-Windows builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1897
diff changeset
597 ${MODALITY_WORKLISTS_RESOURCES}
1808
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
598 )
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
599
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
600 set_target_properties(
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
601 ModalityWorklists PROPERTIES
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
602 VERSION ${ORTHANC_VERSION}
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
603 SOVERSION ${ORTHANC_VERSION}
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
604 )
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
605
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
606 install(
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
607 TARGETS ModalityWorklists
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
608 RUNTIME DESTINATION lib # Destination for Windows
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
609 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
610 )
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
611 endif()
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
612
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
613
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
614
9c2ffc4e938b configuration of the sample modality worklists plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1795
diff changeset
615 #####################################################################
2034
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
616 ## Build the companion tool to recover files compressed using Orthanc
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
617 #####################################################################
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
618
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
619 if (BUILD_RECOVER_COMPRESSED_FILE)
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
620 set(RECOVER_COMPRESSED_SOURCES
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
621 Resources/Samples/Tools/RecoverCompressedFile.cpp
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
622 )
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
623
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
624 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
625 execute_process(
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
626 COMMAND
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
627 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
628 ${ORTHANC_VERSION} OrthancRecoverCompressedFile OrthancRecoverCompressedFile.exe
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
629 "Lightweight, RESTful DICOM server for medical imaging"
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
630 ERROR_VARIABLE Failure
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
631 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancRecoverCompressedFile.rc
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
632 )
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
633
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
634 if (Failure)
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
635 message(FATAL_ERROR "Error while computing the version information: ${Failure}")
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
636 endif()
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
637
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
638 list(APPEND RECOVER_COMPRESSED_SOURCES
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
639 ${AUTOGENERATED_DIR}/OrthancRecoverCompressedFile.rc
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
640 )
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
641 endif()
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
642
2035
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2034
diff changeset
643 add_executable(OrthancRecoverCompressedFile ${RECOVER_COMPRESSED_SOURCES})
2034
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
644
2038
sjodogne
parents: 2037
diff changeset
645 target_link_libraries(OrthancRecoverCompressedFile CoreLibrary)
sjodogne
parents: 2037
diff changeset
646
2034
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
647 install(
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
648 TARGETS OrthancRecoverCompressedFile
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
649 RUNTIME DESTINATION bin
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
650 )
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
651 endif()
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
652
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
653
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
654
07f2ba3677df Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2025
diff changeset
655 #####################################################################
516
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
656 ## Generate the documentation if Doxygen is present
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
657 #####################################################################
49a1228d6fe7 building the dll from the main CMakeLists
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 506
diff changeset
658
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
659 find_package(Doxygen)
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
660 if (DOXYGEN_FOUND)
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
661 configure_file(
57
4bc019d2f969 renaming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 52
diff changeset
662 ${CMAKE_SOURCE_DIR}/Resources/Orthanc.doxygen
4bc019d2f969 renaming
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 52
diff changeset
663 ${CMAKE_CURRENT_BINARY_DIR}/Orthanc.doxygen
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
664 @ONLY)
573
8fb9867d8089 documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 571
diff changeset
665
900
1b92ce45cc8d plugin doc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 897
diff changeset
666 configure_file(
1b92ce45cc8d plugin doc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 897
diff changeset
667 ${CMAKE_SOURCE_DIR}/Resources/OrthancPlugin.doxygen
1b92ce45cc8d plugin doc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 897
diff changeset
668 ${CMAKE_CURRENT_BINARY_DIR}/OrthancPlugin.doxygen
1b92ce45cc8d plugin doc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 897
diff changeset
669 @ONLY)
1b92ce45cc8d plugin doc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 897
diff changeset
670
592
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 591
diff changeset
671 add_custom_target(doc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 591
diff changeset
672 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Orthanc.doxygen
1156
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
673 COMMENT "Generating internal documentation with Doxygen" VERBATIM
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
674 )
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
675
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
676 add_custom_command(TARGET Orthanc
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
677 POST_BUILD
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
678 COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/OrthancPlugin.doxygen
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
679 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
1156
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
680 COMMENT "Generating plugin documentation with Doxygen" VERBATIM
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
681 )
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
682
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
683 install(
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
684 DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/OrthancPluginDocumentation/doc/
8c9574576f42 install plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1154
diff changeset
685 DESTINATION share/doc/orthanc/OrthancPlugin
12
c38716a8a146 static link against MSVC CRT
Administrator@jodogne-w01
parents: 8
diff changeset
686 )
149
b15ac5bd19f3 message
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 147
diff changeset
687 else()
b15ac5bd19f3 message
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 147
diff changeset
688 message("Doxygen not found. The documentation will not be built.")
134
bdc60d16cc98 improved cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 133
diff changeset
689 endif()
584
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
690
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
691
1400
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
692
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
693 #####################################################################
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
694 ## Install the plugin SDK
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
695 #####################################################################
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
696
1578
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
697 if (ENABLE_PLUGINS)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
698 install(
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
699 FILES
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
700 Plugins/Include/orthanc/OrthancCPlugin.h
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
701 Plugins/Include/orthanc/OrthancCDatabasePlugin.h
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
702 Plugins/Include/orthanc/OrthancCppDatabasePlugin.h
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
703 DESTINATION include/orthanc
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
704 )
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1576
diff changeset
705 endif()
1400
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
706
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
707
1c8df4424437 install plugin SDK
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1396
diff changeset
708
584
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
709 #####################################################################
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
710 ## Prepare the "uninstall" target
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
711 ## http://www.cmake.org/Wiki/CMake_FAQ#Can_I_do_.22make_uninstall.22_with_CMake.3F
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
712 #####################################################################
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
713
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
714 configure_file(
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
715 "${CMAKE_CURRENT_SOURCE_DIR}/Resources/CMake/Uninstall.cmake.in"
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
716 "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
717 IMMEDIATE @ONLY)
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
718
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
719 add_custom_target(uninstall
a042693cc6a9 uninstall target for make
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
720 COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)