[Cmake-commits] CMake branch, next, updated. v3.4.0-rc2-925-gaddb1da
Gregor Jasny
gjasny at googlemail.com
Fri Oct 23 16:21:12 EDT 2015
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via addb1dad4f1f99e054f3fc3e0f94d571ef8842c8 (commit)
via a91eebebdb2a012c233db7869ec0ade534c4dd57 (commit)
from 8fbc8e473b347d69331cd120aea3dd6c33e98599 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=addb1dad4f1f99e054f3fc3e0f94d571ef8842c8
commit addb1dad4f1f99e054f3fc3e0f94d571ef8842c8
Merge: 8fbc8e4 a91eebe
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Fri Oct 23 16:21:11 2015 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Oct 23 16:21:11 2015 -0400
Merge topic 'xcode-watch-and-tvos' into next
a91eebeb Xcode: Recognise Watch and TV OS as embedded platforms
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a91eebebdb2a012c233db7869ec0ade534c4dd57
commit a91eebebdb2a012c233db7869ec0ade534c4dd57
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Fri Oct 23 22:19:43 2015 +0200
Commit: Gregor Jasny <gjasny at googlemail.com>
CommitDate: Fri Oct 23 22:19:43 2015 +0200
Xcode: Recognise Watch and TV OS as embedded platforms
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index a1f143a..148b4a8 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -2407,10 +2407,23 @@ bool cmMakefile::PlatformIsAppleIos() const
sdkRoot = this->GetSafeDefinition("CMAKE_OSX_SYSROOT");
sdkRoot = cmSystemTools::LowerCase(sdkRoot);
- return sdkRoot.find("iphoneos") == 0 ||
- sdkRoot.find("/iphoneos") != std::string::npos ||
- sdkRoot.find("iphonesimulator") == 0 ||
- sdkRoot.find("/iphonesimulator") != std::string::npos;
+ const std::string embedded[] =
+ {
+ "appletvos", "appletvsimulator",
+ "iphoneos", "iphonesimulator",
+ "watchos", "watchsimulator",
+ };
+
+ for(size_t i = 0; i < sizeof(embedded) / sizeof(embedded[0]); ++i)
+ {
+ if(sdkRoot.find(embedded[i]) == 0 ||
+ sdkRoot.find(std::string("/") + embedded[i]) != std::string::npos)
+ {
+ return true;
+ }
+ }
+
+ return false;
}
const char* cmMakefile::GetSONameFlag(const std::string& language) const
diff --git a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
index 8ab618b..3b7b9f4 100644
--- a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
+++ b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
@@ -55,6 +55,38 @@ if(NOT XCODE_VERSION VERSION_LESS 5)
endif()
if(NOT XCODE_VERSION VERSION_LESS 7)
+ set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesWatchOS-build)
+ set(RunCMake_TEST_NO_CLEAN 1)
+ set(RunCMake_TEST_OPTIONS "-DTEST_WATCHOS=ON")
+
+ file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+ file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+ run_cmake(XcodeBundles)
+ run_cmake_command(XcodeBundles-build ${CMAKE_COMMAND} --build .)
+
+ unset(RunCMake_TEST_BINARY_DIR)
+ unset(RunCMake_TEST_NO_CLEAN)
+ unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(NOT XCODE_VERSION VERSION_LESS 7.1)
+ set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesTvOS-build)
+ set(RunCMake_TEST_NO_CLEAN 1)
+ set(RunCMake_TEST_OPTIONS "-DTEST_TVOS=ON")
+
+ file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
+ file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
+
+ run_cmake(XcodeBundles)
+ run_cmake_command(XcodeBundles-build ${CMAKE_COMMAND} --build .)
+
+ unset(RunCMake_TEST_BINARY_DIR)
+ unset(RunCMake_TEST_NO_CLEAN)
+ unset(RunCMake_TEST_OPTIONS)
+endif()
+
+if(NOT XCODE_VERSION VERSION_LESS 7)
set(RunCMake_TEST_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=${RunCMake_SOURCE_DIR}/osx.cmake")
run_cmake(XcodeTbdStub)
unset(RunCMake_TEST_OPTIONS)
diff --git a/Tests/RunCMake/XcodeProject/XcodeBundles.cmake b/Tests/RunCMake/XcodeProject/XcodeBundles.cmake
index 2cbccfa..0fdc6af 100644
--- a/Tests/RunCMake/XcodeProject/XcodeBundles.cmake
+++ b/Tests/RunCMake/XcodeProject/XcodeBundles.cmake
@@ -10,6 +10,22 @@ if(TEST_IOS)
set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "NO")
endif(TEST_IOS)
+if(TEST_WATCHOS)
+ set(CMAKE_OSX_SYSROOT watchos)
+ set(CMAKE_OSX_ARCHITECTURES "armv7k")
+ set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO")
+ set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "")
+ set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "YES")
+endif()
+
+if(TEST_TVOS)
+ set(CMAKE_OSX_SYSROOT appletvos)
+ set(CMAKE_OSX_ARCHITECTURES "arm64")
+ set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO")
+ set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "")
+ set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "YES")
+endif()
+
# App Bundle
add_executable(AppBundle MACOSX_BUNDLE main.m)
@@ -35,11 +51,13 @@ endif()
# Bundle
-add_library(Bundle MODULE main.c)
-set_target_properties(Bundle PROPERTIES BUNDLE TRUE)
+if(NOT CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE)
+ add_library(Bundle MODULE main.c)
+ set_target_properties(Bundle PROPERTIES BUNDLE TRUE)
-add_custom_target(BundleTest ALL
- COMMAND ${CMAKE_COMMAND} -E copy
- "$<TARGET_FILE:Bundle>" "$<TARGET_FILE:Bundle>.old")
+ add_custom_target(BundleTest ALL
+ COMMAND ${CMAKE_COMMAND} -E copy
+ "$<TARGET_FILE:Bundle>" "$<TARGET_FILE:Bundle>.old")
-add_dependencies(BundleTest Bundle)
+ add_dependencies(BundleTest Bundle)
+endif()
-----------------------------------------------------------------------
Summary of changes:
Source/cmMakefile.cxx | 21 +++++++++++++---
Tests/RunCMake/XcodeProject/RunCMakeTest.cmake | 32 ++++++++++++++++++++++++
Tests/RunCMake/XcodeProject/XcodeBundles.cmake | 30 +++++++++++++++++-----
3 files changed, 73 insertions(+), 10 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list