diff options
Diffstat (limited to 'scripts/ports.cmake')
| -rw-r--r-- | scripts/ports.cmake | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/scripts/ports.cmake b/scripts/ports.cmake index 51afc8d61..eeb7b254c 100644 --- a/scripts/ports.cmake +++ b/scripts/ports.cmake @@ -1,5 +1,17 @@ cmake_minimum_required(VERSION 3.5) -get_filename_component(VCPKG_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR} DIRECTORY) + +#Detect .vcpkg-root to figure VCPKG_ROOT_DIR +SET(VCPKG_ROOT_DIR_CANDIDATE ${CMAKE_CURRENT_LIST_DIR}) +while(IS_DIRECTORY ${VCPKG_ROOT_DIR_CANDIDATE} AND NOT EXISTS "${VCPKG_ROOT_DIR_CANDIDATE}/.vcpkg-root") + get_filename_component(VCPKG_ROOT_DIR_TEMP ${VCPKG_ROOT_DIR_CANDIDATE} DIRECTORY) + if (VCPKG_ROOT_DIR_TEMP STREQUAL VCPKG_ROOT_DIR_CANDIDATE) # If unchanged, we have reached the root of the drive + message(FATAL_ERROR "Could not find .vcpkg-root") + else() + SET(VCPKG_ROOT_DIR_CANDIDATE ${VCPKG_ROOT_DIR_TEMP}) + endif() +endwhile() + +set(VCPKG_ROOT_DIR ${VCPKG_ROOT_DIR_CANDIDATE}) string(REGEX REPLACE "([^-]*)-([^-]*)" "\\1" TRIPLET_SYSTEM_ARCH ${TARGET_TRIPLET}) string(REGEX REPLACE "([^-]*)-([^-]*)" "\\2" TRIPLET_SYSTEM_NAME ${TARGET_TRIPLET}) @@ -44,7 +56,7 @@ if(CMD MATCHES "^SCAFFOLD$") message(FATAL_ERROR "Error downloading file: ${error_code}") endif() endif() - file(MD5 ${DOWNLOADS}/${FILENAME} MD5) + file(SHA512 ${DOWNLOADS}/${FILENAME} SHA512) file(MAKE_DIRECTORY ports/${PORT}) configure_file(scripts/templates/portfile.in.cmake ports/${PORT}/portfile.cmake @ONLY) |
