f5a441a616 Xcode: Fix erroneous MACOSX_BUNDLE link Acked-by: Kitware Robot <[email protected]> Merge-request: !7624
@@ -3622,6 +3622,7 @@ void cmGlobalXCodeGenerator::AddDependAndLinkInformation(cmXCodeObject* target)
}
} else {
+ linkDir = cmSystemTools::GetParentDirectory(linkDir);
if (std::find(linkSearchPaths.begin(), linkSearchPaths.end(), linkDir) ==
linkSearchPaths.end()) {
linkSearchPaths.push_back(linkDir);
@@ -0,0 +1,14 @@
+cmake_minimum_required(VERSION 3.23)
+
+project(BundleLinkBundle CXX)
+add_subdirectory(lib_bundle)
+add_executable(MainBundle MACOSX_BUNDLE main_bundle.cpp)
+target_link_libraries(MainBundle PRIVATE LibBundle)
+set_target_properties(MainBundle PROPERTIES
+ MACOSX_BUNDLE "YES"
+ XCODE_LINK_BUILD_PHASE_MODE BUILT_ONLY
+)
@@ -151,6 +151,16 @@ endfunction()
XcodeXCConfig()
+function(BundleLinkBundle)
+ set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/BundleLinkBundle-build)
+ run_cmake(BundleLinkBundle)
+ set(RunCMake_TEST_NO_CLEAN 1)
+ run_cmake_command(BundleLinkBundle-build ${CMAKE_COMMAND} --build .)
+endfunction()
+BundleLinkBundle()
# Isolate device tests from host architecture selection.
unset(ENV{CMAKE_OSX_ARCHITECTURES})
@@ -0,0 +1,5 @@
+add_library(LibBundle lib_bundle.cpp)
+set_target_properties(LibBundle PROPERTIES
+ MACOSX_BUNDLE YES)
@@ -0,0 +1,6 @@
+#include <iostream>
+void foo()
+{
+ std::cout << "foobar" << std::endl;
+}
@@ -0,0 +1,9 @@
+extern void foo();
+int main()
+ foo();
+ return 0;