From c89cef3aa5033347dc82e623ccda38b5316a3a1a Mon Sep 17 00:00:00 2001 From: PatTheMav Date: Sun, 11 Aug 2024 16:16:50 +0200 Subject: [PATCH] cmake: Fix malformed CMake package location on Windows CMake doesn't expect CMake package files to be separated in subdirectories on Windows and instead expects all files to be put in a single directory `cmake` found within one of the PREFIX paths. Also fixes circular dependency in w32-pthreads CMake package config file. --- cmake/common/helpers_common.cmake | 6 +++++- deps/w32-pthreads/cmake/w32-pthreadsConfig.cmake.in | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cmake/common/helpers_common.cmake b/cmake/common/helpers_common.cmake index 0f040b2f058eca..ade057e1d516a8 100644 --- a/cmake/common/helpers_common.cmake +++ b/cmake/common/helpers_common.cmake @@ -292,7 +292,11 @@ function(target_export target) set(package_destination "Frameworks/${target}.framework/Resources/cmake") set(include_destination "Frameworks/${target}.framework/Headers") else() - set(package_destination "${OBS_CMAKE_DESTINATION}/${target}") + if(OS_WINDOWS) + set(package_destination "${OBS_CMAKE_DESTINATION}") + else() + set(package_destination "${OBS_CMAKE_DESTINATION}/${target}") + endif() set(include_destination "${OBS_INCLUDE_DESTINATION}") endif() diff --git a/deps/w32-pthreads/cmake/w32-pthreadsConfig.cmake.in b/deps/w32-pthreads/cmake/w32-pthreadsConfig.cmake.in index 38bbde7b37fb35..ce5516a464b04a 100644 --- a/deps/w32-pthreads/cmake/w32-pthreadsConfig.cmake.in +++ b/deps/w32-pthreads/cmake/w32-pthreadsConfig.cmake.in @@ -1,4 +1,4 @@ @PACKAGE_INIT@ include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake") -check_required_components("@PROJECT_NAME@") +check_required_components("w32-pthreads")