annotate CMakeLists.txt @ 172:330ecfd96aec

sync
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 10 Oct 2017 12:53:46 +0200
parents 38aa615b7667
children 81f16c5667ba
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 # Orthanc - A Lightweight, RESTful DICOM Store
122
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 121
diff changeset
2 # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3 # Department, University Hospital of Liege, Belgium
159
5dc54316d68b shared copyright with osimis
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 150
diff changeset
4 # Copyright (C) 2017 Osimis, Belgium
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 #
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6 # This program is free software: you can redistribute it and/or
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 # modify it under the terms of the GNU Affero General Public License
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8 # as published by the Free Software Foundation, either version 3 of
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9 # the License, or (at your option) any later version.
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10 #
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
11 # This program is distributed in the hope that it will be useful, but
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14 # Affero General Public License for more details.
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
15 #
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
16 # You should have received a copy of the GNU Affero General Public License
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
18
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
19
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
20 cmake_minimum_required(VERSION 2.8)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
21
13
09421764214b fixes for visual studio
jodogne
parents: 12
diff changeset
22 project(OrthancWebViewer)
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23
166
e5ac1fd6cf7d fix mainline version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 164
diff changeset
24 set(ORTHANC_WEBVIEWER_VERSION "mainline")
8
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
25
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
26 # Parameters of the build
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
27 set(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28 SET(STANDALONE_BUILD ON CACHE BOOL "Standalone build (all the resources are embedded, necessary for releases)")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
29 set(ALLOW_DOWNLOADS OFF CACHE BOOL "Allow CMake to download packages")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
30
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
31 # Advanced parameters to fine-tune linking against system libraries
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32 set(USE_SYSTEM_BOOST ON CACHE BOOL "Use the system version of Boost")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33 set(USE_SYSTEM_GDCM ON CACHE BOOL "Use the system version of Grassroot DICOM (GDCM)")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34 set(USE_SYSTEM_GOOGLE_TEST ON CACHE BOOL "Use the system version of Google Test")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35 set(USE_SYSTEM_JSONCPP ON CACHE BOOL "Use the system version of JsonCpp")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
36 set(USE_SYSTEM_SQLITE ON CACHE BOOL "Use the system version of SQLite")
68
45da32410346 USE_SYSTEM_ORTHANC_SDK option
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 60
diff changeset
37 set(USE_SYSTEM_ORTHANC_SDK ON CACHE BOOL "Use the system version of the Orthanc plugin SDK")
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39 # Distribution-specific settings
172
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 168
diff changeset
40 set(USE_GOOGLE_TEST_DEBIAN_PACKAGE OFF CACHE BOOL "Use the sources of Google Test shipped with libgtest-dev (Debian only)")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 168
diff changeset
41 mark_as_advanced(USE_GOOGLE_TEST_DEBIAN_PACKAGE)
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
43 set(ORTHANC_ROOT ${CMAKE_SOURCE_DIR}/Orthanc)
145
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 143
diff changeset
44 set(ORTHANC_DISABLE_PATCH ON) # No need for the "patch" command-line tool
168
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 166
diff changeset
45 set(ENABLE_LOCALE OFF) # Disable support for locales (notably in Boost)
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
46 include(CheckIncludeFiles)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
47 include(CheckIncludeFileCXX)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
48 include(CheckLibraryExists)
17
b1eafe1e8511 FreeBSD
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 16
diff changeset
49 include(FindPythonInterp)
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
50 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/Compiler.cmake)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
51 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/AutoGeneratedCode.cmake)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
52 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/DownloadPackage.cmake)
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
53
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
54 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/BoostConfiguration.cmake)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
55 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/GoogleTestConfiguration.cmake)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
56 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/JsonCppConfiguration.cmake)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
57 include(${CMAKE_SOURCE_DIR}/Orthanc/Resources/CMake/SQLiteConfiguration.cmake)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
58
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
59 include(${CMAKE_SOURCE_DIR}/Resources/CMake/GdcmConfiguration.cmake)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
60 include(${CMAKE_SOURCE_DIR}/Resources/CMake/JavaScriptLibraries.cmake)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
61
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
62
143
16f8471e3872 Performance warning if runtime debug assertions are turned on
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 139
diff changeset
63 # Check that the Orthanc SDK headers are available
68
45da32410346 USE_SYSTEM_ORTHANC_SDK option
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 60
diff changeset
64 if (STATIC_BUILD OR NOT USE_SYSTEM_ORTHANC_SDK)
111
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 110
diff changeset
65 include_directories(${ORTHANC_ROOT}/Sdk-0.9.5)
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
66 else ()
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
67 CHECK_INCLUDE_FILE_CXX(orthanc/OrthancCPlugin.h HAVE_ORTHANC_H)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
68 if (NOT HAVE_ORTHANC_H)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
69 message(FATAL_ERROR "Please install the headers of the Orthanc plugins SDK")
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
70 endif()
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71 endif()
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
72
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
73
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74 if (STANDALONE_BUILD)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75 add_definitions(
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76 -DORTHANC_STANDALONE=1
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78 set(EMBEDDED_RESOURCES
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
79 WEB_VIEWER ${CMAKE_SOURCE_DIR}/WebApplication
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
81 else()
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82 add_definitions(
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
83 -DORTHANC_STANDALONE=0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
84 -DWEB_VIEWER_PATH="${CMAKE_SOURCE_DIR}/WebApplication/"
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 endif()
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
87
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
88 EmbedResources(
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
89 ORTHANC_EXPLORER ${CMAKE_SOURCE_DIR}/Resources/OrthancExplorer.js
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
90 JAVASCRIPT_LIBS ${JAVASCRIPT_LIBS_DIR}
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91 ${EMBEDDED_RESOURCES}
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
93
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
94 add_definitions(
172
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 168
diff changeset
95 -DORTHANC_DEFAULT_DICOM_ENCODING=Encoding_Latin1
168
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 166
diff changeset
96 -DORTHANC_ENABLE_LOCALE=0
149
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 145
diff changeset
97 -DORTHANC_ENABLE_PUGIXML=0
172
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 168
diff changeset
98 -DORTHANC_ENABLE_SQLITE=1
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99 -DORTHANC_SQLITE_STANDALONE=1
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
100 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
101
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
102
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
103 if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux" OR
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
104 ${CMAKE_SYSTEM_NAME} STREQUAL "kFreeBSD" OR
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
105 ${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
106 link_libraries(rt)
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
107 elseif (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
108 SET(CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES} -lws2_32")
45
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
109
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
110 execute_process(
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
111 COMMAND
48
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 46
diff changeset
112 ${PYTHON_EXECUTABLE} ${ORTHANC_ROOT}/Resources/WindowsResources.py
45
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
113 ${ORTHANC_WEBVIEWER_VERSION} "OrthancWebViewer" OrthancWebViewer.dll "Web viewer of medical images for Orthanc"
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
114 ERROR_VARIABLE Failure
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
115 OUTPUT_FILE ${AUTOGENERATED_DIR}/Version.rc
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
116 )
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
117
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
118 if (Failure)
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
119 message(FATAL_ERROR "Error while computing the version information: ${Failure}")
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
120 endif()
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
121
05ac3f595ba5 Inject version information into Windows binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 44
diff changeset
122 list(APPEND AUTOGENERATED_SOURCES ${AUTOGENERATED_DIR}/Version.rc)
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
123 endif()
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
124
57
26a230647a73 support of os x
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 51
diff changeset
125 if (APPLE)
26a230647a73 support of os x
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 51
diff changeset
126 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework CoreFoundation")
81
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 80
diff changeset
127 SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -framework CoreFoundation")
57
26a230647a73 support of os x
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 51
diff changeset
128 endif()
60
902dedf9882a removed unneccessary dependency on md5
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 57
diff changeset
129
902dedf9882a removed unneccessary dependency on md5
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 57
diff changeset
130 add_definitions(
902dedf9882a removed unneccessary dependency on md5
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 57
diff changeset
131 -DORTHANC_ENABLE_MD5=0
902dedf9882a removed unneccessary dependency on md5
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 57
diff changeset
132 -DORTHANC_ENABLE_BASE64=0
65
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 64
diff changeset
133 -DORTHANC_ENABLE_LOGGING=0
150
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 149
diff changeset
134 -DORTHANC_SANDBOXED=0
60
902dedf9882a removed unneccessary dependency on md5
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 57
diff changeset
135 )
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
136
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
137 set(CORE_SOURCES
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
138 ${BOOST_SOURCES}
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
139 ${SQLITE_SOURCES}
29
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
140 ${JSONCPP_SOURCES}
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
141
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
142 # Sources inherited from Orthanc core
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
143 ${CMAKE_SOURCE_DIR}/Orthanc/Core/ChunkedBuffer.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
144 ${CMAKE_SOURCE_DIR}/Orthanc/Core/Enumerations.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
145 ${CMAKE_SOURCE_DIR}/Orthanc/Core/FileStorage/FilesystemStorage.cpp
79
abdde1dfb3eb use sdk 0.9.4
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 77
diff changeset
146 ${CMAKE_SOURCE_DIR}/Orthanc/Core/Images/ImageAccessor.cpp
abdde1dfb3eb use sdk 0.9.4
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 77
diff changeset
147 ${CMAKE_SOURCE_DIR}/Orthanc/Core/Images/ImageBuffer.cpp
abdde1dfb3eb use sdk 0.9.4
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 77
diff changeset
148 ${CMAKE_SOURCE_DIR}/Orthanc/Core/Images/ImageProcessing.cpp
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
149 ${CMAKE_SOURCE_DIR}/Orthanc/Core/MultiThreading/SharedMessageQueue.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
150 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SQLite/Connection.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
151 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SQLite/FunctionContext.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
152 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SQLite/Statement.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
153 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SQLite/StatementId.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
154 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SQLite/StatementReference.cpp
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
155 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SQLite/Transaction.cpp
150
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 149
diff changeset
156 ${CMAKE_SOURCE_DIR}/Orthanc/Core/SystemToolbox.cpp
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
157 ${CMAKE_SOURCE_DIR}/Orthanc/Core/Toolbox.cpp
133
3251ec958a29 Option "RestrictTransferSyntaxes" saying which transfer syntaxes should be decoded with GDCM
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 122
diff changeset
158 ${CMAKE_SOURCE_DIR}/Orthanc/Core/DicomFormat/DicomMap.cpp
3251ec958a29 Option "RestrictTransferSyntaxes" saying which transfer syntaxes should be decoded with GDCM
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 122
diff changeset
159 ${CMAKE_SOURCE_DIR}/Orthanc/Core/DicomFormat/DicomTag.cpp
3251ec958a29 Option "RestrictTransferSyntaxes" saying which transfer syntaxes should be decoded with GDCM
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 122
diff changeset
160 ${CMAKE_SOURCE_DIR}/Orthanc/Core/DicomFormat/DicomValue.cpp
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
161 ${CMAKE_SOURCE_DIR}/Orthanc/Resources/ThirdParty/base64/base64.cpp
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
162
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
163 ${CMAKE_SOURCE_DIR}/Plugin/Cache/CacheManager.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
164 ${CMAKE_SOURCE_DIR}/Plugin/Cache/CacheScheduler.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
165 ${CMAKE_SOURCE_DIR}/Plugin/ViewerToolbox.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
166 ${CMAKE_SOURCE_DIR}/Plugin/ViewerPrefetchPolicy.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
167 ${CMAKE_SOURCE_DIR}/Plugin/SeriesInformationAdapter.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
168 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
169
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
170 add_library(OrthancWebViewer
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
171 SHARED
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
172 ${CORE_SOURCES}
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
173 ${AUTOGENERATED_SOURCES}
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
174 ${CMAKE_SOURCE_DIR}/Plugin/Plugin.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
175
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
176 # The following files depend on GDCM
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
177 ${CMAKE_SOURCE_DIR}/Plugin/DecodedImageAdapter.cpp
95
dbe7c97b6b4a replace built-in decoder
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 94
diff changeset
178 ${CMAKE_SOURCE_DIR}/Orthanc/Plugins/Samples/GdcmDecoder/GdcmImageDecoder.cpp
dbe7c97b6b4a replace built-in decoder
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 94
diff changeset
179 ${CMAKE_SOURCE_DIR}/Orthanc/Plugins/Samples/GdcmDecoder/GdcmDecoderCache.cpp
dbe7c97b6b4a replace built-in decoder
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 94
diff changeset
180 ${CMAKE_SOURCE_DIR}/Orthanc/Plugins/Samples/GdcmDecoder/OrthancImageWrapper.cpp
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
181 )
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
182
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
183
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
184 if (STATIC_BUILD OR NOT USE_SYSTEM_GDCM)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
185 add_dependencies(OrthancWebViewer GDCM)
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
186 endif()
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
187
26
a6492d20b2a8 modularization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
188 target_link_libraries(OrthancWebViewer ${GDCM_LIBRARIES})
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
189
8
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
190 message("Setting the version of the library to ${ORTHANC_WEBVIEWER_VERSION}")
12
379131283479 version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 11
diff changeset
191
379131283479 version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 11
diff changeset
192 add_definitions(-DORTHANC_WEBVIEWER_VERSION="${ORTHANC_WEBVIEWER_VERSION}")
379131283479 version
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 11
diff changeset
193
8
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
194 set_target_properties(OrthancWebViewer PROPERTIES
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
195 VERSION ${ORTHANC_WEBVIEWER_VERSION}
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
196 SOVERSION ${ORTHANC_WEBVIEWER_VERSION})
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
197
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
198 install(
8
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
199 TARGETS OrthancWebViewer
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
200 RUNTIME DESTINATION lib # Destination for Windows
9
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 8
diff changeset
201 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux
8
49fa9c774465 versioning
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 7
diff changeset
202 )
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
203
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
204 add_executable(UnitTests
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
205 ${CORE_SOURCES}
172
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 168
diff changeset
206 ${GOOGLE_TEST_SOURCES}
30
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 29
diff changeset
207 ${JSONCPP_SOURCES}
0
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
208 UnitTestsSources/UnitTestsMain.cpp
02f7a0400a91 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
209 )