aboutsummaryrefslogtreecommitdiff
path: root/scripts/ports.cmake
diff options
context:
space:
mode:
authorAlbert Ziegenhagel <albert.ziegenhagel@outlook.com>2016-09-23 09:58:33 +0200
committerAlbert Ziegenhagel <albert.ziegenhagel@outlook.com>2016-09-23 09:58:33 +0200
commit430f53af7d2d8b9a2bda1986bd6ecb8eb7630b5d (patch)
treeb7618c81d8844c387b78861ee96af91109a633fe /scripts/ports.cmake
parent31935aa0fd142cbb4e0db1a62ba1483294b740f8 (diff)
parent5b89712df01c96242ced20c38f0fa27631c3f4e3 (diff)
downloadvcpkg-430f53af7d2d8b9a2bda1986bd6ecb8eb7630b5d.tar.gz
vcpkg-430f53af7d2d8b9a2bda1986bd6ecb8eb7630b5d.zip
Merge branch 'master' into default_triplet
# Conflicts: # toolsrc/include/vcpkg_cmd_arguments.h # toolsrc/src/commands_installation.cpp # toolsrc/src/vcpkg_cmd_arguments.cpp
Diffstat (limited to 'scripts/ports.cmake')
-rw-r--r--scripts/ports.cmake16
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)