Browse Source

Allow specification of third party location

This allows the user to specify where to build the third party code.
Matt Clarkson 10 năm trước cách đây
mục cha
commit
89c5a1b3ee
3 tập tin đã thay đổi với 11 bổ sung6 xóa
  1. 5 0
      CMakeLists.txt
  2. 5 5
      src/CMakeLists.txt
  3. 1 1
      test/CMakeLists.txt

+ 5 - 0
CMakeLists.txt

@@ -170,6 +170,11 @@ if (CIVETWEB_ENABLE_SSL)
   message(STATUS "Dynamically load SSL libraries - ${CIVETWEB_ENABLE_SSL_DYNAMIC_LOADING}")
 endif()
 
+# Third Party Download location
+set(CIVETWEB_THIRD_PARTY_DIR "${CMAKE_BINARY_DIR}/third_party" CACHE STRING
+  "The location that third party code is downloaded, built and installed")
+set_property(CACHE CIVETWEB_THIRD_PARTY_DIR PROPERTY VALUE ${CIVETWEB_THIRD_PARTY_DIR})
+
 # Unix systems can define the dynamic library names to load
 if (CIVETWEB_ENABLE_SSL_DYNAMIC_LOADING AND NOT DARWIN AND UNIX)
   # SSL library name

+ 5 - 5
src/CMakeLists.txt

@@ -82,7 +82,7 @@ if (CIVETWEB_ENABLE_LUA)
     ExternalProject_Add(lua
       URL "http://www.lua.org/ftp/lua-${CIVETWEB_LUA_VERSION}.tar.gz"
       URL_MD5 ${CIVETWEB_LUA_MD5_HASH}
-      PREFIX "${CMAKE_BINARY_DIR}/third_party"
+      PREFIX "${CIVETWEB_THIRD_PARTY_DIR}"
       CONFIGURE_COMMAND ""
       BUILD_COMMAND ${LUA_BUILD_COMMAND}
       BUILD_IN_SOURCE 1
@@ -109,7 +109,7 @@ if (CIVETWEB_ENABLE_LUA)
   ExternalProject_Add(luafilesystem
     URL "https://github.com/keplerproject/luafilesystem/archive/v_${LUA_FILESYSTEM_VERSION_UNDERSCORE}.tar.gz"
     URL_MD5 ${CIVETWEB_LUA_FILESYSTEM_MD5_HASH}
-    PREFIX "${CMAKE_BINARY_DIR}/third_party"
+    PREFIX "${CIVETWEB_THIRD_PARTY_DIR}"
     PATCH_COMMAND ${CMAKE_COMMAND} -E copy
       "${CMAKE_SOURCE_DIR}/cmake/luafilesystem/CMakeLists.txt" <SOURCE_DIR>/CMakeLists.txt
     CMAKE_ARGS
@@ -142,7 +142,7 @@ if (CIVETWEB_ENABLE_LUA)
   ExternalProject_Add(luasqlite
     URL "http://lua.sqlite.org/index.cgi/zip/${LUA_SQLITE_FILENAME}"
     URL_MD5 ${CIVETWEB_LUA_SQLITE_MD5_HASH}
-    PREFIX "${CMAKE_BINARY_DIR}/third_party"
+    PREFIX "${CIVETWEB_THIRD_PARTY_DIR}"
     PATCH_COMMAND ${CMAKE_COMMAND} -E copy
       "${CMAKE_SOURCE_DIR}/cmake/luasqlite/CMakeLists.txt" <SOURCE_DIR>/CMakeLists.txt
     CMAKE_ARGS
@@ -172,7 +172,7 @@ if (CIVETWEB_ENABLE_LUA)
   ExternalProject_Add(luaxml
     URL "http://viremo.eludi.net/LuaXML/${LUA_XML_FILENAME}"
     URL_MD5 ${CIVETWEB_LUA_XML_MD5_HASH}
-    PREFIX "${CMAKE_BINARY_DIR}/third_party"
+    PREFIX "${CIVETWEB_THIRD_PARTY_DIR}"
     PATCH_COMMAND ${CMAKE_COMMAND} -E copy
       "${CMAKE_SOURCE_DIR}/cmake/luaxml/CMakeLists.txt" <SOURCE_DIR>/CMakeLists.txt
     CMAKE_ARGS
@@ -200,7 +200,7 @@ if (CIVETWEB_ENABLE_LUA)
   ExternalProject_Add(sqlite
     URL "http://www.sqlite.org/2015/sqlite-amalgamation-${SQLITE_FILE_VERSION}.zip"
     URL_MD5 ${CIVETWEB_SQLITE_MD5_HASH}
-    PREFIX "${CMAKE_BINARY_DIR}/third_party"
+    PREFIX "${CIVETWEB_THIRD_PARTY_DIR}"
     PATCH_COMMAND ${CMAKE_COMMAND} -E copy
       "${CMAKE_SOURCE_DIR}/cmake/sqlite/CMakeLists.txt" <SOURCE_DIR>/CMakeLists.txt
     CMAKE_ARGS

+ 1 - 1
test/CMakeLists.txt

@@ -11,7 +11,7 @@ ExternalProject_Add(check-unit-test-framework
   DEPENDS c-library
   URL "https://downloads.sourceforge.net/project/check/check/${CIVETWEB_CHECK_VERSION}/check-${CIVETWEB_CHECK_VERSION}.tar.gz"
   URL_MD5 ${CIVETWEB_CHECK_MD5_HASH}
-  PREFIX "${CMAKE_BINARY_DIR}/third_party"
+  PREFIX "${CIVETWEB_THIRD_PARTY_DIR}"
   BUILD_IN_SOURCE 1
   PATCH_COMMAND ${CMAKE_COMMAND}
     -DSOURCE_DIR=<SOURCE_DIR>