diff Resources/CMake/PlustacheConfiguration.cmake @ 1024:a93867a94011 templating

smoother integration of plustache
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 10 Jul 2014 11:53:23 +0200
parents d8f5de5b9517
children 3a26bc6e4867
line wrap: on
line diff
--- a/Resources/CMake/PlustacheConfiguration.cmake	Thu Jul 10 11:42:32 2014 +0200
+++ b/Resources/CMake/PlustacheConfiguration.cmake	Thu Jul 10 11:53:23 2014 +0200
@@ -1,21 +1,34 @@
-set(PLUSTACHE_SOURCES_DIR ${CMAKE_BINARY_DIR}/plustache-0.3.0)
-DownloadPackage(
-  "6162946bdb3dccf3b2185fcf149671ee"
-  "http://www.montefiore.ulg.ac.be/~jodogne/Orthanc/ThirdPartyDownloads/plustache-0.3.0.tar.gz"
-  "${PLUSTACHE_SOURCES_DIR}")
+if (USE_PLUSTACHE)
+  add_definitions(-DORTHANC_PLUSTACHE_ENABLED=1)
 
-list(APPEND THIRD_PARTY_SOURCES
-  ${PLUSTACHE_SOURCES_DIR}/src/context.cpp
-  ${PLUSTACHE_SOURCES_DIR}/src/template.cpp
-  )
+  if (STATIC_BUILD OR NOT USE_SYSTEM_PLUSTACHE)
+    set(PLUSTACHE_SOURCES_DIR ${CMAKE_BINARY_DIR}/plustache-0.3.0)
+    DownloadPackage(
+      "6162946bdb3dccf3b2185fcf149671ee"
+      "http://www.montefiore.ulg.ac.be/~jodogne/Orthanc/ThirdPartyDownloads/plustache-0.3.0.tar.gz"
+      "${PLUSTACHE_SOURCES_DIR}")
+
+    list(APPEND THIRD_PARTY_SOURCES
+      ${PLUSTACHE_SOURCES_DIR}/src/context.cpp
+      ${PLUSTACHE_SOURCES_DIR}/src/template.cpp
+      )
 
-include_directories(
-  ${PLUSTACHE_SOURCES_DIR}
-  )
+    include_directories(
+      ${PLUSTACHE_SOURCES_DIR}
+      )
+
+    execute_process(
+      COMMAND patch -p0 -i ${CMAKE_SOURCE_DIR}/Resources/CMake/PlustacheConfiguration.patch
+      WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+      )
 
-execute_process(
-  COMMAND patch -p0 -i ${CMAKE_SOURCE_DIR}/Resources/CMake/PlustacheConfiguration.patch
-  WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
-  )
+    source_group(ThirdParty\\Plustache REGULAR_EXPRESSION ${PLUSTACHE_SOURCES_DIR}/.*)
 
-source_group(ThirdParty\\Plustache REGULAR_EXPRESSION ${PLUSTACHE_SOURCES_DIR}/.*)
+  else()
+    message(FATAL_ERROR "Dynamic linking against plustache not implemented (a patch is required)")
+  endif()
+
+else()
+  add_definitions(-DORTHANC_PLUSTACHE_ENABLED=0)
+
+endif()