aboutsummaryrefslogtreecommitdiff
path: root/third-party/cmake/DownloadAndExtractFile.cmake
diff options
context:
space:
mode:
authorFlorian Walch <florian@fwalch.com>2015-09-08 12:09:44 +0200
committerFlorian Walch <florian@fwalch.com>2015-09-09 17:23:22 +0200
commitb480eb069bb2c4147935159ee5710a5ed78485dd (patch)
tree0a02c158c9d83584ec5b85d1d60e8f73410ba3cb /third-party/cmake/DownloadAndExtractFile.cmake
parent41446715b4cfe76083545090f00de429efc06833 (diff)
downloadrneovim-b480eb069bb2c4147935159ee5710a5ed78485dd.tar.gz
rneovim-b480eb069bb2c4147935159ee5710a5ed78485dd.tar.bz2
rneovim-b480eb069bb2c4147935159ee5710a5ed78485dd.zip
CMake: Don't use existing third-party sources by default.
Introduce ALLOW_EXISTING_SRC_DIR option, turned off by default. The Homebrew formula, which downloads and extracts the third-party dependency sources before starting the build, would turn this option ON.
Diffstat (limited to 'third-party/cmake/DownloadAndExtractFile.cmake')
-rw-r--r--third-party/cmake/DownloadAndExtractFile.cmake13
1 files changed, 8 insertions, 5 deletions
diff --git a/third-party/cmake/DownloadAndExtractFile.cmake b/third-party/cmake/DownloadAndExtractFile.cmake
index 305e37e7dd..24e431b5e5 100644
--- a/third-party/cmake/DownloadAndExtractFile.cmake
+++ b/third-party/cmake/DownloadAndExtractFile.cmake
@@ -22,12 +22,15 @@ set(SRC_DIR ${PREFIX}/src/${TARGET})
# Check whether the source has been downloaded. If true, skip it.
# Useful for external downloads like homebrew.
-if(EXISTS "${SRC_DIR}" AND IS_DIRECTORY "${SRC_DIR}")
- file(GLOB EXISTED_FILES "${SRC_DIR}/*")
- if(EXISTED_FILES)
- message(STATUS "${SRC_DIR} is found and not empty, skipping download and extraction. ")
- return()
+if(USE_EXISTING_SRC_DIR)
+ if(EXISTS "${SRC_DIR}" AND IS_DIRECTORY "${SRC_DIR}")
+ file(GLOB EXISTED_FILES "${SRC_DIR}/*")
+ if(EXISTED_FILES)
+ message(STATUS "${SRC_DIR} is found and not empty, skipping download and extraction. ")
+ return()
+ endif()
endif()
+ message(FATAL_ERROR "USE_EXISTING_SRC_DIR set to ON, but '${SRC_DIR}' does not exist or is empty.")
endif()
# Taken from ExternalProject_Add. Let's hope we can drop this one day when