summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-03-11 13:10:13 (GMT)
committerKitware Robot <kwrobot@kitware.com>2021-03-11 13:10:42 (GMT)
commite6695c7ad54e6c2f62b5010fb6e34f3038caa416 (patch)
tree0924185ec84dc5c2772fa61abcc816872ad24825
parentfd64bf5738047c0290dbd78c738afa7e34aa2ddd (diff)
parent00ecddd9ebcbfc0cc4c2bd4e49ae56db59b465ea (diff)
downloadCMake-e6695c7ad54e6c2f62b5010fb6e34f3038caa416.zip
CMake-e6695c7ad54e6c2f62b5010fb6e34f3038caa416.tar.gz
CMake-e6695c7ad54e6c2f62b5010fb6e34f3038caa416.tar.bz2
Merge topic 'xcode-framework-quoting'
00ecddd9eb Tests: Enable Framework test case with spaces everywhere possible b6cc9be009 Merge branch 'backport-xcode-framework-quoting' into xcode-framework-quoting 4f9a71974e Xcode: Restore support for spaces in framework names Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5899
-rw-r--r--Source/cmGlobalXCodeGenerator.cxx2
-rw-r--r--Tests/CMakeLists.txt1
-rw-r--r--Tests/Framework/CMakeLists.txt10
-rw-r--r--Tests/Framework/space.c7
-rw-r--r--Tests/Framework/use_space.c8
5 files changed, 27 insertions, 1 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx
index cc075de..7dd1704 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -3696,7 +3696,7 @@ void cmGlobalXCodeGenerator::AddDependAndLinkInformation(cmXCodeObject* target)
// implicit search path, so we need it
libPaths.Add("-F " + this->XCodeEscapePath(fwDir));
}
- libPaths.Add("-framework " + fwName);
+ libPaths.Add("-framework " + this->XCodeEscapePath(fwName));
} else {
libPaths.Add(this->XCodeEscapePath(cleanPath));
}
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 3a05317..0430afb 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -804,6 +804,7 @@ if(BUILD_TESTING)
${build_generator_args}
--build-project Framework
--build-options
+ -DMAKE_SUPPORTS_SPACES=${MAKE_SUPPORTS_SPACES}
"-DCMAKE_INSTALL_PREFIX:PATH=${CMake_BINARY_DIR}/Tests/Framework/Install"
--test-command bar)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Framework")
diff --git a/Tests/Framework/CMakeLists.txt b/Tests/Framework/CMakeLists.txt
index f741ec2..6e82f86 100644
--- a/Tests/Framework/CMakeLists.txt
+++ b/Tests/Framework/CMakeLists.txt
@@ -83,6 +83,16 @@ if(NOT XCODE OR NOT XCODE_VERSION VERSION_LESS 5)
target_link_libraries(barStatic fooStatic)
endif()
+if(MAKE_SUPPORTS_SPACES AND NOT CMAKE_GENERATOR STREQUAL "Watcom WMake")
+ add_library(space SHARED space.c)
+ set_target_properties(space PROPERTIES
+ FRAMEWORK TRUE
+ OUTPUT_NAME "space space"
+ )
+ add_executable(use_space use_space.c)
+ target_link_libraries(use_space PRIVATE space)
+endif()
+
include(CPack)
if(APPLE)
diff --git a/Tests/Framework/space.c b/Tests/Framework/space.c
new file mode 100644
index 0000000..bf5b0c3
--- /dev/null
+++ b/Tests/Framework/space.c
@@ -0,0 +1,7 @@
+#ifdef _WIN32
+__declspec(dllexport)
+#endif
+ int space(void)
+{
+ return 0;
+}
diff --git a/Tests/Framework/use_space.c b/Tests/Framework/use_space.c
new file mode 100644
index 0000000..bb4893d
--- /dev/null
+++ b/Tests/Framework/use_space.c
@@ -0,0 +1,8 @@
+#ifdef _WIN32
+__declspec(dllimport)
+#endif
+ int space(void);
+int main(void)
+{
+ return space();
+}