Mercurial > hg > orthanc-wsi
annotate Applications/CMakeLists.txt @ 23:8fbe705e3d92
store Orthanc Core sources in a separate group
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 27 Oct 2016 11:53:00 +0200 |
parents | 482ff9a4506f |
children | 952b2c6ee0a2 |
rev | line source |
---|---|
0 | 1 cmake_minimum_required(VERSION 2.8) |
2 project(OrthancWSIApplications) | |
3 | |
4 | |
5 ##################################################################### | |
6 ## Parameters of the build | |
7 ##################################################################### | |
8 | |
9 # Generic parameters | |
10 SET(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)") | |
11 SET(ALLOW_DOWNLOADS OFF CACHE BOOL "Allow CMake to download packages") | |
12 | |
13 # Optional components | |
14 SET(ENABLE_SSL OFF CACHE BOOL "Include support for SSL") | |
15 SET(USE_DCMTK_361 OFF CACHE BOOL "Use forthcoming DCMTK version 3.6.1 in static builds (instead of 3.6.0)") | |
16 | |
17 if (CMAKE_SYSTEM_NAME STREQUAL "Linux") | |
18 set(TMP ON) | |
19 else() | |
20 set(TMP OFF) | |
21 endif() | |
22 | |
23 | |
24 # Advanced parameters to fine-tune linking against system libraries | |
25 SET(USE_SYSTEM_BOOST ON CACHE BOOL "Use the system version of Boost") | |
26 SET(USE_SYSTEM_CURL ON CACHE BOOL "Use the system version of LibCurl") | |
27 SET(USE_SYSTEM_DCMTK ON CACHE BOOL "Use the system version of DCMTK") | |
28 SET(USE_SYSTEM_JSONCPP ON CACHE BOOL "Use the system version of JsonCpp") | |
29 SET(USE_SYSTEM_LIBJPEG ON CACHE BOOL "Use the system version of libjpeg") | |
30 SET(USE_SYSTEM_LIBPNG ON CACHE BOOL "Use the system version of libpng") | |
31 SET(USE_SYSTEM_LIBTIFF ON CACHE BOOL "Use the system version of libtiff") | |
32 SET(USE_SYSTEM_OPENJPEG ON CACHE BOOL "Use the system version of OpenJpeg") | |
33 SET(USE_SYSTEM_OPENSSL ON CACHE BOOL "Use the system version of OpenSSL") | |
34 SET(USE_SYSTEM_ZLIB ON CACHE BOOL "Use the system version of ZLib") | |
35 | |
36 SET(DCMTK_DICTIONARY_DIR "" CACHE PATH "Directory containing the DCMTK dictionaries \"dicom.dic\" and \"private.dic\" (only when using system version of DCMTK)") | |
37 | |
38 | |
39 ##################################################################### | |
40 ## Configure mandatory third-party components | |
41 ##################################################################### | |
42 | |
43 SET(ORTHANC_WSI_DIR ${CMAKE_CURRENT_LIST_DIR}/..) | |
44 SET(ORTHANC_ROOT ${ORTHANC_WSI_DIR}/Framework/Orthanc) | |
45 SET(USE_OPENJPEG_JP2 ON) | |
46 SET(ENABLE_JPEG OFF) # Disable DCMTK's support for JPEG, that clashes with libtiff | |
47 SET(ENABLE_JPEG_LOSSLESS OFF) # Disable DCMTK's support for JPEG-LS | |
48 SET(ENABLE_DCMTK_NETWORK OFF) # Disable DCMTK's support for DICOM networking | |
49 SET(STANDALONE_BUILD ON) # Embed DCMTK's dictionaries for static builds | |
50 | |
51 include(CheckIncludeFiles) | |
52 include(CheckIncludeFileCXX) | |
53 include(CheckLibraryExists) | |
54 include(FindPythonInterp) | |
55 include(FindPkgConfig) | |
13 | 56 include(CheckSymbolExists) |
0 | 57 |
58 include(${ORTHANC_ROOT}/Resources/CMake/Compiler.cmake) | |
59 include(${ORTHANC_ROOT}/Resources/CMake/AutoGeneratedCode.cmake) | |
60 include(${ORTHANC_ROOT}/Resources/CMake/DownloadPackage.cmake) | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
61 include(${ORTHANC_ROOT}/Resources/CMake/VisualStudioPrecompiledHeaders.cmake) |
0 | 62 |
63 # Third-party components shipped with Orthanc | |
64 include(${ORTHANC_ROOT}/Resources/CMake/DcmtkConfiguration.cmake) | |
65 include(${ORTHANC_ROOT}/Resources/CMake/JsonCppConfiguration.cmake) | |
66 include(${ORTHANC_ROOT}/Resources/CMake/LibCurlConfiguration.cmake) | |
67 include(${ORTHANC_ROOT}/Resources/CMake/LibJpegConfiguration.cmake) | |
68 include(${ORTHANC_ROOT}/Resources/CMake/LibPngConfiguration.cmake) | |
69 include(${ORTHANC_ROOT}/Resources/CMake/ZlibConfiguration.cmake) | |
70 | |
8
62adabb8c122
Provide "--version" in command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
71 # Include components specific to WSI |
62adabb8c122
Provide "--version" in command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
72 include(${ORTHANC_WSI_DIR}/Resources/CMake/Version.cmake) |
0 | 73 include(${ORTHANC_WSI_DIR}/Resources/CMake/BoostExtendedConfiguration.cmake) |
74 include(${ORTHANC_WSI_DIR}/Resources/CMake/OpenJpegConfiguration.cmake) | |
75 include(${ORTHANC_WSI_DIR}/Resources/CMake/LibTiffConfiguration.cmake) | |
76 | |
77 add_definitions( | |
78 -DORTHANC_ENABLE_BASE64=1 | |
79 -DORTHANC_ENABLE_CURL=1 | |
80 -DORTHANC_ENABLE_DCMTK=1 | |
81 -DORTHANC_ENABLE_LOGGING=1 | |
82 -DORTHANC_ENABLE_MD5=0 | |
83 -DORTHANC_JPEG_ENABLED=0 # Disable DCMTK's support for JPEG | |
84 -DORTHANC_PKCS11_ENABLED=0 | |
85 -DORTHANC_PLUGINS_ENABLED=1 # To enable class Orthanc::SharedLibrary | |
86 -DORTHANC_PUGIXML_ENABLED=0 | |
87 ) | |
88 | |
89 | |
90 ##################################################################### | |
91 ## Configure optional third-party components | |
92 ##################################################################### | |
93 | |
94 if (ENABLE_SSL) | |
95 set(ENABLE_PKCS11 OFF) | |
96 add_definitions(-DORTHANC_SSL_ENABLED=1) | |
97 include(${ORTHANC_ROOT}/Resources/CMake/OpenSslConfiguration.cmake) | |
98 else() | |
99 add_definitions(-DORTHANC_SSL_ENABLED=0) | |
100 endif() | |
101 | |
102 | |
103 ##################################################################### | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
104 ## Create the list of the source files that depend upon the |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
105 ## precompiled headers |
0 | 106 ##################################################################### |
107 | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
108 set(ORTHANC_WSI_SOURCES |
0 | 109 #${ORTHANC_WSI_DIR}/Framework/Messaging/PluginOrthancConnection.cpp |
110 ${ORTHANC_WSI_DIR}/Framework/Algorithms/PyramidReader.cpp | |
111 ${ORTHANC_WSI_DIR}/Framework/Algorithms/ReconstructPyramidCommand.cpp | |
112 ${ORTHANC_WSI_DIR}/Framework/Algorithms/TranscodeTileCommand.cpp | |
113 ${ORTHANC_WSI_DIR}/Framework/DicomToolbox.cpp | |
114 ${ORTHANC_WSI_DIR}/Framework/DicomizerParameters.cpp | |
115 ${ORTHANC_WSI_DIR}/Framework/Enumerations.cpp | |
116 ${ORTHANC_WSI_DIR}/Framework/ImageToolbox.cpp | |
117 ${ORTHANC_WSI_DIR}/Framework/ImagedVolumeParameters.cpp | |
118 ${ORTHANC_WSI_DIR}/Framework/Inputs/DecodedTiledPyramid.cpp | |
119 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramid.cpp | |
120 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramidInstance.cpp | |
121 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramidLevel.cpp | |
122 ${ORTHANC_WSI_DIR}/Framework/Inputs/HierarchicalTiff.cpp | |
123 ${ORTHANC_WSI_DIR}/Framework/Inputs/OpenSlideLibrary.cpp | |
124 ${ORTHANC_WSI_DIR}/Framework/Inputs/OpenSlidePyramid.cpp | |
125 ${ORTHANC_WSI_DIR}/Framework/Inputs/PyramidWithRawTiles.cpp | |
126 ${ORTHANC_WSI_DIR}/Framework/Inputs/SingleLevelDecodedPyramid.cpp | |
127 ${ORTHANC_WSI_DIR}/Framework/Inputs/TiledPyramidStatistics.cpp | |
128 ${ORTHANC_WSI_DIR}/Framework/Jpeg2000Reader.cpp | |
129 ${ORTHANC_WSI_DIR}/Framework/Jpeg2000Writer.cpp | |
130 ${ORTHANC_WSI_DIR}/Framework/Messaging/CurlOrthancConnection.cpp | |
131 ${ORTHANC_WSI_DIR}/Framework/Messaging/FolderTarget.cpp | |
132 ${ORTHANC_WSI_DIR}/Framework/Messaging/IOrthancConnection.cpp | |
133 ${ORTHANC_WSI_DIR}/Framework/Messaging/OrthancConnectionBase.cpp | |
134 ${ORTHANC_WSI_DIR}/Framework/Messaging/OrthancTarget.cpp | |
135 ${ORTHANC_WSI_DIR}/Framework/Outputs/DicomPyramidWriter.cpp | |
136 ${ORTHANC_WSI_DIR}/Framework/Outputs/HierarchicalTiffWriter.cpp | |
137 ${ORTHANC_WSI_DIR}/Framework/Outputs/InMemoryTiledImage.cpp | |
138 ${ORTHANC_WSI_DIR}/Framework/Outputs/MultiframeDicomWriter.cpp | |
139 ${ORTHANC_WSI_DIR}/Framework/Outputs/PyramidWriterBase.cpp | |
140 ${ORTHANC_WSI_DIR}/Framework/Outputs/TruncatedPyramidWriter.cpp | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
141 ) |
0 | 142 |
23
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
143 set(ORTHANC_CORE_SOURCES |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
144 ${ORTHANC_ROOT}/Core/ChunkedBuffer.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
145 ${ORTHANC_ROOT}/Core/DicomFormat/DicomArray.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
146 ${ORTHANC_ROOT}/Core/DicomFormat/DicomMap.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
147 ${ORTHANC_ROOT}/Core/DicomFormat/DicomTag.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
148 ${ORTHANC_ROOT}/Core/DicomFormat/DicomValue.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
149 ${ORTHANC_ROOT}/Core/Enumerations.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
150 ${ORTHANC_ROOT}/Core/HttpClient.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
151 ${ORTHANC_ROOT}/Core/Images/IImageWriter.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
152 ${ORTHANC_ROOT}/Core/Images/Image.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
153 ${ORTHANC_ROOT}/Core/Images/ImageAccessor.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
154 ${ORTHANC_ROOT}/Core/Images/ImageBuffer.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
155 ${ORTHANC_ROOT}/Core/Images/ImageProcessing.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
156 ${ORTHANC_ROOT}/Core/Images/JpegErrorManager.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
157 ${ORTHANC_ROOT}/Core/Images/JpegReader.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
158 ${ORTHANC_ROOT}/Core/Images/JpegWriter.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
159 ${ORTHANC_ROOT}/Core/Images/PngReader.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
160 ${ORTHANC_ROOT}/Core/Images/PngWriter.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
161 ${ORTHANC_ROOT}/Core/Logging.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
162 ${ORTHANC_ROOT}/Core/MultiThreading/BagOfTasksProcessor.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
163 ${ORTHANC_ROOT}/Core/MultiThreading/SharedMessageQueue.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
164 ${ORTHANC_ROOT}/Core/Toolbox.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
165 ${ORTHANC_ROOT}/Core/Uuid.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
166 ${ORTHANC_ROOT}/Core/WebServiceParameters.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
167 ${ORTHANC_ROOT}/OrthancServer/FromDcmtkBridge.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
168 ${ORTHANC_ROOT}/OrthancServer/ServerEnumerations.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
169 ${ORTHANC_ROOT}/OrthancServer/ToDcmtkBridge.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
170 ${ORTHANC_ROOT}/Plugins/Engine/SharedLibrary.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
171 ${ORTHANC_ROOT}/Resources/ThirdParty/base64/base64.cpp |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
172 ) |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
173 |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
174 source_group(ThirdParty\\OrthancCore REGULAR_EXPRESSION ${ORTHANC_ROOT}/.*) |
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
175 |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
176 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
177 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
178 ## Setup precompiled headers for Microsoft Visual Studio |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
179 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
180 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
181 if (MSVC) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
182 add_definitions(-DORTHANC_USE_PRECOMPILED_HEADERS=1) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
183 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
184 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
20
482ff9a4506f
fix precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
16
diff
changeset
|
185 "PrecompiledHeaders.h" "${ORTHANC_WSI_DIR}/Framework/Orthanc/Core/PrecompiledHeaders.cpp" ORTHANC_CORE_SOURCES) |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
186 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
187 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
20
482ff9a4506f
fix precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
16
diff
changeset
|
188 "PrecompiledHeadersWSI.h" "${ORTHANC_WSI_DIR}/Framework/PrecompiledHeadersWSI.cpp" ORTHANC_WSI_SOURCES) |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
189 endif() |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
190 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
191 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
192 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
193 ## Create the static library containing the framework |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
194 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
195 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
196 EmbedResources( |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
197 ${DCMTK_DICTIONARIES} |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
198 BRIGHTFIELD_OPTICAL_PATH ${ORTHANC_WSI_DIR}/Resources/BrightfieldOpticalPath.json |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
199 SAMPLE_DATASET ${ORTHANC_WSI_DIR}/Resources/SampleDataset.json |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
200 SRGB_ICC_PROFILE ${ORTHANC_WSI_DIR}/Resources/sRGB.icc |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
201 ) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
202 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
203 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
204 add_library(OrthancWSIFramework STATIC |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
205 ${ORTHANC_CORE_SOURCES} |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
206 ${ORTHANC_WSI_SOURCES} |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
207 ${AUTOGENERATED_SOURCES} |
0 | 208 |
209 # Mandatory components | |
210 ${BOOST_SOURCES} | |
211 ${JSONCPP_SOURCES} | |
212 ${ZLIB_SOURCES} | |
213 ${LIBPNG_SOURCES} | |
214 ${LIBJPEG_SOURCES} | |
215 ${DCMTK_SOURCES} | |
216 ${LIBTIFF_SOURCES} | |
217 ${OPENJPEG_SOURCES} | |
218 | |
219 # Optional components | |
220 ${OPENSSL_SOURCES} | |
221 ${CURL_SOURCES} | |
222 ) | |
223 | |
224 | |
225 ##################################################################### | |
226 ## Build the WSI DICOM-izer | |
227 ##################################################################### | |
228 | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
229 # Create the Windows resources, if need be |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
230 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
231 execute_process( |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
232 COMMAND |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
233 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
234 ${ORTHANC_WSI_VERSION} OrthancWSIDicomizer OrthancWSIDicomizer.exe "Companion tool to Orthanc for whole-slide imaging" |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
235 ERROR_VARIABLE Failure |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
236 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancWSIDicomizer.rc |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
237 ) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
238 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
239 if (Failure) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
240 message(FATAL_ERROR "Error while computing the version information: ${Failure}") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
241 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
242 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
243 set(DICOMIZER_RESOURCES ${AUTOGENERATED_DIR}/OrthancWSIDicomizer.rc) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
244 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
245 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
246 |
0 | 247 add_executable(OrthancWSIDicomizer |
248 Dicomizer.cpp | |
249 ApplicationToolbox.cpp | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
250 ${DICOMIZER_RESOURCES} |
0 | 251 ) |
252 | |
253 target_link_libraries(OrthancWSIDicomizer OrthancWSIFramework ${DCMTK_LIBRARIES}) | |
254 | |
6 | 255 install( |
256 TARGETS OrthancWSIDicomizer | |
257 RUNTIME DESTINATION bin | |
258 ) | |
259 | |
0 | 260 |
261 ##################################################################### | |
262 ## Build the DICOM-to-TIFF conversion tool | |
263 ##################################################################### | |
264 | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
265 # Create the Windows resources, if need be |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
266 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
267 execute_process( |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
268 COMMAND |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
269 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
270 ${ORTHANC_WSI_VERSION} OrthancWSIDicomToTiff OrthancWSIDicomToTiff.exe "Companion tool to Orthanc for whole-slide imaging" |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
271 ERROR_VARIABLE Failure |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
272 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancWSIDicomToTiff.rc |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
273 ) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
274 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
275 if (Failure) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
276 message(FATAL_ERROR "Error while computing the version information: ${Failure}") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
277 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
278 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
279 set(DICOM_TO_TIFF_RESOURCES ${AUTOGENERATED_DIR}/OrthancWSIDicomToTiff.rc) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
280 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
281 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
282 |
0 | 283 add_executable(OrthancWSIDicomToTiff |
284 DicomToTiff.cpp | |
285 ApplicationToolbox.cpp | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
286 ${DICOM_TO_TIFF_RESOURCES} |
0 | 287 ) |
288 | |
289 target_link_libraries(OrthancWSIDicomToTiff OrthancWSIFramework ${DCMTK_LIBRARIES}) | |
290 | |
6 | 291 install( |
292 TARGETS OrthancWSIDicomToTiff | |
293 RUNTIME DESTINATION bin | |
294 ) | |
295 | |
0 | 296 |
297 ##################################################################### | |
298 ## Generate the documentation if Doxygen is present | |
299 ##################################################################### | |
300 | |
301 find_package(Doxygen) | |
302 if (DOXYGEN_FOUND) | |
303 configure_file( | |
304 ${ORTHANC_WSI_DIR}/Resources/OrthancWSI.doxygen | |
305 ${CMAKE_CURRENT_BINARY_DIR}/OrthancWSI.doxygen | |
306 @ONLY) | |
307 | |
308 add_custom_target(doc | |
309 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/OrthancWSI.doxygen | |
310 COMMENT "Generating documentation with Doxygen" VERBATIM | |
311 ) | |
312 else() | |
313 message("Doxygen not found. The documentation will not be built.") | |
314 endif() |