Mercurial > hg > orthanc
annotate OrthancServer/CMakeLists.txt @ 5569:738f80622e91 find-refactoring
merge default -> find-refactoring
author | Alain Mazy <am@orthanc.team> |
---|---|
date | Thu, 25 Apr 2024 17:07:33 +0200 |
parents | 12d8a1a266e9 0b18690c1935 |
children | 9e74e761b108 |
rev | line source |
---|---|
4124
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
1 # Orthanc - A Lightweight, RESTful DICOM Store |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
2 # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
3 # Department, University Hospital of Liege, Belgium |
5485
48b8dae6dc77
upgrade to year 2024
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5357
diff
changeset
|
4 # Copyright (C) 2017-2024 Osimis S.A., Belgium |
48b8dae6dc77
upgrade to year 2024
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5357
diff
changeset
|
5 # Copyright (C) 2021-2024 Sebastien Jodogne, ICTEAM UCLouvain, Belgium |
4124
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
6 # |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
7 # This program is free software: you can redistribute it and/or |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
8 # modify it under the terms of the GNU General Public License as |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
9 # published by the Free Software Foundation, either version 3 of the |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
10 # License, or (at your option) any later version. |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
11 # |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
12 # This program is distributed in the hope that it will be useful, but |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
13 # WITHOUT ANY WARRANTY; without even the implied warranty of |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
15 # General Public License for more details. |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
16 # |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
17 # You should have received a copy of the GNU General Public License |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
18 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
19 |
28944db5318b
adding missing license headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4121
diff
changeset
|
20 |
2691 | 21 cmake_minimum_required(VERSION 2.8) |
4170
1657c8700974
better fix for CMP0058
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4168
diff
changeset
|
22 cmake_policy(SET CMP0058 NEW) |
2691 | 23 |
24 project(Orthanc) | |
25 | |
26 | |
27 ##################################################################### | |
28 ## Generic parameters of the Orthanc framework | |
29 ##################################################################### | |
30 | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
31 include(${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/CMake/OrthancFrameworkParameters.cmake) |
2691 | 32 |
33 # Enable all the optional components of the Orthanc framework | |
34 set(ENABLE_CRYPTO_OPTIONS ON) | |
35 set(ENABLE_DCMTK ON) | |
36 set(ENABLE_DCMTK_NETWORKING ON) | |
3893 | 37 set(ENABLE_DCMTK_TRANSCODING ON) |
2691 | 38 set(ENABLE_GOOGLE_TEST ON) |
39 set(ENABLE_JPEG ON) | |
40 set(ENABLE_LOCALE ON) | |
41 set(ENABLE_LUA ON) | |
3723
cc6d4edfe8fe
fix pkcs11 compilation
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3633
diff
changeset
|
42 set(ENABLE_OPENSSL_ENGINES ON) # OpenSSL engines are necessary for PKCS11 |
2691 | 43 set(ENABLE_PNG ON) |
44 set(ENABLE_PUGIXML ON) | |
45 set(ENABLE_SQLITE ON) | |
46 set(ENABLE_WEB_CLIENT ON) | |
47 set(ENABLE_WEB_SERVER ON) | |
48 set(ENABLE_ZLIB ON) | |
49 | |
50 | |
51 ##################################################################### | |
52 ## CMake parameters tunable at the command line to configure the | |
53 ## plugins, the companion tools, and the unit tests | |
54 ##################################################################### | |
55 | |
56 # Parameters of the build | |
4030
100fbe970762
DANGEROUS commit: removing HAS_EMBEDDED_RESOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4015
diff
changeset
|
57 set(STANDALONE_BUILD ON CACHE BOOL "Standalone build (all the resources are embedded, necessary for releases)") |
2691 | 58 SET(BUILD_MODALITY_WORKLISTS ON CACHE BOOL "Whether to build the sample plugin to serve modality worklists") |
59 SET(BUILD_RECOVER_COMPRESSED_FILE ON CACHE BOOL "Whether to build the companion tool to recover files compressed using Orthanc") | |
60 SET(BUILD_SERVE_FOLDERS ON CACHE BOOL "Whether to build the ServeFolders plugin") | |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
61 SET(BUILD_CONNECTIVITY_CHECKS ON CACHE BOOL "Whether to build the ConnectivityChecks plugin") |
4979
f316413027fd
renamed DbOptizer into Housekeeper + add Scheduler & triggers
Alain Mazy <am@osimis.io>
parents:
4971
diff
changeset
|
62 SET(BUILD_HOUSEKEEPER ON CACHE BOOL "Whether to build the Housekeeper plugin") |
5024
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
63 SET(BUILD_DELAYED_DELETION ON CACHE BOOL "Whether to build the DelayedDeletion plugin") |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
64 SET(BUILD_MULTITENANT_DICOM ON CACHE BOOL "Whether to build the MultitenantDicom plugin") |
2691 | 65 SET(ENABLE_PLUGINS ON CACHE BOOL "Enable plugins") |
66 SET(UNIT_TESTS_WITH_HTTP_CONNEXIONS ON CACHE BOOL "Allow unit tests to make HTTP requests") | |
67 | |
68 | |
69 ##################################################################### | |
70 ## Configuration of the Orthanc framework | |
71 ##################################################################### | |
72 | |
5193
1a878922404b
removed unused IDatabaseWrapper::IsExistingResource()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5189
diff
changeset
|
73 if (ENABLE_PLUGINS) |
1a878922404b
removed unused IDatabaseWrapper::IsExistingResource()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5189
diff
changeset
|
74 set(ENABLE_PROTOBUF ON) |
1a878922404b
removed unused IDatabaseWrapper::IsExistingResource()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5189
diff
changeset
|
75 set(ENABLE_PROTOBUF_COMPILER ON) |
1a878922404b
removed unused IDatabaseWrapper::IsExistingResource()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5189
diff
changeset
|
76 endif() |
1a878922404b
removed unused IDatabaseWrapper::IsExistingResource()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5189
diff
changeset
|
77 |
5262
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
78 include(${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/CMake/VisualStudioPrecompiledHeaders.cmake) |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
79 include(${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/CMake/OrthancFrameworkConfiguration.cmake) |
2691 | 80 |
4099
bf1a17f12306
moving version scripts from OrthancFramework to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4096
diff
changeset
|
81 # To export the proper symbols in the sample plugins |
bf1a17f12306
moving version scripts from OrthancFramework to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4096
diff
changeset
|
82 include(${CMAKE_SOURCE_DIR}/Plugins/Samples/Common/OrthancPluginsExports.cmake) |
bf1a17f12306
moving version scripts from OrthancFramework to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4096
diff
changeset
|
83 |
2691 | 84 |
85 ##################################################################### | |
86 ## List of source files | |
87 ##################################################################### | |
88 | |
89 set(ORTHANC_SERVER_SOURCES | |
5516 | 90 ${CMAKE_SOURCE_DIR}/Sources/Database/BaseDatabaseWrapper.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
91 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/DatabaseLookup.cpp |
5554
12d8a1a266e9
introduction of FindRequest and FindResponse
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5545
diff
changeset
|
92 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/GenericFind.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
93 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/ICreateInstance.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
94 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/IGetChildrenMetadata.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
95 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/ILookupResourceAndParent.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
96 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/ILookupResources.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
97 ${CMAKE_SOURCE_DIR}/Sources/Database/Compatibility/SetOfResources.cpp |
5554
12d8a1a266e9
introduction of FindRequest and FindResponse
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5545
diff
changeset
|
98 ${CMAKE_SOURCE_DIR}/Sources/Database/FindRequest.cpp |
12d8a1a266e9
introduction of FindRequest and FindResponse
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5545
diff
changeset
|
99 ${CMAKE_SOURCE_DIR}/Sources/Database/FindResponse.cpp |
12d8a1a266e9
introduction of FindRequest and FindResponse
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5545
diff
changeset
|
100 ${CMAKE_SOURCE_DIR}/Sources/Database/OrthancIdentifiers.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
101 ${CMAKE_SOURCE_DIR}/Sources/Database/ResourcesContent.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
102 ${CMAKE_SOURCE_DIR}/Sources/Database/SQLiteDatabaseWrapper.cpp |
4586
1d96fe7e054e
taking StatelessDatabaseOperations out of ServerIndex
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4520
diff
changeset
|
103 ${CMAKE_SOURCE_DIR}/Sources/Database/StatelessDatabaseOperations.cpp |
4591
ff8170d17d90
moving all accesses to databases from IDatabaseWrapper to ITransaction
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4586
diff
changeset
|
104 ${CMAKE_SOURCE_DIR}/Sources/Database/VoidDatabaseListener.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
105 ${CMAKE_SOURCE_DIR}/Sources/DicomInstanceOrigin.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
106 ${CMAKE_SOURCE_DIR}/Sources/DicomInstanceToStore.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
107 ${CMAKE_SOURCE_DIR}/Sources/EmbeddedResourceHttpHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
108 ${CMAKE_SOURCE_DIR}/Sources/ExportedResource.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
109 ${CMAKE_SOURCE_DIR}/Sources/LuaScripting.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
110 ${CMAKE_SOURCE_DIR}/Sources/OrthancConfiguration.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
111 ${CMAKE_SOURCE_DIR}/Sources/OrthancFindRequestHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
112 ${CMAKE_SOURCE_DIR}/Sources/OrthancGetRequestHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
113 ${CMAKE_SOURCE_DIR}/Sources/OrthancHttpHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
114 ${CMAKE_SOURCE_DIR}/Sources/OrthancInitialization.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
115 ${CMAKE_SOURCE_DIR}/Sources/OrthancMoveRequestHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
116 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestAnonymizeModify.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
117 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestApi.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
118 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestArchive.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
119 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestChanges.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
120 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestModalities.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
121 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestResources.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
122 ${CMAKE_SOURCE_DIR}/Sources/OrthancRestApi/OrthancRestSystem.cpp |
4240 | 123 ${CMAKE_SOURCE_DIR}/Sources/OrthancWebDav.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
124 ${CMAKE_SOURCE_DIR}/Sources/QueryRetrieveHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
125 ${CMAKE_SOURCE_DIR}/Sources/Search/DatabaseConstraint.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
126 ${CMAKE_SOURCE_DIR}/Sources/Search/DatabaseLookup.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
127 ${CMAKE_SOURCE_DIR}/Sources/Search/DicomTagConstraint.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
128 ${CMAKE_SOURCE_DIR}/Sources/Search/HierarchicalMatcher.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
129 ${CMAKE_SOURCE_DIR}/Sources/Search/ISqlLookupFormatter.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
130 ${CMAKE_SOURCE_DIR}/Sources/ServerContext.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
131 ${CMAKE_SOURCE_DIR}/Sources/ServerEnumerations.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
132 ${CMAKE_SOURCE_DIR}/Sources/ServerIndex.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
133 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/ArchiveJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
134 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/CleaningInstancesJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
135 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/DicomModalityStoreJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
136 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/DicomMoveScuJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
137 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/LuaJobManager.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
138 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/MergeStudyJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
139 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/Operations/DeleteResourceOperation.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
140 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/Operations/DicomInstanceOperationValue.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
141 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/Operations/ModifyInstanceOperation.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
142 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/Operations/StorePeerOperation.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
143 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/Operations/StoreScuOperation.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
144 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/Operations/SystemCallOperation.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
145 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/OrthancJobUnserializer.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
146 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/OrthancPeerStoreJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
147 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/ResourceModificationJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
148 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/SplitStudyJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
149 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/StorageCommitmentScpJob.cpp |
5130
f2dcdbe05884
ResourceModification jobs can now use multiple threads
Alain Mazy <am@osimis.io>
parents:
5098
diff
changeset
|
150 ${CMAKE_SOURCE_DIR}/Sources/ServerJobs/ThreadedSetOfInstancesJob.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
151 ${CMAKE_SOURCE_DIR}/Sources/ServerToolbox.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
152 ${CMAKE_SOURCE_DIR}/Sources/SliceOrdering.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
153 ${CMAKE_SOURCE_DIR}/Sources/StorageCommitmentReports.cpp |
2691 | 154 ) |
155 | |
156 | |
4045 | 157 set(ORTHANC_FRAMEWORK_UNIT_TESTS |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
158 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/DicomMapTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
159 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/FileStorageTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
160 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/FrameworkTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
161 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/FromDcmtkTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
162 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/ImageProcessingTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
163 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/ImageTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
164 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/JobsTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
165 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/JpegLosslessTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
166 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/LoggingTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
167 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/LuaTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
168 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/MemoryCacheTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
169 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/RestApiTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
170 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/SQLiteChromiumTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
171 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/SQLiteTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
172 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/StreamTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
173 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/ToolboxTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
174 ${CMAKE_SOURCE_DIR}/../OrthancFramework/UnitTestsSources/ZipTests.cpp |
4045 | 175 ) |
176 | |
177 set(ORTHANC_SERVER_UNIT_TESTS | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
178 ${CMAKE_SOURCE_DIR}/UnitTestsSources/DatabaseLookupTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
179 ${CMAKE_SOURCE_DIR}/UnitTestsSources/LuaServerTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
180 ${CMAKE_SOURCE_DIR}/UnitTestsSources/PluginsTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
181 ${CMAKE_SOURCE_DIR}/UnitTestsSources/ServerIndexTests.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
182 ${CMAKE_SOURCE_DIR}/UnitTestsSources/ServerJobsTests.cpp |
4520
f5cb0c0ffbed
added unit test OrthancFramework.SizeOf to dump sizeof all the public classes in the Orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4437
diff
changeset
|
183 ${CMAKE_SOURCE_DIR}/UnitTestsSources/SizeOfTests.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
184 ${CMAKE_SOURCE_DIR}/UnitTestsSources/UnitTestsMain.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
185 ${CMAKE_SOURCE_DIR}/UnitTestsSources/VersionsTests.cpp |
2691 | 186 ) |
187 | |
188 | |
189 if (ENABLE_PLUGINS) | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
190 include_directories(${CMAKE_SOURCE_DIR}/Plugins/Include) |
3074
495c5edce708
new extension for database plugin SDK: lookupResources
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3071
diff
changeset
|
191 |
2691 | 192 list(APPEND ORTHANC_SERVER_SOURCES |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
193 ${CMAKE_SOURCE_DIR}/Plugins/Engine/OrthancPluginDatabase.cpp |
4595
cc64385593ef
added OrthancPluginRegisterDatabaseBackendV3() to plugin sdk
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4591
diff
changeset
|
194 ${CMAKE_SOURCE_DIR}/Plugins/Engine/OrthancPluginDatabaseV3.cpp |
5207
e7529e6241d2
first successful protobuf communication
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5193
diff
changeset
|
195 ${CMAKE_SOURCE_DIR}/Plugins/Engine/OrthancPluginDatabaseV4.cpp |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
196 ${CMAKE_SOURCE_DIR}/Plugins/Engine/OrthancPlugins.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
197 ${CMAKE_SOURCE_DIR}/Plugins/Engine/PluginsEnumerations.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
198 ${CMAKE_SOURCE_DIR}/Plugins/Engine/PluginsErrorDictionary.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
199 ${CMAKE_SOURCE_DIR}/Plugins/Engine/PluginsJob.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
200 ${CMAKE_SOURCE_DIR}/Plugins/Engine/PluginsManager.cpp |
2691 | 201 ) |
202 | |
4045 | 203 list(APPEND ORTHANC_SERVER_UNIT_TESTS |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
204 ${CMAKE_SOURCE_DIR}/UnitTestsSources/PluginsTests.cpp |
2691 | 205 ) |
206 endif() | |
207 | |
208 | |
209 if (CMAKE_COMPILER_IS_GNUCXX | |
210 AND NOT CMAKE_CROSSCOMPILING | |
3275 | 211 AND DCMTK_STATIC_VERSION STREQUAL "3.6.0") |
2691 | 212 # Add the "-pedantic" flag only on the Orthanc sources, and only if |
213 # cross-compiling DCMTK 3.6.0 | |
214 set(ORTHANC_ALL_SOURCES | |
215 ${ORTHANC_CORE_SOURCES_INTERNAL} | |
216 ${ORTHANC_DICOM_SOURCES_INTERNAL} | |
217 ${ORTHANC_SERVER_SOURCES} | |
4045 | 218 ${ORTHANC_FRAMEWORK_UNIT_TESTS} |
219 ${ORTHANC_SERVER_UNIT_TESTS} | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
220 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ModalityWorklists/Plugin.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
221 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ServeFolders/Plugin.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
222 ${CMAKE_SOURCE_DIR}/Sources/EmbeddedResourceHttpHandler.cpp |
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
223 ${CMAKE_SOURCE_DIR}/Sources/main.cpp |
2691 | 224 ) |
225 | |
226 set_source_files_properties(${ORTHANC_ALL_SOURCES} | |
227 PROPERTIES COMPILE_FLAGS -pedantic | |
228 ) | |
229 endif() | |
230 | |
231 | |
232 ##################################################################### | |
233 ## Autogeneration of files | |
234 ##################################################################### | |
235 | |
236 set(ORTHANC_EMBEDDED_FILES | |
5221
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
237 CONFIGURATION_SAMPLE ${CMAKE_SOURCE_DIR}/Resources/Configuration.json |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
238 DICOM_CONFORMANCE_STATEMENT ${CMAKE_SOURCE_DIR}/Resources/DicomConformanceStatement.txt |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
239 FONT_UBUNTU_MONO_BOLD_16 ${CMAKE_SOURCE_DIR}/Resources/Fonts/UbuntuMonoBold-16.json |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
240 LUA_TOOLBOX ${CMAKE_SOURCE_DIR}/Resources/Toolbox.lua |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
241 PREPARE_DATABASE ${CMAKE_SOURCE_DIR}/Sources/Database/PrepareDatabase.sql |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
242 UPGRADE_DATABASE_3_TO_4 ${CMAKE_SOURCE_DIR}/Sources/Database/Upgrade3To4.sql |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
243 UPGRADE_DATABASE_4_TO_5 ${CMAKE_SOURCE_DIR}/Sources/Database/Upgrade4To5.sql |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
244 INSTALL_TRACK_ATTACHMENTS_SIZE ${CMAKE_SOURCE_DIR}/Sources/Database/InstallTrackAttachmentsSize.sql |
d0f7c742d397
started implementation of labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
245 INSTALL_LABELS_TABLE ${CMAKE_SOURCE_DIR}/Sources/Database/InstallLabelsTable.sql |
2691 | 246 ) |
247 | |
248 if (STANDALONE_BUILD) | |
249 # We embed all the resources in the binaries for standalone builds | |
4030
100fbe970762
DANGEROUS commit: removing HAS_EMBEDDED_RESOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4015
diff
changeset
|
250 add_definitions( |
100fbe970762
DANGEROUS commit: removing HAS_EMBEDDED_RESOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4015
diff
changeset
|
251 -DORTHANC_STANDALONE=1 |
100fbe970762
DANGEROUS commit: removing HAS_EMBEDDED_RESOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4015
diff
changeset
|
252 ) |
4031
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
253 |
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
254 list(APPEND ORTHANC_EMBEDDED_FILES |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
255 ORTHANC_EXPLORER ${CMAKE_SOURCE_DIR}/OrthancExplorer |
2691 | 256 ) |
257 else() | |
258 add_definitions( | |
4030
100fbe970762
DANGEROUS commit: removing HAS_EMBEDDED_RESOURCES
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4015
diff
changeset
|
259 -DORTHANC_PATH=\"${CMAKE_SOURCE_DIR}\" |
2691 | 260 -DORTHANC_STANDALONE=0 |
261 ) | |
262 endif() | |
263 | |
4031
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
264 EmbedResources( |
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
265 --namespace=Orthanc.ServerResources |
4032
058b5ade8acd
renaming embedded resources
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4031
diff
changeset
|
266 --target=OrthancServerResources |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
267 --framework-path=${CMAKE_SOURCE_DIR}/../OrthancFramework/Sources |
4031
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
268 ${ORTHANC_EMBEDDED_FILES} |
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
269 ) |
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
270 |
e3b3af80732d
ServerResources, and moving EmbeddedResourceHttpHandler from Core to OrthancServer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4030
diff
changeset
|
271 |
2691 | 272 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
273 execute_process( | |
274 COMMAND | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
275 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
2691 | 276 ${ORTHANC_VERSION} Orthanc Orthanc.exe "Lightweight, RESTful DICOM server for medical imaging" |
277 ERROR_VARIABLE Failure | |
278 OUTPUT_FILE ${AUTOGENERATED_DIR}/Orthanc.rc | |
279 ) | |
280 | |
281 if (Failure) | |
282 message(FATAL_ERROR "Error while computing the version information: ${Failure}") | |
283 endif() | |
284 | |
285 list(APPEND ORTHANC_RESOURCES ${AUTOGENERATED_DIR}/Orthanc.rc) | |
286 endif() | |
287 | |
288 | |
289 | |
290 ##################################################################### | |
291 ## Configuration of the C/C++ macros | |
292 ##################################################################### | |
293 | |
4366
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
294 check_symbol_exists(mallopt "malloc.h" HAVE_MALLOPT) |
5159
f5907aecbaed
conditional usage of malloc_trim
Alain Mazy <am@osimis.io>
parents:
5130
diff
changeset
|
295 check_symbol_exists(malloc_trim "malloc.h" HAVE_MALLOC_TRIM) |
4366
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
296 |
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
297 if (HAVE_MALLOPT) |
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
298 add_definitions(-DHAVE_MALLOPT=1) |
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
299 else() |
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
300 add_definitions(-DHAVE_MALLOPT=0) |
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
301 endif() |
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
302 |
5159
f5907aecbaed
conditional usage of malloc_trim
Alain Mazy <am@osimis.io>
parents:
5130
diff
changeset
|
303 if (HAVE_MALLOC_TRIM) |
f5907aecbaed
conditional usage of malloc_trim
Alain Mazy <am@osimis.io>
parents:
5130
diff
changeset
|
304 add_definitions(-DHAVE_MALLOC_TRIM=1) |
f5907aecbaed
conditional usage of malloc_trim
Alain Mazy <am@osimis.io>
parents:
5130
diff
changeset
|
305 else() |
f5907aecbaed
conditional usage of malloc_trim
Alain Mazy <am@osimis.io>
parents:
5130
diff
changeset
|
306 add_definitions(-DHAVE_MALLOC_TRIM=0) |
f5907aecbaed
conditional usage of malloc_trim
Alain Mazy <am@osimis.io>
parents:
5130
diff
changeset
|
307 endif() |
4366
6a39ca7083b9
New config option "MallocArenaMax" to control memory usage on GNU/Linux
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4240
diff
changeset
|
308 |
4063
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
309 if (STATIC_BUILD) |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
310 add_definitions(-DORTHANC_STATIC=1) |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
311 else() |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
312 add_definitions(-DORTHANC_STATIC=0) |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
313 endif() |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
314 |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4060
diff
changeset
|
315 |
2691 | 316 if (ENABLE_PLUGINS) |
317 add_definitions(-DORTHANC_ENABLE_PLUGINS=1) | |
318 else() | |
319 add_definitions(-DORTHANC_ENABLE_PLUGINS=0) | |
320 endif() | |
321 | |
322 | |
323 if (UNIT_TESTS_WITH_HTTP_CONNEXIONS) | |
324 add_definitions(-DUNIT_TESTS_WITH_HTTP_CONNEXIONS=1) | |
325 else() | |
326 add_definitions(-DUNIT_TESTS_WITH_HTTP_CONNEXIONS=0) | |
327 endif() | |
328 | |
329 | |
330 add_definitions( | |
331 -DORTHANC_BUILD_UNIT_TESTS=1 | |
4096
d633e5bb7ba3
reusing of ISqlLookupFormatter and DatabaseConstraint in orthanc-databases project
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4091
diff
changeset
|
332 -DORTHANC_BUILDING_SERVER_LIBRARY=1 |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
333 |
2691 | 334 # Macros for the plugins |
335 -DHAS_ORTHANC_EXCEPTION=0 | |
336 ) | |
337 | |
338 | |
5262
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
339 # Setup precompiled headers for Microsoft Visual Studio |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
340 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
341 # WARNING: There must be NO MORE "add_definitions()", "include()" or |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
342 # "include_directories()" below, otherwise the generated precompiled |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
343 # headers might get broken! |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
344 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
345 if (MSVC) |
5267 | 346 add_definitions(-DORTHANC_USE_PRECOMPILED_HEADERS=1) |
347 | |
5262
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
348 set(TMP |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
349 ${ORTHANC_CORE_SOURCES_INTERNAL} |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
350 ${ORTHANC_DICOM_SOURCES_INTERNAL} |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
351 ) |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
352 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
353 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
354 "PrecompiledHeaders.h" "${CMAKE_SOURCE_DIR}/../OrthancFramework/Sources/PrecompiledHeaders.cpp" |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
355 TMP ORTHANC_CORE_PCH) |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
356 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
357 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
358 "PrecompiledHeadersServer.h" "${CMAKE_SOURCE_DIR}/Sources/PrecompiledHeadersServer.cpp" |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
359 ORTHANC_SERVER_SOURCES ORTHANC_SERVER_PCH) |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
360 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
361 ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS( |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
362 "PrecompiledHeadersUnitTests.h" "${CMAKE_SOURCE_DIR}/UnitTestsSources/PrecompiledHeadersUnitTests.cpp" |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
363 ORTHANC_SERVER_UNIT_TESTS ORTHANC_UNIT_TESTS_PCH) |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
364 endif() |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
365 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
366 |
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
367 |
2691 | 368 ##################################################################### |
369 ## Build the core of Orthanc | |
370 ##################################################################### | |
371 | |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
372 add_custom_target(AutogeneratedTarget |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
373 DEPENDS |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
374 ${AUTOGENERATED_SOURCES} |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
375 ) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
376 |
2691 | 377 # "CoreLibrary" contains all the third-party dependencies and the |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
378 # content of the "OrthancFramework" folder |
2691 | 379 add_library(CoreLibrary |
380 STATIC | |
5262
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
381 ${ORTHANC_CORE_PCH} |
2691 | 382 ${ORTHANC_CORE_SOURCES} |
383 ${ORTHANC_DICOM_SOURCES} | |
384 ${AUTOGENERATED_SOURCES} | |
3270 | 385 ) |
386 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
387 DefineSourceBasenameForTarget(CoreLibrary) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
388 |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
389 add_dependencies(CoreLibrary AutogeneratedTarget) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
390 |
3270 | 391 if (LIBICU_LIBRARIES) |
392 target_link_libraries(CoreLibrary ${LIBICU_LIBRARIES}) | |
393 endif() | |
2691 | 394 |
395 | |
396 ##################################################################### | |
397 ## Build the Orthanc server | |
398 ##################################################################### | |
399 | |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
400 if (ENABLE_PLUGINS) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
401 add_custom_command( |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
402 COMMAND |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
403 ${PROTOC_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Plugins/Include/orthanc/OrthancDatabasePlugin.proto --cpp_out=${AUTOGENERATED_DIR} -I${CMAKE_SOURCE_DIR}/Plugins/Include/orthanc |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
404 COMMAND |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
405 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Resources/PreventProtobufDirectoryLeaks.py ${AUTOGENERATED_DIR}/OrthancDatabasePlugin.pb.cc |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
406 DEPENDS |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
407 ProtobufCompiler |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
408 ${CMAKE_SOURCE_DIR}/Resources/PreventProtobufDirectoryLeaks.py |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
409 ${CMAKE_SOURCE_DIR}/Plugins/Include/orthanc/OrthancDatabasePlugin.proto |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
410 OUTPUT |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
411 ${AUTOGENERATED_DIR}/OrthancDatabasePlugin.pb.cc |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
412 ${AUTOGENERATED_DIR}/OrthancDatabasePlugin.pb.h |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
413 ) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
414 |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
415 add_custom_target(OrthancDatabaseProtobuf |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
416 DEPENDS |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
417 ${AUTOGENERATED_DIR}/OrthancDatabasePlugin.pb.h |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
418 ) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
419 |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
420 list(APPEND ORTHANC_SERVER_SOURCES |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
421 ${AUTOGENERATED_DIR}/OrthancDatabasePlugin.pb.cc |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
422 ) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
423 else() |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
424 add_custom_target(OrthancDatabaseProtobuf) |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
425 endif() |
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
426 |
2691 | 427 add_library(ServerLibrary |
428 STATIC | |
5262
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
429 ${ORTHANC_SERVER_PCH} |
2691 | 430 ${ORTHANC_SERVER_SOURCES} |
431 ) | |
432 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
433 DefineSourceBasenameForTarget(ServerLibrary) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
434 |
2691 | 435 # Ensure autogenerated code is built before building ServerLibrary |
5188
4c6f0211caaf
compiling the protobuf compiler
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5187
diff
changeset
|
436 add_dependencies(ServerLibrary CoreLibrary OrthancDatabaseProtobuf) |
2691 | 437 |
438 add_executable(Orthanc | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
439 ${CMAKE_SOURCE_DIR}/Sources/main.cpp |
2691 | 440 ${ORTHANC_RESOURCES} |
441 ) | |
442 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
443 DefineSourceBasenameForTarget(Orthanc) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
444 |
2691 | 445 target_link_libraries(Orthanc ServerLibrary CoreLibrary ${DCMTK_LIBRARIES}) |
446 | |
4761
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
447 if ("${CMAKE_SYSTEM_VERSION}" STREQUAL "LinuxStandardBase") |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
448 # The link flag below hides all the global functions so that a Linux |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
449 # Standard Base (LSB) build of Orthanc can load plugins that are not |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
450 # built using LSB (new in Orthanc 1.9.7) |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
451 set_property( |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
452 TARGET Orthanc |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
453 PROPERTY LINK_FLAGS "-Wl,--version-script=${CMAKE_SOURCE_DIR}/Resources/VersionScriptOrthanc.map" |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
454 ) |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
455 endif() |
31e12d2ce275
Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4595
diff
changeset
|
456 |
2691 | 457 install( |
458 TARGETS Orthanc | |
459 RUNTIME DESTINATION sbin | |
460 ) | |
461 | |
462 | |
463 ##################################################################### | |
464 ## Build the unit tests | |
465 ##################################################################### | |
466 | |
467 add_executable(UnitTests | |
468 ${GOOGLE_TEST_SOURCES} | |
5262
bf304ee8dd80
revert precompiled headers, as they really help
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5260
diff
changeset
|
469 ${ORTHANC_UNIT_TESTS_PCH} |
4045 | 470 ${ORTHANC_FRAMEWORK_UNIT_TESTS} |
471 ${ORTHANC_SERVER_UNIT_TESTS} | |
3326
b21d4cc8e5d1
speed up base64 decoding + added tests
Alain Mazy <alain@mazy.be>
parents:
3295
diff
changeset
|
472 ${BOOST_EXTENDED_SOURCES} |
2691 | 473 ) |
474 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
475 DefineSourceBasenameForTarget(UnitTests) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
476 |
2691 | 477 target_link_libraries(UnitTests |
478 ServerLibrary | |
479 CoreLibrary | |
480 ${DCMTK_LIBRARIES} | |
481 ${GOOGLE_TEST_LIBRARIES} | |
482 ) | |
483 | |
484 | |
485 ##################################################################### | |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
486 ## Static library to share third-party libraries between the plugins |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
487 ##################################################################### |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
488 |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
489 if (ENABLE_PLUGINS AND |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
490 (BUILD_SERVE_FOLDERS OR BUILD_MODALITY_WORKLISTS OR BUILD_HOUSEKEEPER OR |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
491 BUILD_DELAYED_DELETION OR BUILD_MULTITENANT_DICOM)) |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
492 set(PLUGINS_DEPENDENCIES_SOURCES |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
493 ${BOOST_SOURCES} |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
494 ${JSONCPP_SOURCES} |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
495 ${LIBICONV_SOURCES} |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
496 ${LIBICU_SOURCES} |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
497 ${PUGIXML_SOURCES} |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
498 ${UUID_SOURCES} |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
499 ${ZLIB_SOURCES} |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
500 |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
501 ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/ThirdParty/base64/base64.cpp |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
502 ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/ThirdParty/md5/md5.c |
5561
0b18690c1935
SDK: added OrthancPluginLogMessage to display plugin name + file and line from plugin
Alain Mazy <am@orthanc.team>
parents:
5545
diff
changeset
|
503 |
0b18690c1935
SDK: added OrthancPluginLogMessage to display plugin name + file and line from plugin
Alain Mazy <am@orthanc.team>
parents:
5545
diff
changeset
|
504 # the orthanc framework sources |
0b18690c1935
SDK: added OrthancPluginLogMessage to display plugin name + file and line from plugin
Alain Mazy <am@orthanc.team>
parents:
5545
diff
changeset
|
505 ${ORTHANC_CORE_SOURCES} |
0b18690c1935
SDK: added OrthancPluginLogMessage to display plugin name + file and line from plugin
Alain Mazy <am@orthanc.team>
parents:
5545
diff
changeset
|
506 |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
507 Plugins/Samples/Common/OrthancPluginCppWrapper.cpp |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
508 ) |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
509 |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
510 if (BUILD_DELAYED_DELETION) |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
511 list(APPEND PLUGINS_DEPENDENCIES_SOURCES |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
512 ${SQLITE_SOURCES} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
513 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
514 endif() |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
515 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
516 if (BUILD_MULTITENANT_DICOM) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
517 list(APPEND PLUGINS_DEPENDENCIES_SOURCES |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
518 ${DCMTK_SOURCES} |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
519 ${OPENSSL_SOURCES} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
520 ${LIBJPEG_SOURCES} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
521 ${LIBPNG_SOURCES} |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
522 ) |
3271 | 523 endif() |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
524 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
525 add_library(PluginsDependencies STATIC |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
526 ${PLUGINS_DEPENDENCIES_SOURCES} |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
527 ) |
3271 | 528 |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
529 DefineSourceBasenameForTarget(PluginsDependencies) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
530 |
5561
0b18690c1935
SDK: added OrthancPluginLogMessage to display plugin name + file and line from plugin
Alain Mazy <am@orthanc.team>
parents:
5545
diff
changeset
|
531 target_include_directories(PluginsDependencies PUBLIC ${CMAKE_SOURCE_DIR}/../OrthancFramework/Sources) |
0b18690c1935
SDK: added OrthancPluginLogMessage to display plugin name + file and line from plugin
Alain Mazy <am@orthanc.team>
parents:
5545
diff
changeset
|
532 |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
533 # Add the "-fPIC" option as this static library must be embedded |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
534 # inside shared libraries (important on UNIX) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
535 set_target_properties( |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
536 PluginsDependencies |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
537 PROPERTIES POSITION_INDEPENDENT_CODE ON |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
538 ) |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
539 endif() |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
540 |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
541 |
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
542 ##################################################################### |
2691 | 543 ## Build the "ServeFolders" plugin |
544 ##################################################################### | |
545 | |
546 if (ENABLE_PLUGINS AND BUILD_SERVE_FOLDERS) | |
547 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") | |
548 execute_process( | |
549 COMMAND | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
550 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
2691 | 551 ${ORTHANC_VERSION} ServeFolders ServeFolders.dll "Orthanc plugin to serve additional folders" |
552 ERROR_VARIABLE Failure | |
553 OUTPUT_FILE ${AUTOGENERATED_DIR}/ServeFolders.rc | |
554 ) | |
555 | |
556 if (Failure) | |
557 message(FATAL_ERROR "Error while computing the version information: ${Failure}") | |
558 endif() | |
559 | |
560 list(APPEND SERVE_FOLDERS_RESOURCES ${AUTOGENERATED_DIR}/ServeFolders.rc) | |
561 endif() | |
562 | |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
563 set_source_files_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
564 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ServeFolders/Plugin.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
565 PROPERTIES COMPILE_DEFINITIONS "SERVE_FOLDERS_VERSION=\"${ORTHANC_VERSION}\"" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
566 ) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
567 |
2691 | 568 add_library(ServeFolders SHARED |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
569 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ServeFolders/Plugin.cpp |
2691 | 570 ${SERVE_FOLDERS_RESOURCES} |
571 ) | |
572 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
573 DefineSourceBasenameForTarget(ServeFolders) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
574 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
575 target_link_libraries(ServeFolders PluginsDependencies) |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
576 |
2691 | 577 set_target_properties( |
578 ServeFolders PROPERTIES | |
579 VERSION ${ORTHANC_VERSION} | |
580 SOVERSION ${ORTHANC_VERSION} | |
581 ) | |
582 | |
583 install( | |
584 TARGETS ServeFolders | |
585 RUNTIME DESTINATION lib # Destination for Windows | |
586 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux | |
587 ) | |
588 endif() | |
589 | |
590 | |
591 | |
592 ##################################################################### | |
593 ## Build the "ModalityWorklists" plugin | |
594 ##################################################################### | |
595 | |
596 if (ENABLE_PLUGINS AND BUILD_MODALITY_WORKLISTS) | |
597 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") | |
598 execute_process( | |
599 COMMAND | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
600 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
2691 | 601 ${ORTHANC_VERSION} ModalityWorklists ModalityWorklists.dll "Sample Orthanc plugin to serve modality worklists" |
602 ERROR_VARIABLE Failure | |
603 OUTPUT_FILE ${AUTOGENERATED_DIR}/ModalityWorklists.rc | |
604 ) | |
605 | |
606 if (Failure) | |
607 message(FATAL_ERROR "Error while computing the version information: ${Failure}") | |
608 endif() | |
609 | |
610 list(APPEND MODALITY_WORKLISTS_RESOURCES ${AUTOGENERATED_DIR}/ModalityWorklists.rc) | |
611 endif() | |
612 | |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
613 set_source_files_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
614 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ModalityWorklists/Plugin.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
615 PROPERTIES COMPILE_DEFINITIONS "MODALITY_WORKLISTS_VERSION=\"${ORTHANC_VERSION}\"" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
616 ) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
617 |
2691 | 618 add_library(ModalityWorklists SHARED |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
619 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ModalityWorklists/Plugin.cpp |
2691 | 620 ${MODALITY_WORKLISTS_RESOURCES} |
621 ) | |
622 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
623 DefineSourceBasenameForTarget(ModalityWorklists) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
624 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
625 target_link_libraries(ModalityWorklists PluginsDependencies) |
3233
47fbb0467a62
Build a static library to share code between the plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3187
diff
changeset
|
626 |
2691 | 627 set_target_properties( |
628 ModalityWorklists PROPERTIES | |
629 VERSION ${ORTHANC_VERSION} | |
630 SOVERSION ${ORTHANC_VERSION} | |
631 ) | |
632 | |
633 install( | |
634 TARGETS ModalityWorklists | |
635 RUNTIME DESTINATION lib # Destination for Windows | |
636 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux | |
637 ) | |
638 endif() | |
639 | |
640 | |
641 | |
642 ##################################################################### | |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
643 ## Build the "ConnectivityChecks" plugin |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
644 ##################################################################### |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
645 |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
646 if (ENABLE_PLUGINS AND BUILD_CONNECTIVITY_CHECKS) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
647 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
648 execute_process( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
649 COMMAND |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
650 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
651 ${ORTHANC_VERSION} ConnectivityChecks ConnectivityChecks.dll "Orthanc plugin to show connectivity status" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
652 ERROR_VARIABLE Failure |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
653 OUTPUT_FILE ${AUTOGENERATED_DIR}/ConnectivityChecks.rc |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
654 ) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
655 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
656 if (Failure) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
657 message(FATAL_ERROR "Error while computing the version information: ${Failure}") |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
658 endif() |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
659 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
660 list(APPEND CONNECTIVITY_CHECKS_RESOURCES ${AUTOGENERATED_DIR}/ConnectivityChecks.rc) |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
661 endif() |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
662 |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
663 include(${CMAKE_SOURCE_DIR}/Plugins/Samples/ConnectivityChecks/JavaScriptLibraries.cmake) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
664 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
665 EmbedResources( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
666 --target=ConnectivityChecksResources |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
667 --framework-path=${CMAKE_SOURCE_DIR}/../OrthancFramework/Sources |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
668 WEB_RESOURCES ${CMAKE_SOURCE_DIR}/Plugins/Samples/ConnectivityChecks/WebResources |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
669 LIBRARIES ${CONNECTIVITY_CHECKS_JAVASCRIPT_DIR} |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
670 ) |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
671 |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
672 set_source_files_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
673 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ConnectivityChecks/Plugin.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
674 PROPERTIES COMPILE_DEFINITIONS "ORTHANC_PLUGIN_NAME=\"connectivity-checks\";ORTHANC_PLUGIN_VERSION=\"${ORTHANC_VERSION}\"" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
675 ) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
676 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
677 # The "OrthancFrameworkDependencies.cpp" file is used to bypass the |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
678 # precompiled headers if compiling with Visual Studio |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
679 add_library(ConnectivityChecks SHARED |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
680 ${AUTOGENERATED_DIR}/ConnectivityChecksResources.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
681 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ConnectivityChecks/Plugin.cpp |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
682 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
683 ${CMAKE_SOURCE_DIR}/Plugins/Samples/ConnectivityChecks/OrthancFrameworkDependencies.cpp |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
684 ${CONNECTIVITY_CHECKS_RESOURCES} |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
685 ) |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
686 |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
687 DefineSourceBasenameForTarget(ConnectivityChecks) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
688 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
689 target_link_libraries(ConnectivityChecks PluginsDependencies) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
690 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
691 set_target_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
692 ConnectivityChecks PROPERTIES |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
693 VERSION ${ORTHANC_VERSION} |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
694 SOVERSION ${ORTHANC_VERSION} |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
695 ) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
696 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
697 install( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
698 TARGETS ConnectivityChecks |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
699 RUNTIME DESTINATION lib # Destination for Windows |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
700 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
701 ) |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
702 endif() |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
703 |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
704 |
5024
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
705 ##################################################################### |
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
706 ## Build the "DelayedDeletion" plugin |
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
707 ##################################################################### |
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
708 |
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
709 if (ENABLE_PLUGINS AND BUILD_DELAYED_DELETION) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
710 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
711 execute_process( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
712 COMMAND |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
713 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
714 ${ORTHANC_VERSION} DelayedDeletion DelayedDeletion.dll "Orthanc plugin to delay deletion of files" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
715 ERROR_VARIABLE Failure |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
716 OUTPUT_FILE ${AUTOGENERATED_DIR}/DelayedDeletion.rc |
5024
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
717 ) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
718 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
719 if (Failure) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
720 message(FATAL_ERROR "Error while computing the version information: ${Failure}") |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
721 endif() |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
722 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
723 list(APPEND DELAYED_DELETION_RESOURCES ${AUTOGENERATED_DIR}/DelayedDeletion.rc) |
5024
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
724 endif() |
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
725 |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
726 set_source_files_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
727 ${CMAKE_SOURCE_DIR}/Plugins/Samples/DelayedDeletion/Plugin.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
728 PROPERTIES COMPILE_DEFINITIONS "ORTHANC_PLUGIN_NAME=\"delayed-deletion\";ORTHANC_PLUGIN_VERSION=\"${ORTHANC_VERSION}\"" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
729 ) |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
730 |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
731 # The "OrthancFrameworkDependencies.cpp" file is used to bypass the |
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
732 # precompiled headers if compiling with Visual Studio |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
733 add_library(DelayedDeletion SHARED |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
734 ${CMAKE_SOURCE_DIR}/Plugins/Samples/DelayedDeletion/PendingDeletionsDatabase.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
735 ${CMAKE_SOURCE_DIR}/Plugins/Samples/DelayedDeletion/Plugin.cpp |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
736 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
737 ${CMAKE_SOURCE_DIR}/Plugins/Samples/DelayedDeletion/OrthancFrameworkDependencies.cpp |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
738 ${DELAYED_DELETION_RESOURCES} |
5024
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
739 ) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
740 |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
741 DefineSourceBasenameForTarget(DelayedDeletion) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
742 |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
743 target_link_libraries(DelayedDeletion PluginsDependencies) |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
744 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
745 set_target_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
746 DelayedDeletion PROPERTIES |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
747 VERSION ${ORTHANC_VERSION} |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
748 SOVERSION ${ORTHANC_VERSION} |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
749 ) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
750 |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
751 install( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
752 TARGETS DelayedDeletion |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
753 RUNTIME DESTINATION lib # Destination for Windows |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
754 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
755 ) |
5024
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
756 endif() |
c2ebc47f4f18
wip: adding DelayedDeletion plugin
Alain Mazy <am@osimis.io>
parents:
4981
diff
changeset
|
757 |
3622
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
758 |
8afc14fab01f
New sample plugin: ConnectivityChecks
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3353
diff
changeset
|
759 ##################################################################### |
4979
f316413027fd
renamed DbOptizer into Housekeeper + add Scheduler & triggers
Alain Mazy <am@osimis.io>
parents:
4971
diff
changeset
|
760 ## Build the "Housekeeper" plugin |
4961 | 761 ##################################################################### |
762 | |
4981 | 763 if (ENABLE_PLUGINS AND BUILD_HOUSEKEEPER) |
764 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") | |
765 execute_process( | |
766 COMMAND | |
767 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py | |
768 ${ORTHANC_VERSION} Housekeeper Housekeeper.dll "Sample Orthanc plugin to optimize/clean the DB/Storage" | |
769 ERROR_VARIABLE Failure | |
770 OUTPUT_FILE ${AUTOGENERATED_DIR}/Housekeeper.rc | |
771 ) | |
772 | |
773 if (Failure) | |
774 message(FATAL_ERROR "Error while computing the version information: ${Failure}") | |
775 endif() | |
776 | |
777 list(APPEND HOUSEKEEPER_RESOURCES ${AUTOGENERATED_DIR}/Housekeeper.rc) | |
778 endif() | |
779 | |
5257
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
780 set_source_files_properties( |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
781 ${CMAKE_SOURCE_DIR}/Plugins/Samples/Housekeeper/Plugin.cpp |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
782 PROPERTIES COMPILE_DEFINITIONS "HOUSEKEEPER_VERSION=\"${ORTHANC_VERSION}\"" |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
783 ) |
0b183bb77c83
Avoid the use of "externalproject_add()" to build the sample plugins
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5207
diff
changeset
|
784 |
4981 | 785 add_library(Housekeeper SHARED |
786 ${CMAKE_SOURCE_DIR}/Plugins/Samples/Housekeeper/Plugin.cpp | |
787 ${HOUSEKEEPER_RESOURCES} | |
788 ) | |
789 | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
790 DefineSourceBasenameForTarget(Housekeeper) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
791 |
5263
ae3f29be5ca5
fix compatibility with visual studio precompiled headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5262
diff
changeset
|
792 target_link_libraries(Housekeeper PluginsDependencies) |
4981 | 793 |
794 set_target_properties( | |
795 Housekeeper PROPERTIES | |
796 VERSION ${ORTHANC_VERSION} | |
797 SOVERSION ${ORTHANC_VERSION} | |
798 ) | |
799 | |
800 install( | |
801 TARGETS Housekeeper | |
802 RUNTIME DESTINATION lib # Destination for Windows | |
803 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux | |
804 ) | |
4961 | 805 endif() |
806 | |
807 | |
808 ##################################################################### | |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
809 ## Build the "MultitenantDicom" plugin |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
810 ##################################################################### |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
811 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
812 if (ENABLE_PLUGINS AND BUILD_MULTITENANT_DICOM) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
813 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
814 execute_process( |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
815 COMMAND |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
816 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
817 ${ORTHANC_VERSION} MultitenantDicom MultitenantDicom.dll "Orthanc plugin to provide a multitenant DICOM server" |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
818 ERROR_VARIABLE Failure |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
819 OUTPUT_FILE ${AUTOGENERATED_DIR}/MultitenantDicom.rc |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
820 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
821 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
822 if (Failure) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
823 message(FATAL_ERROR "Error while computing the version information: ${Failure}") |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
824 endif() |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
825 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
826 list(APPEND MULTITENANT_DICOM_RESOURCES ${AUTOGENERATED_DIR}/MultitenantDicom.rc) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
827 endif() |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
828 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
829 EmbedResources( |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
830 --target=MultitenantDicomResources |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
831 --namespace=Orthanc.FrameworkResources |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
832 --framework-path=${CMAKE_SOURCE_DIR}/../OrthancFramework/Sources |
5545
f8b9eaa5effa
re-enabling ICU in the multitenant dicom plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5516
diff
changeset
|
833 ${LIBICU_RESOURCES} |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
834 ${DCMTK_DICTIONARIES} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
835 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
836 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
837 set_source_files_properties( |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
838 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/Plugin.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
839 PROPERTIES COMPILE_DEFINITIONS "ORTHANC_PLUGIN_VERSION=\"${ORTHANC_VERSION}\"" |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
840 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
841 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
842 # The "OrthancFrameworkDependencies.cpp" file is used to bypass the |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
843 # precompiled headers if compiling with Visual Studio |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
844 add_library(MultitenantDicom SHARED |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
845 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/DicomFilter.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
846 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/FindRequestHandler.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
847 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/MoveRequestHandler.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
848 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/MultitenantDicomServer.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
849 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/Plugin.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
850 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/PluginToolbox.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
851 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/StoreRequestHandler.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
852 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
853 ${CMAKE_SOURCE_DIR}/Plugins/Samples/MultitenantDicom/OrthancFrameworkDependencies.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
854 ${AUTOGENERATED_DIR}/MultitenantDicomResources.cpp |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
855 ${MULTITENANT_DICOM_RESOURCES} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
856 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
857 |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
858 DefineSourceBasenameForTarget(MultitenantDicom) |
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
859 |
5273
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
860 target_link_libraries(MultitenantDicom PluginsDependencies ${DCMTK_LIBRARIES}) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
861 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
862 set_target_properties( |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
863 MultitenantDicom PROPERTIES |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
864 VERSION ${ORTHANC_VERSION} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
865 SOVERSION ${ORTHANC_VERSION} |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
866 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
867 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
868 install( |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
869 TARGETS MultitenantDicom |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
870 RUNTIME DESTINATION lib # Destination for Windows |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
871 LIBRARY DESTINATION share/orthanc/plugins # Destination for Linux |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
872 ) |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
873 endif() |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
874 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
875 |
7cb1b851f5c8
Added a sample plugin bringing multitenant DICOM support through labels
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5268
diff
changeset
|
876 ##################################################################### |
2691 | 877 ## Build the companion tool to recover files compressed using Orthanc |
878 ##################################################################### | |
879 | |
880 if (BUILD_RECOVER_COMPRESSED_FILE) | |
881 set(RECOVER_COMPRESSED_SOURCES | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
882 ${CMAKE_SOURCE_DIR}/Resources/Samples/Tools/RecoverCompressedFile.cpp |
2691 | 883 ) |
884 | |
885 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") | |
886 execute_process( | |
887 COMMAND | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
888 ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/WindowsResources.py |
2691 | 889 ${ORTHANC_VERSION} OrthancRecoverCompressedFile OrthancRecoverCompressedFile.exe |
890 "Lightweight, RESTful DICOM server for medical imaging" | |
891 ERROR_VARIABLE Failure | |
892 OUTPUT_FILE ${AUTOGENERATED_DIR}/OrthancRecoverCompressedFile.rc | |
893 ) | |
894 | |
895 if (Failure) | |
896 message(FATAL_ERROR "Error while computing the version information: ${Failure}") | |
897 endif() | |
898 | |
899 list(APPEND RECOVER_COMPRESSED_SOURCES | |
900 ${AUTOGENERATED_DIR}/OrthancRecoverCompressedFile.rc | |
901 ) | |
902 endif() | |
903 | |
904 add_executable(OrthancRecoverCompressedFile ${RECOVER_COMPRESSED_SOURCES}) | |
5357
fddb5d8d0021
Prevent the leak of the full path of the source files in the binaries
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5273
diff
changeset
|
905 DefineSourceBasenameForTarget(OrthancRecoverCompressedFile) |
2691 | 906 |
907 target_link_libraries(OrthancRecoverCompressedFile CoreLibrary) | |
908 | |
909 install( | |
910 TARGETS OrthancRecoverCompressedFile | |
911 RUNTIME DESTINATION bin | |
912 ) | |
913 endif() | |
914 | |
915 | |
916 | |
917 ##################################################################### | |
918 ## Generate the documentation if Doxygen is present | |
919 ##################################################################### | |
920 | |
921 find_package(Doxygen) | |
922 if (DOXYGEN_FOUND) | |
923 configure_file( | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
924 ${CMAKE_SOURCE_DIR}/Resources/Orthanc.doxygen |
2691 | 925 ${CMAKE_CURRENT_BINARY_DIR}/Orthanc.doxygen |
926 @ONLY) | |
927 | |
928 configure_file( | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
929 ${CMAKE_SOURCE_DIR}/Resources/OrthancPlugin.doxygen |
2691 | 930 ${CMAKE_CURRENT_BINARY_DIR}/OrthancPlugin.doxygen |
931 @ONLY) | |
932 | |
933 add_custom_target(doc | |
934 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Orthanc.doxygen | |
935 COMMENT "Generating internal documentation with Doxygen" VERBATIM | |
936 ) | |
937 | |
938 add_custom_command(TARGET Orthanc | |
939 POST_BUILD | |
940 COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/OrthancPlugin.doxygen | |
941 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} | |
942 COMMENT "Generating plugin documentation with Doxygen" VERBATIM | |
943 ) | |
944 | |
945 install( | |
946 DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/OrthancPluginDocumentation/doc/ | |
947 DESTINATION share/doc/orthanc/OrthancPlugin | |
948 ) | |
949 else() | |
950 message("Doxygen not found. The documentation will not be built.") | |
951 endif() | |
952 | |
953 | |
954 | |
955 ##################################################################### | |
956 ## Install the plugin SDK | |
957 ##################################################################### | |
958 | |
959 if (ENABLE_PLUGINS) | |
960 install( | |
961 FILES | |
5189
50c4a18caa85
installing OrthancDatabasePlugin.proto
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5188
diff
changeset
|
962 ${CMAKE_SOURCE_DIR}/Plugins/Include/orthanc/OrthancCPlugin.h |
50c4a18caa85
installing OrthancDatabasePlugin.proto
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5188
diff
changeset
|
963 ${CMAKE_SOURCE_DIR}/Plugins/Include/orthanc/OrthancCDatabasePlugin.h |
50c4a18caa85
installing OrthancDatabasePlugin.proto
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
5188
diff
changeset
|
964 ${CMAKE_SOURCE_DIR}/Plugins/Include/orthanc/OrthancDatabasePlugin.proto |
2691 | 965 DESTINATION include/orthanc |
966 ) | |
967 endif() | |
968 | |
969 | |
970 | |
971 ##################################################################### | |
972 ## Prepare the "uninstall" target | |
973 ## http://www.cmake.org/Wiki/CMake_FAQ#Can_I_do_.22make_uninstall.22_with_CMake.3F | |
974 ##################################################################### | |
975 | |
976 configure_file( | |
4091
19a2f1d2b816
moved CMakeLists.txt for the server to the OrthancServer folder
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4063
diff
changeset
|
977 "${CMAKE_SOURCE_DIR}/../OrthancFramework/Resources/CMake/Uninstall.cmake.in" |
2691 | 978 "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" |
979 IMMEDIATE @ONLY) | |
980 | |
981 add_custom_target(uninstall | |
982 COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake) |