Mercurial > hg > orthanc-wsi
annotate Applications/CMakeLists.txt @ 322:778e08291d52
re-enabling built-in support of plain TIFF
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 16 Oct 2024 18:42:10 +0200 |
parents | 196d0e18afa0 |
children | c42083d50ddf |
rev | line source |
---|---|
242
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
1 # Orthanc - A Lightweight, RESTful DICOM Store |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
2 # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
3 # Department, University Hospital of Liege, Belgium |
312
0683312e21ba
updated copyright, as Orthanc Team now replaces Osimis
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
309
diff
changeset
|
4 # Copyright (C) 2017-2023 Osimis S.A., Belgium |
0683312e21ba
updated copyright, as Orthanc Team now replaces Osimis
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
309
diff
changeset
|
5 # Copyright (C) 2024-2024 Orthanc Team SRL, Belgium |
309
7020852a8fa9
updated year to 2024
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
302
diff
changeset
|
6 # Copyright (C) 2021-2024 Sebastien Jodogne, ICTEAM UCLouvain, Belgium |
242
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
7 # |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
8 # This program is free software: you can redistribute it and/or |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
9 # modify it under the terms of the GNU Affero General Public License |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
10 # as published by the Free Software Foundation, either version 3 of |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
11 # the License, or (at your option) any later version. |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
12 # |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
13 # This program is distributed in the hope that it will be useful, but |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
14 # WITHOUT ANY WARRANTY; without even the implied warranty of |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
16 # Affero General Public License for more details. |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
17 # |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
18 # You should have received a copy of the GNU Affero General Public License |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
19 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
20 |
49f647ed1b4c
added copyright UCLouvain
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
240
diff
changeset
|
21 |
0 | 22 cmake_minimum_required(VERSION 2.8) |
23 project(OrthancWSIApplications) | |
24 | |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
25 include(${CMAKE_SOURCE_DIR}/../Resources/CMake/Version.cmake) |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
26 |
0 | 27 |
28 ##################################################################### | |
29 ## Parameters of the build | |
30 ##################################################################### | |
31 | |
32 # Generic parameters | |
33 SET(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)") | |
34 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
|
35 SET(ENABLE_PROFILING OFF CACHE BOOL "Whether to enable the generation of profiling information with gprof") |
0 | 36 |
37 # Advanced parameters to fine-tune linking against system libraries | |
38 SET(USE_SYSTEM_LIBTIFF ON CACHE BOOL "Use the system version of libtiff") | |
39 SET(USE_SYSTEM_OPENJPEG ON CACHE BOOL "Use the system version of OpenJpeg") | |
40 | |
107 | 41 |
0 | 42 |
43 ##################################################################### | |
44 ## Configure mandatory third-party components | |
45 ##################################################################### | |
46 | |
47 SET(ORTHANC_WSI_DIR ${CMAKE_CURRENT_LIST_DIR}/..) | |
48 SET(USE_OPENJPEG_JP2 ON) | |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
49 |
239 | 50 include(${CMAKE_SOURCE_DIR}/../Resources/Orthanc/CMake/DownloadOrthancFramework.cmake) |
51 | |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
52 if (ORTHANC_FRAMEWORK_SOURCE STREQUAL "system") |
239 | 53 if (ORTHANC_FRAMEWORK_USE_SHARED) |
54 include(FindBoost) | |
292
053af6d76f2a
fix shared library linking
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
255
diff
changeset
|
55 find_package(Boost COMPONENTS filesystem program_options regex system thread date_time) |
239 | 56 |
57 if (NOT Boost_FOUND) | |
58 message(FATAL_ERROR "Unable to locate Boost on this system") | |
59 endif() | |
208 | 60 |
239 | 61 include(FindDCMTK) |
292
053af6d76f2a
fix shared library linking
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
255
diff
changeset
|
62 link_libraries(${Boost_LIBRARIES} ${DCMTK_LIBRARIES} jsoncpp crypto) |
239 | 63 endif() |
64 | |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
65 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
|
66 |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
67 else() |
208 | 68 include_directories(${ORTHANC_FRAMEWORK_ROOT}) |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
69 |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
70 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
|
71 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
|
72 |
204 | 73 include(${ORTHANC_FRAMEWORK_ROOT}/../Resources/CMake/OrthancFrameworkParameters.cmake) |
0 | 74 |
197
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
75 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
|
76 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
|
77 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
|
78 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
|
79 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
|
80 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
|
81 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
|
82 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
|
83 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
|
84 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
|
85 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
|
86 SET(ENABLE_ZLIB ON) |
0 | 87 |
204 | 88 include(${ORTHANC_FRAMEWORK_ROOT}/../Resources/CMake/VisualStudioPrecompiledHeaders.cmake) |
89 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
|
90 |
e5964793a790
use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
196
diff
changeset
|
91 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
|
92 endif() |
0 | 93 |
94 | |
8
62adabb8c122
Provide "--version" in command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
95 # Include components specific to WSI |
0 | 96 include(${ORTHANC_WSI_DIR}/Resources/CMake/OpenJpegConfiguration.cmake) |
97 include(${ORTHANC_WSI_DIR}/Resources/CMake/LibTiffConfiguration.cmake) | |
98 | |
99 | |
100 | |
101 ##################################################################### | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
102 ## 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
|
103 ## precompiled headers |
0 | 104 ##################################################################### |
105 | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
106 set(ORTHANC_WSI_SOURCES |
0 | 107 ${ORTHANC_WSI_DIR}/Framework/Algorithms/PyramidReader.cpp |
108 ${ORTHANC_WSI_DIR}/Framework/Algorithms/ReconstructPyramidCommand.cpp | |
109 ${ORTHANC_WSI_DIR}/Framework/Algorithms/TranscodeTileCommand.cpp | |
110 ${ORTHANC_WSI_DIR}/Framework/DicomToolbox.cpp | |
111 ${ORTHANC_WSI_DIR}/Framework/DicomizerParameters.cpp | |
112 ${ORTHANC_WSI_DIR}/Framework/Enumerations.cpp | |
113 ${ORTHANC_WSI_DIR}/Framework/ImageToolbox.cpp | |
114 ${ORTHANC_WSI_DIR}/Framework/ImagedVolumeParameters.cpp | |
243
7d189530d648
added class CytomineImage
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
242
diff
changeset
|
115 ${ORTHANC_WSI_DIR}/Framework/Inputs/CytomineImage.cpp |
0 | 116 ${ORTHANC_WSI_DIR}/Framework/Inputs/DecodedTiledPyramid.cpp |
117 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramid.cpp | |
118 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramidInstance.cpp | |
119 ${ORTHANC_WSI_DIR}/Framework/Inputs/DicomPyramidLevel.cpp | |
120 ${ORTHANC_WSI_DIR}/Framework/Inputs/HierarchicalTiff.cpp | |
121 ${ORTHANC_WSI_DIR}/Framework/Inputs/OpenSlideLibrary.cpp | |
122 ${ORTHANC_WSI_DIR}/Framework/Inputs/OpenSlidePyramid.cpp | |
298
fa734a851551
New option: "tiff-alignment" to control deep zoom of plain TIFF over IIIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
297
diff
changeset
|
123 ${ORTHANC_WSI_DIR}/Framework/Inputs/PlainTiff.cpp |
0 | 124 ${ORTHANC_WSI_DIR}/Framework/Inputs/PyramidWithRawTiles.cpp |
125 ${ORTHANC_WSI_DIR}/Framework/Inputs/SingleLevelDecodedPyramid.cpp | |
126 ${ORTHANC_WSI_DIR}/Framework/Inputs/TiledPyramidStatistics.cpp | |
127 ${ORTHANC_WSI_DIR}/Framework/Jpeg2000Reader.cpp | |
128 ${ORTHANC_WSI_DIR}/Framework/Jpeg2000Writer.cpp | |
151 | 129 ${ORTHANC_WSI_DIR}/Framework/MultiThreading/BagOfTasksProcessor.cpp |
0 | 130 ${ORTHANC_WSI_DIR}/Framework/Outputs/DicomPyramidWriter.cpp |
131 ${ORTHANC_WSI_DIR}/Framework/Outputs/HierarchicalTiffWriter.cpp | |
132 ${ORTHANC_WSI_DIR}/Framework/Outputs/InMemoryTiledImage.cpp | |
133 ${ORTHANC_WSI_DIR}/Framework/Outputs/MultiframeDicomWriter.cpp | |
134 ${ORTHANC_WSI_DIR}/Framework/Outputs/PyramidWriterBase.cpp | |
135 ${ORTHANC_WSI_DIR}/Framework/Outputs/TruncatedPyramidWriter.cpp | |
151 | 136 ${ORTHANC_WSI_DIR}/Framework/Targets/FolderTarget.cpp |
137 ${ORTHANC_WSI_DIR}/Framework/Targets/OrthancTarget.cpp | |
297 | 138 ${ORTHANC_WSI_DIR}/Framework/TiffReader.cpp |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
139 ) |
0 | 140 |
26 | 141 EmbedResources( |
142 ${DCMTK_DICTIONARIES} | |
143 BRIGHTFIELD_OPTICAL_PATH ${ORTHANC_WSI_DIR}/Resources/BrightfieldOpticalPath.json | |
144 SAMPLE_DATASET ${ORTHANC_WSI_DIR}/Resources/SampleDataset.json | |
145 SRGB_ICC_PROFILE ${ORTHANC_WSI_DIR}/Resources/sRGB.icc | |
146 ) | |
23
8fbe705e3d92
store Orthanc Core sources in a separate group
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
20
diff
changeset
|
147 |
141 | 148 add_definitions( |
150 | 149 -DORTHANC_ENABLE_LOGGING_PLUGIN=0 |
141 | 150 ) |
151 | |
16
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 ## Setup precompiled headers for Microsoft Visual Studio |
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 if (MSVC) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
158 add_definitions(-DORTHANC_USE_PRECOMPILED_HEADERS=1) |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
159 |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
160 set(TMP |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
161 ${ORTHANC_CORE_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
162 ${ORTHANC_DICOM_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
163 ) |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
164 |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
165 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
205 | 166 "PrecompiledHeaders.h" "${ORTHANC_FRAMEWORK_ROOT}/PrecompiledHeaders.cpp" |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
167 TMP ORTHANC_CORE_PCH) |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
168 |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
169 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
118
3ddaaad18ec0
fix msvc precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
116
diff
changeset
|
170 "PrecompiledHeadersWSI.h" "${ORTHANC_WSI_DIR}/Framework/PrecompiledHeadersWSI.cpp" |
3ddaaad18ec0
fix msvc precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
116
diff
changeset
|
171 ORTHANC_WSI_SOURCES ORTHANC_WSI_PCH) |
26 | 172 |
173 source_group(ThirdParty\\OrthancCore FILES ${ORTHANC_CORE_SOURCES}) | |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
174 endif() |
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
175 |
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 ## Create the static library containing the framework |
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 add_library(OrthancWSIFramework STATIC |
192 | 182 ${ORTHANC_WSI_PCH} |
183 ${ORTHANC_WSI_SOURCES} | |
184 | |
118
3ddaaad18ec0
fix msvc precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
116
diff
changeset
|
185 ${ORTHANC_CORE_PCH} |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
186 ${ORTHANC_CORE_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
187 ${ORTHANC_CORE_SOURCES_DEPENDENCIES} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
188 ${ORTHANC_DICOM_SOURCES_INTERNAL} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
189 ${ORTHANC_DICOM_SOURCES_DEPENDENCIES} |
16
7a88c614be04
preparing for precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
13
diff
changeset
|
190 ${AUTOGENERATED_SOURCES} |
140
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
191 ${BOOST_EXTENDED_SOURCES} |
a0f9a3df1110
resort to Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
130
diff
changeset
|
192 |
196
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
193 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/DicomDatasetReader.cpp |
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
194 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/FullOrthancDataset.cpp |
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
195 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/IOrthancConnection.cpp |
b0bd22077cd8
sharing code with orthanc-stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
195
diff
changeset
|
196 ${ORTHANC_WSI_DIR}/Resources/Orthanc/Stone/OrthancHttpConnection.cpp |
320 | 197 ${ORTHANC_WSI_DIR}/Resources/Orthanc/StoneToolbox.cpp |
0 | 198 |
199 # Mandatory components | |
200 ${LIBTIFF_SOURCES} | |
201 ${OPENJPEG_SOURCES} | |
202 ) | |
203 | |
302
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
204 if (COMMAND DefineSourceBasenameForTarget) |
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
205 DefineSourceBasenameForTarget(OrthancWSIFramework) |
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
206 endif() |
255
cf20f8417eaa
introduction of DefineSourceBasenameForTarget()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
254
diff
changeset
|
207 |
0 | 208 |
209 ##################################################################### | |
210 ## Build the WSI DICOM-izer | |
211 ##################################################################### | |
212 | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
213 # Create the Windows resources, if need be |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
214 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
215 execute_process( |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
216 COMMAND |
205 | 217 ${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
|
218 ${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
|
219 ERROR_VARIABLE Failure |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
220 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancWSIDicomizer.rc |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
221 ) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
222 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
223 if (Failure) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
224 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
|
225 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
226 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
227 set(DICOMIZER_RESOURCES ${AUTOGENERATED_DIR}/OrthancWSIDicomizer.rc) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
228 endif() |
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 |
0 | 231 add_executable(OrthancWSIDicomizer |
232 Dicomizer.cpp | |
233 ApplicationToolbox.cpp | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
234 ${DICOMIZER_RESOURCES} |
0 | 235 ) |
236 | |
302
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
237 if (COMMAND DefineSourceBasenameForTarget) |
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
238 DefineSourceBasenameForTarget(OrthancWSIDicomizer) |
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
239 endif() |
255
cf20f8417eaa
introduction of DefineSourceBasenameForTarget()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
254
diff
changeset
|
240 |
0 | 241 target_link_libraries(OrthancWSIDicomizer OrthancWSIFramework ${DCMTK_LIBRARIES}) |
242 | |
6 | 243 install( |
244 TARGETS OrthancWSIDicomizer | |
245 RUNTIME DESTINATION bin | |
246 ) | |
247 | |
0 | 248 |
249 ##################################################################### | |
250 ## Build the DICOM-to-TIFF conversion tool | |
251 ##################################################################### | |
252 | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
253 # Create the Windows resources, if need be |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
254 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
255 execute_process( |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
256 COMMAND |
205 | 257 ${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
|
258 ${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
|
259 ERROR_VARIABLE Failure |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
260 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancWSIDicomToTiff.rc |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
261 ) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
262 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
263 if (Failure) |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
264 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
|
265 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
266 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
267 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
|
268 endif() |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
269 |
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
270 |
0 | 271 add_executable(OrthancWSIDicomToTiff |
272 DicomToTiff.cpp | |
273 ApplicationToolbox.cpp | |
9
021482366dac
Windows resources for command-line tools
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
8
diff
changeset
|
274 ${DICOM_TO_TIFF_RESOURCES} |
0 | 275 ) |
276 | |
302
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
277 if (COMMAND DefineSourceBasenameForTarget) |
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
278 DefineSourceBasenameForTarget(OrthancWSIDicomToTiff) |
f1441b74ba09
fixed handling of DefineSourceBasenameForTarget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
298
diff
changeset
|
279 endif() |
255
cf20f8417eaa
introduction of DefineSourceBasenameForTarget()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
254
diff
changeset
|
280 |
0 | 281 target_link_libraries(OrthancWSIDicomToTiff OrthancWSIFramework ${DCMTK_LIBRARIES}) |
282 | |
6 | 283 install( |
284 TARGETS OrthancWSIDicomToTiff | |
285 RUNTIME DESTINATION bin | |
286 ) | |
287 | |
0 | 288 |
289 ##################################################################### | |
290 ## Generate the documentation if Doxygen is present | |
291 ##################################################################### | |
292 | |
293 find_package(Doxygen) | |
294 if (DOXYGEN_FOUND) | |
295 configure_file( | |
296 ${ORTHANC_WSI_DIR}/Resources/OrthancWSI.doxygen | |
297 ${CMAKE_CURRENT_BINARY_DIR}/OrthancWSI.doxygen | |
298 @ONLY) | |
299 | |
300 add_custom_target(doc | |
301 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/OrthancWSI.doxygen | |
302 COMMENT "Generating documentation with Doxygen" VERBATIM | |
303 ) | |
304 else() | |
305 message("Doxygen not found. The documentation will not be built.") | |
306 endif() |