summaryrefslogtreecommitdiffstats
path: root/Tests/Framework/CMakeLists.txt
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2020-12-18 18:44:44 (GMT)
committerCraig Scott <craig.scott@crascit.com>2021-02-02 23:08:48 (GMT)
commit375b307bae4513b69b9f86549a094da7f2e8b3a7 (patch)
treeedffc1d543ed67866cf80600c0bc3034e304514e /Tests/Framework/CMakeLists.txt
parent0c86d15459eeef2ddd15644b7bb3d7854f226334 (diff)
downloadCMake-375b307bae4513b69b9f86549a094da7f2e8b3a7.zip
CMake-375b307bae4513b69b9f86549a094da7f2e8b3a7.tar.gz
CMake-375b307bae4513b69b9f86549a094da7f2e8b3a7.tar.bz2
Apple: Fix linking to frameworks that do not exist until build time
Fixes: #21621
Diffstat (limited to 'Tests/Framework/CMakeLists.txt')
-rw-r--r--Tests/Framework/CMakeLists.txt16
1 files changed, 16 insertions, 0 deletions
diff --git a/Tests/Framework/CMakeLists.txt b/Tests/Framework/CMakeLists.txt
index a313c2c..f741ec2 100644
--- a/Tests/Framework/CMakeLists.txt
+++ b/Tests/Framework/CMakeLists.txt
@@ -84,3 +84,19 @@ if(NOT XCODE OR NOT XCODE_VERSION VERSION_LESS 5)
endif()
include(CPack)
+
+if(APPLE)
+ set(ExternalFramework_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/External")
+ file(REMOVE_RECURSE "${ExternalFramework_INSTALL_DIR}")
+
+ include(ExternalProject)
+ ExternalProject_Add(ExternalFramework
+ SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/External"
+ INSTALL_DIR "${ExternalFramework_INSTALL_DIR}"
+ CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
+ )
+
+ add_executable(useExternal useExternal.c)
+ target_link_libraries(useExternal PRIVATE "${ExternalFramework_INSTALL_DIR}/lib/External.framework")
+ add_dependencies(useExternal ExternalFramework)
+endif()