Mercurial > hg > orthanc-wsi
annotate Applications/CMakeLists.txt @ 240:24e5f64263a0
improved CMakeLists.txt
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 23 Jun 2021 09:12:29 +0200 |
parents | bab966288abe |
children | 49f647ed1b4c |
rev | line source |
---|---|
0 | 1 cmake_minimum_required(VERSION 2.8) |
2 project(OrthancWSIApplications) | |
3 | |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
4 include(${CMAKE_SOURCE_DIR}/../Resources/CMake/Version.cmake) |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
5 |
0 | 6 |
7 ##################################################################### | |
8 ## Parameters of the build | |
9 ##################################################################### | |
10 | |
11 # Generic parameters | |
12 SET(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)") | |
13 SET(ALLOW_DOWNLOADS OFF CACHE BOOL "Allow CMake to download packages") | |
57
91fc9583b2de
big refactoring to support sparse tiling
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
53
diff
changeset
|
14 SET(ENABLE_PROFILING OFF CACHE BOOL "Whether to enable the generation of profiling information with gprof") |
0 | 15 |
16 # Advanced parameters to fine-tune linking against system libraries | |
17 SET(USE_SYSTEM_LIBTIFF ON CACHE BOOL "Use the system version of libtiff") | |
18 SET(USE_SYSTEM_OPENJPEG ON CACHE BOOL "Use the system version of OpenJpeg") | |
19 | |
107 | 20 |
0 | 21 |
22 ##################################################################### | |
23 ## Configure mandatory third-party components | |
24 ##################################################################### | |
25 | |
26 SET(ORTHANC_WSI_DIR ${CMAKE_CURRENT_LIST_DIR}/..) | |
27 SET(USE_OPENJPEG_JP2 ON) | |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
28 |
239 | 29 include(${CMAKE_SOURCE_DIR}/../Resources/Orthanc/CMake/DownloadOrthancFramework.cmake) |
30 | |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
31 if (ORTHANC_FRAMEWORK_SOURCE STREQUAL "system") |
239 | 32 if (ORTHANC_FRAMEWORK_USE_SHARED) |
33 include(FindBoost) | |
34 find_package(Boost COMPONENTS filesystem program_options regex system thread) | |
35 | |
36 if (NOT Boost_FOUND) | |
37 message(FATAL_ERROR "Unable to locate Boost on this system") | |
38 endif() | |
208 | 39 |
239 | 40 include(FindDCMTK) |
41 link_libraries(${Boost_LIBRARIES} ${DCMTK_LIBRARIES} jsoncpp) | |
42 endif() | |
43 | |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
44 link_libraries(${ORTHANC_FRAMEWORK_LIBRARIES}) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
45 |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
46 else() |
208 | 47 include_directories(${ORTHANC_FRAMEWORK_ROOT}) |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
48 |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
49 UNSET(STANDALONE_BUILD CACHE) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
50 SET(STANDALONE_BUILD ON) # Embed DCMTK's dictionaries for static builds |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
51 |
204 | 52 include(${ORTHANC_FRAMEWORK_ROOT}/../Resources/CMake/OrthancFrameworkParameters.cmake) |
0 | 53 |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
54 SET(ENABLE_CRYPTO_OPTIONS ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
55 SET(ENABLE_DCMTK ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
56 SET(ENABLE_DCMTK_JPEG OFF) # Disable DCMTK's support for JPEG, that clashes with libtiff |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
57 SET(ENABLE_DCMTK_JPEG_LOSSLESS OFF) # Disable DCMTK's support for JPEG-LS |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
58 SET(ENABLE_DCMTK_NETWORKING OFF) # Disable DCMTK's support for DICOM networking |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
59 SET(ENABLE_JPEG ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
60 SET(ENABLE_LOCALE ON) # Enable support for locales (notably in Boost) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
61 SET(ENABLE_OPENSSL_ENGINES ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
62 SET(ENABLE_PNG ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
63 SET(ENABLE_SSL ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
64 SET(ENABLE_WEB_CLIENT ON) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
65 SET(ENABLE_ZLIB ON) |
0 | 66 |
204 | 67 include(${ORTHANC_FRAMEWORK_ROOT}/../Resources/CMake/VisualStudioPrecompiledHeaders.cmake) |
68 include(${ORTHANC_FRAMEWORK_ROOT}/../Resources/CMake/OrthancFrameworkConfiguration.cmake) | |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
69 |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
70 include(${ORTHANC_WSI_DIR}/Resources/CMake/BoostExtendedConfiguration.cmake) |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
71 endif() |
0 | 72 |
73 | |
8
62adabb8c122
Provide "--version" in command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
74 # Include components specific to WSI |
0 | 75 include(${ORTHANC_WSI_DIR}/Resources/CMake/OpenJpegConfiguration.cmake) |
76 include(${ORTHANC_WSI_DIR}/Resources/CMake/LibTiffConfiguration.cmake) | |
77 | |
78 | |
79 | |
80 ##################################################################### | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
81 ## 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
|
82 ## precompiled headers |
0 | 83 ##################################################################### |
84 | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
85 set(ORTHANC_WSI_SOURCES |
0 | 86 ${ORTHANC_WSI_DIR}/Framework/Algorithms/PyramidReader.cpp |
87 ${ORTHANC_WSI_DIR}/Framework/Algorithms/ReconstructPyramidCommand.cpp | |
88 ${ORTHANC_WSI_DIR}/Framework/Algorithms/TranscodeTileCommand.cpp | |
89 ${ORTHANC_WSI_DIR}/Framework/DicomToolbox.cpp | |
90 ${ORTHANC_WSI_DIR}/Framework/DicomizerParameters.cpp | |
91 ${ORTHANC_WSI_DIR}/Framework/Enumerations.cpp | |
92 ${ORTHANC_WSI_DIR}/Framework/ImageToolbox.cpp | |
93 ${ORTHANC_WSI_DIR}/Framework/ImagedVolumeParameters.cpp | |
94 ${ORTHANC_WSI_DIR}/Framework/Inputs/DecodedTiledPyramid.cpp | |
95 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramid.cpp | |
96 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramidInstance.cpp | |
97 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramidLevel.cpp | |
98 ${ORTHANC_WSI_DIR}/Framework/Inputs/HierarchicalTiff.cpp | |
99 ${ORTHANC_WSI_DIR}/Framework/Inputs/OpenSlideLibrary.cpp | |
100 ${ORTHANC_WSI_DIR}/Framework/Inputs/OpenSlidePyramid.cpp | |
101 ${ORTHANC_WSI_DIR}/Framework/Inputs/PyramidWithRawTiles.cpp | |
102 ${ORTHANC_WSI_DIR}/Framework/Inputs/SingleLevelDecodedPyramid.cpp | |
103 ${ORTHANC_WSI_DIR}/Framework/Inputs/TiledPyramidStatistics.cpp | |
104 ${ORTHANC_WSI_DIR}/Framework/Jpeg2000Reader.cpp | |
105 ${ORTHANC_WSI_DIR}/Framework/Jpeg2000Writer.cpp | |
151 | 106 ${ORTHANC_WSI_DIR}/Framework/MultiThreading/BagOfTasksProcessor.cpp |
0 | 107 ${ORTHANC_WSI_DIR}/Framework/Outputs/DicomPyramidWriter.cpp |
108 ${ORTHANC_WSI_DIR}/Framework/Outputs/HierarchicalTiffWriter.cpp | |
109 ${ORTHANC_WSI_DIR}/Framework/Outputs/InMemoryTiledImage.cpp | |
110 ${ORTHANC_WSI_DIR}/Framework/Outputs/MultiframeDicomWriter.cpp | |
111 ${ORTHANC_WSI_DIR}/Framework/Outputs/PyramidWriterBase.cpp | |
112 ${ORTHANC_WSI_DIR}/Framework/Outputs/TruncatedPyramidWriter.cpp | |
151 | 113 ${ORTHANC_WSI_DIR}/Framework/Targets/FolderTarget.cpp |
114 ${ORTHANC_WSI_DIR}/Framework/Targets/OrthancTarget.cpp | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
115 ) |
0 | 116 |
26 | 117 EmbedResources( |
118 ${DCMTK_DICTIONARIES} | |
119 BRIGHTFIELD_OPTICAL_PATH ${ORTHANC_WSI_DIR}/Resources/BrightfieldOpticalPath.json | |
120 SAMPLE_DATASET ${ORTHANC_WSI_DIR}/Resources/SampleDataset.json | |
121 SRGB_ICC_PROFILE ${ORTHANC_WSI_DIR}/Resources/sRGB.icc | |
122 ) | |
23
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
123 |
141 | 124 add_definitions( |
150 | 125 -DORTHANC_ENABLE_LOGGING_PLUGIN=0 |
141 | 126 ) |
127 | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
128 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
129 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
130 ## Setup precompiled headers for Microsoft Visual Studio |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
131 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
132 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
133 if (MSVC) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
134 add_definitions(-DORTHANC_USE_PRECOMPILED_HEADERS=1) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
135 |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
136 set(TMP |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
137 ${ORTHANC_CORE_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
138 ${ORTHANC_DICOM_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
139 ) |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
140 |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
141 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
205 | 142 "PrecompiledHeaders.h" "${ORTHANC_FRAMEWORK_ROOT}/PrecompiledHeaders.cpp" |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
143 TMP ORTHANC_CORE_PCH) |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
144 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
145 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
118
3ddaaad18ec0
fix msvc precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
116
diff
changeset
|
146 "PrecompiledHeadersWSI.h" "${ORTHANC_WSI_DIR}/Framework/PrecompiledHeadersWSI.cpp" |
3ddaaad18ec0
fix msvc precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
116
diff
changeset
|
147 ORTHANC_WSI_SOURCES ORTHANC_WSI_PCH) |
26 | 148 |
149 source_group(ThirdParty\\OrthancCore FILES ${ORTHANC_CORE_SOURCES}) | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
150 endif() |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
151 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
152 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
153 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
154 ## Create the static library containing the framework |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
155 ##################################################################### |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
156 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
157 add_library(OrthancWSIFramework STATIC |
192 | 158 ${ORTHANC_WSI_PCH} |
159 ${ORTHANC_WSI_SOURCES} | |
160 | |
118
3ddaaad18ec0
fix msvc precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
116
diff
changeset
|
161 ${ORTHANC_CORE_PCH} |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
162 ${ORTHANC_CORE_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
163 ${ORTHANC_CORE_SOURCES_DEPENDENCIES} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
164 ${ORTHANC_DICOM_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
165 ${ORTHANC_DICOM_SOURCES_DEPENDENCIES} |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
166 ${AUTOGENERATED_SOURCES} |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
167 ${BOOST_EXTENDED_SOURCES} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
168 |
196
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
169 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/DicomDatasetReader.cpp |
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
170 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/FullOrthancDataset.cpp |
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
171 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/IOrthancConnection.cpp |
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
172 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/OrthancHttpConnection.cpp |
0 | 173 |
174 # Mandatory components | |
175 ${LIBTIFF_SOURCES} | |
176 ${OPENJPEG_SOURCES} | |
177 ) | |
178 | |
179 | |
180 ##################################################################### | |
181 ## Build the WSI DICOM-izer | |
182 ##################################################################### | |
183 | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
184 # Create the Windows resources, if need be |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
185 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
186 execute_process( |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
187 COMMAND |
205 | 188 ${PYTHON_EXECUTABLE} ${ORTHANC_FRAMEWORK_ROOT}/../Resources/WindowsResources.py |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
189 ${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
|
190 ERROR_VARIABLE Failure |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
191 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancWSIDicomizer.rc |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
192 ) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
193 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
194 if (Failure) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
195 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
|
196 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
197 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
198 set(DICOMIZER_RESOURCES ${AUTOGENERATED_DIR}/OrthancWSIDicomizer.rc) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
199 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
200 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
201 |
0 | 202 add_executable(OrthancWSIDicomizer |
203 Dicomizer.cpp | |
204 ApplicationToolbox.cpp | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
205 ${DICOMIZER_RESOURCES} |
0 | 206 ) |
207 | |
208 target_link_libraries(OrthancWSIDicomizer OrthancWSIFramework ${DCMTK_LIBRARIES}) | |
209 | |
6 | 210 install( |
211 TARGETS OrthancWSIDicomizer | |
212 RUNTIME DESTINATION bin | |
213 ) | |
214 | |
0 | 215 |
216 ##################################################################### | |
217 ## Build the DICOM-to-TIFF conversion tool | |
218 ##################################################################### | |
219 | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
220 # Create the Windows resources, if need be |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
221 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
222 execute_process( |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
223 COMMAND |
205 | 224 ${PYTHON_EXECUTABLE} ${ORTHANC_FRAMEWORK_ROOT}/../Resources/WindowsResources.py |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
225 ${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
|
226 ERROR_VARIABLE Failure |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
227 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancWSIDicomToTiff.rc |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
228 ) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
229 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
230 if (Failure) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
231 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
|
232 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
233 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
234 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
|
235 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
236 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
237 |
0 | 238 add_executable(OrthancWSIDicomToTiff |
239 DicomToTiff.cpp | |
240 ApplicationToolbox.cpp | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
241 ${DICOM_TO_TIFF_RESOURCES} |
0 | 242 ) |
243 | |
244 target_link_libraries(OrthancWSIDicomToTiff OrthancWSIFramework ${DCMTK_LIBRARIES}) | |
245 | |
6 | 246 install( |
247 TARGETS OrthancWSIDicomToTiff | |
248 RUNTIME DESTINATION bin | |
249 ) | |
250 | |
0 | 251 |
252 ##################################################################### | |
253 ## Generate the documentation if Doxygen is present | |
254 ##################################################################### | |
255 | |
256 find_package(Doxygen) | |
257 if (DOXYGEN_FOUND) | |
258 configure_file( | |
259 ${ORTHANC_WSI_DIR}/Resources/OrthancWSI.doxygen | |
260 ${CMAKE_CURRENT_BINARY_DIR}/OrthancWSI.doxygen | |
261 @ONLY) | |
262 | |
263 add_custom_target(doc | |
264 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/OrthancWSI.doxygen | |
265 COMMENT "Generating documentation with Doxygen" VERBATIM | |
266 ) | |
267 else() | |
268 message("Doxygen not found. The documentation will not be built.") | |
269 endif() |