annotate CMakeLists.txt @ 28:b7e32fe4973b

sync
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 07 Jul 2020 20:42:52 +0200
parents 065bc476bcdc
children a0af5a8182a8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 # Orthanc - A Lightweight, RESTful DICOM Store
19
b06103a50c95 upgrade to year 2020
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 16
diff changeset
2 # Copyright (C) 2018-2020 Osimis S.A., Belgium
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3 #
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 # This program is free software: you can redistribute it and/or
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 # modify it under the terms of the GNU Affero General Public License
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6 # as published by the Free Software Foundation, either version 3 of
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 # the License, or (at your option) any later version.
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8 #
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9 # This program is distributed in the hope that it will be useful, but
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 # Affero General Public License for more details.
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13 #
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14 # You should have received a copy of the GNU Affero General Public License
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
15 # along with this program. If not, see <http://www.gnu.org/licenses/>.
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
16
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
17
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
18 cmake_minimum_required(VERSION 2.8)
1
734066ca3b7d shorter name
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
19 project(OrthancTransfers)
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
20
16
2452e15d7746 back to mainline
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 15
diff changeset
21 set(ORTHANC_PLUGIN_VERSION "mainline")
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
22
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23 if (ORTHANC_PLUGIN_VERSION STREQUAL "mainline")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
24 set(ORTHANC_FRAMEWORK_VERSION "mainline")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
25 set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "hg")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
26 else()
13
df314d38a4e0 use Orthanc Framework 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 9
diff changeset
27 set(ORTHANC_FRAMEWORK_VERSION "1.5.6")
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28 set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "web")
14
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
29
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
30 # diff --new-file -urEb Orthanc-1.5.6.orig/ Orthanc-1.5.6 > orthanc-1.5.6.patch
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
31 set(ORTHANC_FRAMEWORK_PATCH "${CMAKE_SOURCE_DIR}/Resources/Patches/orthanc-1.5.6.patch")
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32 endif()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35 # Parameters of the build
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
36 set(ORTHANC_FRAMEWORK_SOURCE "${ORTHANC_FRAMEWORK_DEFAULT_SOURCE}" CACHE STRING "Source of the Orthanc source code (can be \"hg\", \"archive\", \"web\" or \"path\")")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
37 set(ORTHANC_FRAMEWORK_ARCHIVE "" CACHE STRING "Path to the Orthanc archive, if ORTHANC_FRAMEWORK_SOURCE is \"archive\"")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38 set(ORTHANC_FRAMEWORK_ROOT "" CACHE STRING "Path to the Orthanc source directory, if ORTHANC_FRAMEWORK_SOURCE is \"path\"")
23
ec8b0f8df766 removed option "framework" for ORTHANC_SDK_VERSION
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 22
diff changeset
39 set(ORTHANC_SDK_VERSION "1.4.2" CACHE STRING "Version of the Orthanc plugin SDK to use, if not using the system version (can be \"1.4.2\")")
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
41 # Advanced parameters to fine-tune linking against system libraries
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42 set(USE_SYSTEM_ORTHANC_SDK ON CACHE BOOL "Use the system version of the Orthanc plugin SDK")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
43
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
44
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
45 # Download and setup the Orthanc framework
24
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
46 include(${CMAKE_SOURCE_DIR}/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
47
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
48 if (ORTHANC_FRAMEWORK_SOURCE STREQUAL "system")
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
49 link_libraries(${ORTHANC_FRAMEWORK_LIBRARIES})
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
50
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
51 set(USE_SYSTEM_GOOGLE_TEST ON CACHE BOOL "Use the system version of Google Test")
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
52 set(USE_GOOGLE_TEST_DEBIAN_PACKAGE OFF CACHE BOOL "Use the sources of Google Test shipped with libgtest-dev (Debian only)")
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
53 mark_as_advanced(USE_GOOGLE_TEST_DEBIAN_PACKAGE)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
54 include(${CMAKE_SOURCE_DIR}/Resources/Orthanc/CMake/GoogleTestConfiguration.cmake)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
55
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
56 else()
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
57 include(${ORTHANC_FRAMEWORK_ROOT}/Resources/CMake/OrthancFrameworkParameters.cmake)
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58
24
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
59 set(ENABLE_LOCALE OFF) # Disable support for locales (notably in Boost)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
60 set(ENABLE_GOOGLE_TEST ON)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
61 set(ENABLE_MODULE_IMAGES OFF)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
62 set(ENABLE_MODULE_JOBS OFF)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
63 set(ENABLE_MODULE_DICOM OFF)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
64 set(ENABLE_ZLIB ON)
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
65
24
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
66 include(${ORTHANC_FRAMEWORK_ROOT}/Resources/CMake/OrthancFrameworkConfiguration.cmake)
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
67 include_directories(
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
68 ${ORTHANC_FRAMEWORK_ROOT}/Sources
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
69 )
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
70 endif()
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
71
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
72
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
73 include(${CMAKE_SOURCE_DIR}/Resources/Orthanc/Plugins/OrthancPluginsExports.cmake)
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75
14
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
76 # Possibly patch the Orthanc framework
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
77 if (DEFINED ORTHANC_FRAMEWORK_PATCH AND
22
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
78 NOT EXISTS "${ORTHANC_FRAMEWORK_ROOT}/patched")
14
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
79 execute_process(
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
80 COMMAND ${PATCH_EXECUTABLE} -p0 -N -i ${ORTHANC_FRAMEWORK_PATCH}
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
81 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
82 RESULT_VARIABLE Failure
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
83 )
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
84
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
85 if (Failure)
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
86 message(FATAL_ERROR "Error while patching a file")
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
87 endif()
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
88 endif()
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
89
e1b24c9a9bd8 patch Orthanc 1.5.6
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 13
diff changeset
90
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91 # Check that the Orthanc SDK headers are available
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 if (STATIC_BUILD OR NOT USE_SYSTEM_ORTHANC_SDK)
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
93 if (ORTHANC_SDK_VERSION STREQUAL "1.4.2")
24
065bc476bcdc use of OrthancPluginsExports.cmake, link against system-wide orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 23
diff changeset
94 include_directories(${CMAKE_SOURCE_DIR}/Resources/Orthanc/Sdk-1.4.2)
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
95 else()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
96 message(FATAL_ERROR "Unsupported version of the Orthanc plugin SDK: ${ORTHANC_SDK_VERSION}")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
97 endif()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
98 else ()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99 CHECK_INCLUDE_FILE_CXX(orthanc/OrthancCDatabasePlugin.h HAVE_ORTHANC_H)
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
100 if (NOT HAVE_ORTHANC_H)
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
101 message(FATAL_ERROR "Please install the headers of the Orthanc plugins SDK")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
102 endif()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
103 endif()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
104
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
105
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
106
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
107 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
108 execute_process(
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
109 COMMAND
22
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
110 ${PYTHON_EXECUTABLE} ${ORTHANC_FRAMEWORK_ROOT}/Resources/WindowsResources.py
1
734066ca3b7d shorter name
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
111 ${ORTHANC_PLUGIN_VERSION} "TransfersAccelerator index plugin" OrthancTransfers.dll
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
112 "TransfersAccelerator as a database back-end to Orthanc (index)"
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
113 ERROR_VARIABLE Failure
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
114 OUTPUT_FILE ${AUTOGENERATED_DIR}/Version.rc
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
115 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
116
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
117 if (Failure)
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
118 message(FATAL_ERROR "Error while computing the version information: ${Failure}")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
119 endif()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
120
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
121 set(PLUGIN_RESOURCES ${AUTOGENERATED_DIR}/Version.rc)
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
122 endif()
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
123
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
124
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
125
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
126 EmbedResources(
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
127 ORTHANC_EXPLORER ${CMAKE_SOURCE_DIR}/Resources/OrthancExplorer.js
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
128 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
129
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
130 set(FRAMEWORK_SOURCES
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
131 Framework/DicomInstanceInfo.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
132 Framework/DownloadArea.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
133 Framework/HttpQueries/DetectTransferPlugin.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
134 Framework/HttpQueries/HttpQueriesQueue.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
135 Framework/HttpQueries/HttpQueriesRunner.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
136 Framework/OrthancInstancesCache.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
137 Framework/PullMode/BucketPullQuery.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
138 Framework/PullMode/PullJob.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
139 Framework/PushMode/ActivePushTransactions.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
140 Framework/PushMode/BucketPushQuery.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
141 Framework/PushMode/PushJob.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
142 Framework/SourceDicomInstance.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
143 Framework/StatefulOrthancJob.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
144 Framework/TransferBucket.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
145 Framework/TransferQuery.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
146 Framework/TransferScheduler.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
147 Framework/TransferToolbox.cpp
22
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
148 Resources/Orthanc/Plugins/OrthancPluginCppWrapper.cpp
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
149 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
150
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
151
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
152
1
734066ca3b7d shorter name
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
153 add_library(OrthancTransfers SHARED
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
154 Plugin/Plugin.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
155 Plugin/PluginContext.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
156
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
157 ${FRAMEWORK_SOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
158 ${PLUGIN_RESOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
159 ${ORTHANC_CORE_SOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
160 ${AUTOGENERATED_SOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
161 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
162
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
163 message("Setting the version of the library to ${ORTHANC_PLUGIN_VERSION}")
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
164
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
165 add_definitions(
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
166 -DORTHANC_PLUGIN_VERSION="${ORTHANC_PLUGIN_VERSION}"
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
167 -DHAS_ORTHANC_EXCEPTION=1
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
168 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
169
1
734066ca3b7d shorter name
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
170 set_target_properties(OrthancTransfers PROPERTIES
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
171 VERSION ${ORTHANC_PLUGIN_VERSION}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
172 SOVERSION ${ORTHANC_PLUGIN_VERSION}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
173 COMPILE_FLAGS -DORTHANC_ENABLE_LOGGING_PLUGIN=1
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
174 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
175
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
176 install(
1
734066ca3b7d shorter name
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 0
diff changeset
177 TARGETS OrthancTransfers
0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
178 RUNTIME DESTINATION lib # Destination for Windows
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
179 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
180 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
181
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
182 add_executable(UnitTests
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
183 UnitTests/UnitTestsMain.cpp
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
184
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
185 ${FRAMEWORK_SOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
186 ${ORTHANC_CORE_SOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
187 ${GOOGLE_TEST_SOURCES}
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
188 )
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
189
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
190 target_link_libraries(UnitTests ${GOOGLE_TEST_LIBRARIES})
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
191 set_target_properties(UnitTests PROPERTIES
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
192 COMPILE_FLAGS -DORTHANC_ENABLE_LOGGING_PLUGIN=0
95226b754d9e initial release
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
193 )