summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
diff options
context:
space:
mode:
authorGusts Kaksis <gusts.kaksis@sonarworks.com>2020-08-29 12:56:05 (GMT)
committerCraig Scott <craig.scott@crascit.com>2020-08-31 21:38:48 (GMT)
commit525464ed2a8857be3fac224b4afde22c8c7dadeb (patch)
treedc2f31f41a340ca3f06f1770de04950dd18268b8 /Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
parentdc0898205c7fcebcb5224ba3eb6dd95c05193bdd (diff)
downloadCMake-525464ed2a8857be3fac224b4afde22c8c7dadeb.zip
CMake-525464ed2a8857be3fac224b4afde22c8c7dadeb.tar.gz
CMake-525464ed2a8857be3fac224b4afde22c8c7dadeb.tar.bz2
Xcode: Use "Link Binary With Libraries" build phase in some cases
OBJECT and STATIC libraries (framework or non-framework) do not use this build phase. Not all items to be linked use this build phase either. Co-Authored-By: Craig Scott <craig.scott@crascit.com>
Diffstat (limited to 'Tests/RunCMake/XcodeProject/RunCMakeTest.cmake')
-rw-r--r--Tests/RunCMake/XcodeProject/RunCMakeTest.cmake13
1 files changed, 13 insertions, 0 deletions
diff --git a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
index ed300bb..70eaaeb 100644
--- a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
+++ b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
@@ -19,6 +19,19 @@ endfunction()
XcodeGenerateTopLevelProjectOnlyWithObjectLibrary()
+function(LinkBinariesBuildPhase mode)
+ set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/LinkBinariesBuildPhase_${mode}-build)
+ set(RunCMake_TEST_OPTIONS "-DCMAKE_XCODE_LINK_BUILD_PHASE_MODE=${mode}")
+ run_cmake(LinkBinariesBuildPhase_${mode})
+ set(RunCMake_TEST_NO_CLEAN 1)
+ run_cmake_command(LinkBinariesBuildPhase_${mode}-build ${CMAKE_COMMAND} --build .)
+endfunction()
+
+LinkBinariesBuildPhase(NONE)
+LinkBinariesBuildPhase(BUILT_ONLY)
+LinkBinariesBuildPhase(KNOWN_LOCATION)
+run_cmake(LinkBinariesBuildPhase_INVALID)
+
run_cmake(XcodeObjectNeedsEscape)
run_cmake(XcodeObjectNeedsQuote)
run_cmake(XcodeOptimizationFlags)