Skip to content

Commit

Permalink
[vcpkg-cmake-get-vars] Handle CMAKE_SYSROOT_COMPILE/CMAKE_SYSROOT_LINK (
Browse files Browse the repository at this point in the history
  • Loading branch information
Osyotr authored Oct 3, 2024
1 parent 0b63bdd commit 52fc0d8
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 8 deletions.
31 changes: 28 additions & 3 deletions ports/vcpkg-cmake-get-vars/cmake_get_vars/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -159,12 +159,37 @@ if(CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN)
string(APPEND EXTRA_FLAGS " ${CMAKE_CXX_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN} \"${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}\"")
endif()
endif()
if(CMAKE_SYSROOT AND CMAKE_CXX_COMPILE_OPTIONS_SYSROOT)
string(APPEND EXTRA_FLAGS " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}\"")

set(extra_flags_compile "")
set(extra_flags_link "")
if(CMAKE_CXX_COMPILE_OPTIONS_SYSROOT)
if(CMAKE_SYSROOT_COMPILE)
string(APPEND extra_flags_compile " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT_COMPILE}\"")
elseif(CMAKE_SYSROOT)
string(APPEND extra_flags_compile " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}\"")
endif()

if(CMAKE_SYSROOT_LINK)
string(APPEND extra_flags_link " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT_LINK}\"")
elseif(CMAKE_SYSROOT)
string(APPEND extra_flags_link " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}\"")
endif()
endif()

foreach(flags ${VCPKG_LANGUAGES} SHARED_LINKER EXE_LINKER STATIC_LINKER MODULE_LINKER)
set(flags_to_add_target_compile "${VCPKG_LANGUAGES}")
set(flags_to_add_target_link SHARED_LINKER EXE_LINKER STATIC_LINKER MODULE_LINKER)

foreach(flags IN LISTS flags_to_add_target_compile flags_to_add_target_link)
set(${flags}_FLAGS "${target_param} ${CMAKE_${flags}_FLAGS} ${CMAKE_${flags}_FLAGS_${VCPKG_CONFIGS}} ${EXTRA_FLAGS}")
endforeach()

foreach(flags IN LISTS flags_to_add_target_compile)
string(APPEND ${flags}_FLAGS " ${extra_flags_compile}")
string(STRIP ${flags}_FLAGS "${${flags}_FLAGS}")
endforeach()

foreach(flags IN LISTS flags_to_add_target_link)
string(APPEND ${flags}_FLAGS " ${extra_flags_link}")
string(STRIP ${flags}_FLAGS "${${flags}_FLAGS}")
endforeach()

Expand Down
2 changes: 1 addition & 1 deletion ports/vcpkg-cmake-get-vars/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vcpkg-cmake-get-vars",
"version-date": "2023-12-31",
"version-date": "2024-09-22",
"documentation": "https://vcpkg.io/en/docs/README.html",
"license": "MIT",
"dependencies": [
Expand Down
27 changes: 24 additions & 3 deletions scripts/get_cmake_vars/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -111,8 +111,21 @@ if(CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN)
string(APPEND extra_flags " ${CMAKE_CXX_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN} \"${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}\"")
endif()
endif()
if(CMAKE_SYSROOT AND CMAKE_CXX_COMPILE_OPTIONS_SYSROOT)
string(APPEND extra_flags " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}\"")

set(extra_flags_compile "")
set(extra_flags_link "")
if(CMAKE_CXX_COMPILE_OPTIONS_SYSROOT)
if(CMAKE_SYSROOT_COMPILE)
string(APPEND extra_flags_compile " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT_COMPILE}\"")
elseif(CMAKE_SYSROOT)
string(APPEND extra_flags_compile " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}\"")
endif()

if(CMAKE_SYSROOT_LINK)
string(APPEND extra_flags_link " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT_LINK}\"")
elseif(CMAKE_SYSROOT)
string(APPEND extra_flags_link " \"${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}\"")
endif()
endif()

macro(_vcpkg_adjust_flags flag_var)
Expand Down Expand Up @@ -142,7 +155,9 @@ macro(_vcpkg_adjust_flags flag_var)
endif()
unset(flags_to_add_osx_arch_sysroot)
endif()
set(flags_to_add_target "${VCPKG_LANG_FLAGS}" CMAKE_SHARED_LINKER_FLAGS CMAKE_MODULE_LINKER_FLAGS CMAKE_EXE_LINKER_FLAGS)
set(flags_to_add_target_compile "${VCPKG_LANG_FLAGS}")
set(flags_to_add_target_link CMAKE_SHARED_LINKER_FLAGS CMAKE_MODULE_LINKER_FLAGS CMAKE_EXE_LINKER_FLAGS)
set(flags_to_add_target "${flags_to_add_target_compile}" "${flags_to_add_target_link}")
list(GET VCPKG_LANGUAGES 0 lang)
if(CMAKE_${lang}_COMPILER_TARGET AND "${flag_var}" IN_LIST flags_to_add_target)
if (CMAKE_${lang}_COMPILER_ID STREQUAL Clang)
Expand All @@ -154,6 +169,12 @@ macro(_vcpkg_adjust_flags flag_var)
if("${flag_var}" IN_LIST flags_to_add_target)
string(APPEND ${flag_var} " ${extra_flags}")
endif()
if("${flag_var}" IN_LIST flags_to_add_target_compile)
string(APPEND ${flag_var} " ${extra_flags_compile}")
endif()
if("${flag_var}" IN_LIST flags_to_add_target_link)
string(APPEND ${flag_var} " ${extra_flags_link}")
endif()
unset(lang)
unset(flags_to_add_target)
endmacro()
Expand Down
2 changes: 1 addition & 1 deletion versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -9285,7 +9285,7 @@
"port-version": 0
},
"vcpkg-cmake-get-vars": {
"baseline": "2023-12-31",
"baseline": "2024-09-22",
"port-version": 0
},
"vcpkg-get-python": {
Expand Down
5 changes: 5 additions & 0 deletions versions/v-/vcpkg-cmake-get-vars.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "f23148add155147f3d95ae622d3b0031beb25acf",
"version-date": "2024-09-22",
"port-version": 0
},
{
"git-tree": "725c841810ceb8de33da68ea879eb8f0b4d6c94c",
"version-date": "2023-12-31",
Expand Down

0 comments on commit 52fc0d8

Please sign in to comment.