aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/cmake/vcpkg_extract_source_archive_ex.cmake9
1 files changed, 8 insertions, 1 deletions
diff --git a/scripts/cmake/vcpkg_extract_source_archive_ex.cmake b/scripts/cmake/vcpkg_extract_source_archive_ex.cmake
index 67916d09d..411000bf8 100644
--- a/scripts/cmake/vcpkg_extract_source_archive_ex.cmake
+++ b/scripts/cmake/vcpkg_extract_source_archive_ex.cmake
@@ -101,9 +101,16 @@ function(vcpkg_extract_source_archive_ex)
string(SHA512 PATCHSET_HASH ${PATCHSET_HASH})
string(SUBSTRING ${PATCHSET_HASH} 0 10 PATCHSET_HASH)
set(SOURCE_PATH "${_vesae_WORKING_DIRECTORY}/${SHORTENED_SANITIZED_REF}-${PATCHSET_HASH}")
+ if (NOT _VCPKG_EDITABLE)
+ string(APPEND SOURCE_PATH ".clean")
+ if(EXISTS ${SOURCE_PATH})
+ message(STATUS "Cleaning sources at ${SOURCE_PATH}. Pass --editable to vcpkg to reuse sources.")
+ file(REMOVE_RECURSE ${SOURCE_PATH})
+ endif()
+ endif()
if(NOT EXISTS ${SOURCE_PATH})
- set(TEMP_DIR "${_vesae_WORKING_DIRECTORY}/TEMP")
+ set(TEMP_DIR "${_vesae_WORKING_DIRECTORY}/${SHORTENED_SANITIZED_REF}-${PATCHSET_HASH}.tmp")
file(REMOVE_RECURSE ${TEMP_DIR})
vcpkg_extract_source_archive("${_vesae_ARCHIVE}" "${TEMP_DIR}")