diff options
Diffstat (limited to 'vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project')
6 files changed, 64 insertions, 0 deletions
diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/CMakeLists.txt b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/CMakeLists.txt new file mode 100644 index 0000000..2171283 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/CMakeLists.txt @@ -0,0 +1,42 @@ +cmake_minimum_required(VERSION 3.30) +project(cmake-toolchain-file-test C CXX) + +foreach(var IN ITEMS + CMAKE_SYSROOT + CMAKE_FIND_ROOT_PATH + CMAKE_PREFIX_PATH + CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES + CMAKE_SYSTEM_IGNORE_PATH + CMAKE_FIND_ROOT_PATH_MODE_LIBRARY +) + list(JOIN "${var}" "\n " dirs) + message("" "${var}:\n ${dirs}\n") +endforeach() + +set(CMAKE_FIND_DEBUG_MODE 1) +set(link_libs "") +set(implicit_link_libs "${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES}") +list(REMOVE_ITEM implicit_link_libs ${CMAKE_C_IMPLICIT_LINK_LIBRARIES}) +foreach(lib IN LISTS implicit_link_libs) + if(EXISTS "${lib}") + message("" "Absolute path: ${lib}\n") + else() + string(MAKE_C_IDENTIFIER "${lib}" id) + find_library(${id}_LIBRARY NAMES "${lib}" NO_CACHE) + if(NOT ${id}_LIBRARY) + find_library(${id}_LIBRARY NAMES "${lib}" PATHS ${CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES} NO_DEFAULT_PATH NO_CACHE) + endif() + list(APPEND link_libs "${${id}_LIBRARY}") + endif() +endforeach() + +# Pull link errors into config step set of log files +try_compile(link_libs_accepted + SOURCES "${CMAKE_CURRENT_LIST_DIR}/main.c" + LINK_LIBRARIES ${link_libs} + LOG_DESCRIPTION "Checking linking with ${link_libs}" + OUTPUT_VARIABLE output +) +if(NOT link_libs_accepted) + message(FATAL_ERROR "${output}") +endif() diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/main.c b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/main.c new file mode 100644 index 0000000..d0510dd --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/main.c @@ -0,0 +1,7 @@ +#include <stdio.h> + +int main() +{ + printf("Hello %s\n", "world"); + return 0; +} diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/CMakeLists.txt.in b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/CMakeLists.txt.in new file mode 100644 index 0000000..c80e1da --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/CMakeLists.txt.in @@ -0,0 +1,10 @@ +cmake_minimum_required(VERSION 3.30) +project(cmake-toolchain-file-test C) + +set(CMAKE_FIND_DEBUG_MODE 1) +set(VCPKG_TRACE_FIND_PACKAGE 1) + +set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE NEVER) +set(CMAKE_PREFIX_PATH "${CMAKE_CURRENT_LIST_DIR}/vcpkg_lock_find_package") + +@TEST_CODE@ diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/directPackageXConfig.cmake b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/directPackageXConfig.cmake new file mode 100644 index 0000000..636bc1a --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/directPackageXConfig.cmake @@ -0,0 +1 @@ +# intentionally empty diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/transitiveOptionalAbsentPackageXConfig.cmake b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/transitiveOptionalAbsentPackageXConfig.cmake new file mode 100644 index 0000000..c55e262 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/transitiveOptionalAbsentPackageXConfig.cmake @@ -0,0 +1,2 @@ +# Optional dependency! +find_package(absentPackageX) diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/transitivePackageXConfig.cmake b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/transitivePackageXConfig.cmake new file mode 100644 index 0000000..2a47fac --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-cmake-toolchain-file/project/vcpkg_lock_find_package/transitivePackageXConfig.cmake @@ -0,0 +1,2 @@ +include(CMakeFindDependencyMacro) +find_dependency(directPackageX) |