Mercurial > hg > orthanc-authorization
diff CMakeLists.txt @ 22:c44013681a51
now using the Orthanc framework
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 20 Jul 2018 14:37:30 +0200 |
parents | 5cb4e0ed488d |
children | a635f920af3d |
line wrap: on
line diff
--- a/CMakeLists.txt Thu Jul 19 15:04:50 2018 +0200 +++ b/CMakeLists.txt Fri Jul 20 14:37:30 2018 +0200 @@ -19,35 +19,43 @@ project(OrthancAuthorization) -set(ORTHANC_AUTHORIZATION_VERSION "0.2.1") +set(ORTHANC_PLUGIN_VERSION "mainline") + +if (ORTHANC_PLUGIN_VERSION STREQUAL "mainline") + set(ORTHANC_FRAMEWORK_VERSION "mainline") + set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "hg") +else() + set(ORTHANC_FRAMEWORK_VERSION "1.4.0") + set(ORTHANC_FRAMEWORK_DEFAULT_SOURCE "web") +endif() # Parameters of the build set(STATIC_BUILD OFF CACHE BOOL "Static build of the third-party libraries (necessary for Windows)") -SET(STANDALONE_BUILD ON CACHE BOOL "Standalone build (all the resources are embedded, necessary for releases)") set(ALLOW_DOWNLOADS OFF CACHE BOOL "Allow CMake to download packages") +set(ORTHANC_FRAMEWORK_SOURCE "${ORTHANC_FRAMEWORK_DEFAULT_SOURCE}" CACHE STRING "Source of the Orthanc source code (can be \"hg\", \"archive\", \"web\" or \"path\")") +set(ORTHANC_FRAMEWORK_ARCHIVE "" CACHE STRING "Path to the Orthanc archive, if ORTHANC_FRAMEWORK_SOURCE is \"archive\"") +set(ORTHANC_FRAMEWORK_ROOT "" CACHE STRING "Path to the Orthanc source directory, if ORTHANC_FRAMEWORK_SOURCE is \"path\"") # Advanced parameters to fine-tune linking against system libraries -set(USE_SYSTEM_BOOST ON CACHE BOOL "Use the system version of Boost") -set(USE_SYSTEM_JSONCPP ON CACHE BOOL "Use the system version of JsonCpp") set(USE_SYSTEM_ORTHANC_SDK ON CACHE BOOL "Use the system version of the Orthanc plugin SDK") -set(ORTHANC_ROOT ${CMAKE_SOURCE_DIR}/Resources/Orthanc) -set(ORTHANC_DISABLE_PATCH ON) # No need for the "patch" command-line tool -include(CheckIncludeFiles) -include(CheckIncludeFileCXX) -include(CheckLibraryExists) -include(FindPythonInterp) -include(${ORTHANC_ROOT}/Resources/CMake/Compiler.cmake) -include(${ORTHANC_ROOT}/Resources/CMake/AutoGeneratedCode.cmake) -include(${ORTHANC_ROOT}/Resources/CMake/DownloadPackage.cmake) + +# Download and setup the Orthanc framework +include(${CMAKE_SOURCE_DIR}/Resources/Orthanc/DownloadOrthancFramework.cmake) -include(${ORTHANC_ROOT}/Resources/CMake/BoostConfiguration.cmake) -include(${ORTHANC_ROOT}/Resources/CMake/JsonCppConfiguration.cmake) +set(ORTHANC_FRAMEWORK_PLUGIN ON) +set(ORTHANC_DISABLE_PATCH ON) # No need for the "patch" command-line tool +include(${ORTHANC_ROOT}/Resources/CMake/OrthancFrameworkParameters.cmake) + +set(ENABLE_LOCALE OFF) # Disable support for locales (notably in Boost) + +include(${ORTHANC_ROOT}/Resources/CMake/OrthancFrameworkConfiguration.cmake) +include_directories(${ORTHANC_ROOT}) # Check that the Orthanc SDK headers are available if (STATIC_BUILD OR NOT USE_SYSTEM_ORTHANC_SDK) - include_directories(${ORTHANC_ROOT}/Sdk-1.3.1) + include_directories(${CMAKE_SOURCE_DIR}/Resources/Orthanc//Sdk-1.3.1) else () CHECK_INCLUDE_FILE_CXX(orthanc/OrthancCPlugin.h HAVE_ORTHANC_H) if (NOT HAVE_ORTHANC_H) @@ -64,7 +72,7 @@ execute_process( COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Resources/WindowsResources.py - ${ORTHANC_AUTHORIZATION_VERSION} "OrthancAuthorization" OrthancAuthorization.dll "Advanced authorization plugin for Orthanc" + ${ORTHANC_PLUGIN_VERSION} "OrthancAuthorization" OrthancAuthorization.dll "Advanced authorization plugin for Orthanc" ERROR_VARIABLE Failure OUTPUT_FILE ${AUTOGENERATED_DIR}/Version.rc ) @@ -83,12 +91,7 @@ add_definitions( -DHAS_ORTHANC_EXCEPTION=1 - -DORTHANC_ENABLE_MD5=0 - -DORTHANC_ENABLE_BASE64=0 - -DORTHANC_ENABLE_LOGGING=1 -DORTHANC_ENABLE_LOGGING_PLUGIN=1 - -DORTHANC_ENABLE_PUGIXML=0 - -DORTHANC_SANDBOXED=0 ) add_library(OrthancAuthorization SHARED @@ -105,24 +108,18 @@ ${CMAKE_SOURCE_DIR}/Plugin/ResourceHierarchyCache.cpp ${CMAKE_SOURCE_DIR}/Plugin/Token.cpp - ${ORTHANC_ROOT}/Core/Logging.cpp - ${ORTHANC_ROOT}/Core/Enumerations.cpp - ${ORTHANC_ROOT}/Core/Toolbox.cpp ${ORTHANC_ROOT}/Plugins/Samples/Common/OrthancPluginCppWrapper.cpp - - ${BOOST_SOURCES} - ${SQLITE_SOURCES} - ${JSONCPP_SOURCES} + ${ORTHANC_CORE_SOURCES} ${AUTOGENERATED_SOURCES} ) -message("Setting the version of the plugin to ${ORTHANC_AUTHORIZATION_VERSION}") -add_definitions(-DORTHANC_AUTHORIZATION_VERSION="${ORTHANC_AUTHORIZATION_VERSION}") +message("Setting the version of the plugin to ${ORTHANC_PLUGIN_VERSION}") +add_definitions(-DORTHANC_PLUGIN_VERSION="${ORTHANC_PLUGIN_VERSION}") set_target_properties(OrthancAuthorization PROPERTIES - VERSION ${ORTHANC_AUTHORIZATION_VERSION} - SOVERSION ${ORTHANC_AUTHORIZATION_VERSION}) + VERSION ${ORTHANC_PLUGIN_VERSION} + SOVERSION ${ORTHANC_PLUGIN_VERSION}) install( TARGETS OrthancAuthorization