diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2016-09-22 03:08:27 -0700 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2016-09-22 03:08:27 -0700 |
| commit | 764afd8619f6d236fa56b77de9793120a25c4fb9 (patch) | |
| tree | 2a2d94c67748ce8e5a090169036ee029b8422d9b /scripts | |
| parent | 23a45e7db6fe997add43aeb4f3716e3083704e2a (diff) | |
| download | vcpkg-764afd8619f6d236fa56b77de9793120a25c4fb9.tar.gz vcpkg-764afd8619f6d236fa56b77de9793120a25c4fb9.zip | |
CMake now automatically detects the root directory via .vcpkg-root
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/ports.cmake | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/scripts/ports.cmake b/scripts/ports.cmake index 51afc8d61..6a744a0b6 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}) |
