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 70c864ae8ffec43956e751a2ab600862b4fdac7d (commit) via ad262917d96aa4d6faeff3c9dfecf684cebbe123 (commit) via 48fe617e667d2e6b1e471cfb56346de51f984ba5 (commit) via d2c2319d6479d4319ef298f6178b00e953a9b179 (commit) from b104667b9132bdc13fe42bde140378d579bfb3e6 (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 ----------------------------------------------------------------- http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=70c864ae8ffec43956e751a2ab600862b4fdac7d commit 70c864ae8ffec43956e751a2ab600862b4fdac7d Merge: b104667 ad26291 Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Mon Aug 31 15:06:54 2015 -0400 Commit: CMake Topic Stage <kwro...@kitware.com> CommitDate: Mon Aug 31 15:06:54 2015 -0400 Merge topic 'fix-ios-install' into next ad262917 Xcode: Add unit test for iOS project install (#12506) 48fe617e Fix installation of iOS targets (#12506) d2c2319d Replace CMAKE_XCODE_EFFECTIVE_PLATFORMS with call to PlatformIsAppleIos http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ad262917d96aa4d6faeff3c9dfecf684cebbe123 commit ad262917d96aa4d6faeff3c9dfecf684cebbe123 Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Sat Aug 15 22:37:35 2015 +0200 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Wed Aug 26 20:54:52 2015 +0200 Xcode: Add unit test for iOS project install (#12506) diff --git a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake index ef81739..382c990 100644 --- a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake +++ b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake @@ -11,6 +11,20 @@ endif() # Use a single build tree for a few tests without cleaning. if(NOT XCODE_VERSION VERSION_LESS 5) + set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeInstallIOS-build) + set(RunCMake_TEST_NO_CLEAN 1) + set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX:PATH=${RunCMake_BINARY_DIR}/ios_install") + + file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}") + file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}") + + run_cmake(XcodeInstallIOS) + run_cmake_command(XcodeInstallIOS-install ${CMAKE_COMMAND} --build . --target install) + + unset(RunCMake_TEST_BINARY_DIR) + unset(RunCMake_TEST_NO_CLEAN) + unset(RunCMake_TEST_OPTIONS) + set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeBundlesOSX-build) set(RunCMake_TEST_NO_CLEAN 1) set(RunCMake_TEST_OPTIONS "-DTEST_IOS=OFF") diff --git a/Tests/RunCMake/XcodeProject/XcodeInstallIOS-install-stdout.txt b/Tests/RunCMake/XcodeProject/XcodeInstallIOS-install-stdout.txt new file mode 100644 index 0000000..f2478be --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeInstallIOS-install-stdout.txt @@ -0,0 +1,2 @@ +-- Install configuration: .* +-- Installing: .*/ios_install/lib/libfoo.a diff --git a/Tests/RunCMake/XcodeProject/XcodeInstallIOS.cmake b/Tests/RunCMake/XcodeProject/XcodeInstallIOS.cmake new file mode 100644 index 0000000..a797410 --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeInstallIOS.cmake @@ -0,0 +1,12 @@ +cmake_minimum_required(VERSION 2.8.5) + +project(XcodeInstallIOS) + +set(CMAKE_OSX_SYSROOT iphoneos) +set(XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO") +set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "NO") + +set(CMAKE_OSX_ARCHITECTURES "armv7;i386") + +add_library(foo STATIC foo.cpp) +install(TARGETS foo ARCHIVE DESTINATION lib) diff --git a/Tests/RunCMake/XcodeProject/foo.cpp b/Tests/RunCMake/XcodeProject/foo.cpp new file mode 100644 index 0000000..2fb55ee --- /dev/null +++ b/Tests/RunCMake/XcodeProject/foo.cpp @@ -0,0 +1 @@ +void foo() { } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=48fe617e667d2e6b1e471cfb56346de51f984ba5 commit 48fe617e667d2e6b1e471cfb56346de51f984ba5 Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Thu Aug 13 13:03:02 2015 +0300 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Tue Aug 25 21:53:51 2015 +0200 Fix installation of iOS targets (#12506) Since cmTarget::ComputeOutputDir results can be used in CMake code of script cmake_install.cmake and in Xcode internals, string ${EFFECTIVE_PLATFORM_NAME} should be used instead of $(EFFECTIVE_PLATFORM_NAME) because it works for both. Value of CMAKE_CFG_INTDIR can't be used in BUILD_TYPE argument of install command since it contains $(EFFECTIVE_PLATFORM_NAME) (e.g. equals to `Release-iphoneos`, `Debug-iphoneos`, etc.). diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 503c455..40f1fcf 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -2427,7 +2427,17 @@ void cmGlobalGenerator::CreateDefaultGlobalTargets(cmTargets* targets) if ( cmakeCfgIntDir && *cmakeCfgIntDir && cmakeCfgIntDir[0] != '.' ) { std::string cfgArg = "-DBUILD_TYPE="; - cfgArg += mf->GetDefinition("CMAKE_CFG_INTDIR"); + bool iosPlatform = mf->PlatformIsAppleIos(); + if(iosPlatform) + { + cfgArg += "$(CONFIGURATION)"; + singleLine.push_back(cfgArg); + cfgArg = "-DEFFECTIVE_PLATFORM_NAME=$(EFFECTIVE_PLATFORM_NAME)"; + } + else + { + cfgArg += mf->GetDefinition("CMAKE_CFG_INTDIR"); + } singleLine.push_back(cfgArg); } singleLine.push_back("-P"); diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index da314a6..d6d509c 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -3568,7 +3568,7 @@ bool cmTarget::ComputeOutputDir(const std::string& config, { bool iosPlatform = this->Makefile->PlatformIsAppleIos(); std::string suffix = - usesDefaultOutputDir && iosPlatform ? "$(EFFECTIVE_PLATFORM_NAME)" : ""; + usesDefaultOutputDir && iosPlatform ? "${EFFECTIVE_PLATFORM_NAME}" : ""; this->Makefile->GetGlobalGenerator()-> AppendDirectoryForConfig("/", conf, suffix, out); } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d2c2319d6479d4319ef298f6178b00e953a9b179 commit d2c2319d6479d4319ef298f6178b00e953a9b179 Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Thu Aug 20 22:29:49 2015 +0200 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Tue Aug 25 21:53:51 2015 +0200 Replace CMAKE_XCODE_EFFECTIVE_PLATFORMS with call to PlatformIsAppleIos Currently the CMAKE_XCODE_EFFECTIVE_PLATFORMS property acts only as a kind of toggle switch to enable iOS project layout features. But instead of relying on this undocumented property, better detect the presence of an iOS SDK directly. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 49b3239..da314a6 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -3566,10 +3566,9 @@ bool cmTarget::ComputeOutputDir(const std::string& config, // The generator may add the configuration's subdirectory. if(!conf.empty()) { - const char *platforms = this->Makefile->GetDefinition( - "CMAKE_XCODE_EFFECTIVE_PLATFORMS"); + bool iosPlatform = this->Makefile->PlatformIsAppleIos(); std::string suffix = - usesDefaultOutputDir && platforms ? "$(EFFECTIVE_PLATFORM_NAME)" : ""; + usesDefaultOutputDir && iosPlatform ? "$(EFFECTIVE_PLATFORM_NAME)" : ""; this->Makefile->GetGlobalGenerator()-> AppendDirectoryForConfig("/", conf, suffix, out); } diff --git a/Tests/RunCMake/XcodeProject/XcodeBundles.cmake b/Tests/RunCMake/XcodeProject/XcodeBundles.cmake index d5cb51f..2cbccfa 100644 --- a/Tests/RunCMake/XcodeProject/XcodeBundles.cmake +++ b/Tests/RunCMake/XcodeProject/XcodeBundles.cmake @@ -6,7 +6,6 @@ enable_language(C) if(TEST_IOS) set(CMAKE_OSX_SYSROOT iphoneos) set(CMAKE_OSX_ARCHITECTURES "armv7") - set(CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphoneos;-iphonesimulator") set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO") set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "NO") endif(TEST_IOS) diff --git a/Tests/iOSNavApp/CMakeLists.txt b/Tests/iOSNavApp/CMakeLists.txt index 12c3ada..1fc33e0 100644 --- a/Tests/iOSNavApp/CMakeLists.txt +++ b/Tests/iOSNavApp/CMakeLists.txt @@ -3,7 +3,6 @@ project(NavApp3) set(CMAKE_OSX_SYSROOT iphoneos4.3) set(CMAKE_OSX_ARCHITECTURES "armv6;armv7;i386") -set(CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphoneos;-iphonesimulator") include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalGenerator.cxx | 12 +++++++++++- Source/cmTarget.cxx | 5 ++--- Tests/RunCMake/XcodeProject/RunCMakeTest.cmake | 14 ++++++++++++++ Tests/RunCMake/XcodeProject/XcodeBundles.cmake | 1 - .../XcodeProject/XcodeInstallIOS-install-stdout.txt | 2 ++ Tests/RunCMake/XcodeProject/XcodeInstallIOS.cmake | 12 ++++++++++++ Tests/RunCMake/XcodeProject/foo.cpp | 1 + Tests/iOSNavApp/CMakeLists.txt | 1 - 8 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 Tests/RunCMake/XcodeProject/XcodeInstallIOS-install-stdout.txt create mode 100644 Tests/RunCMake/XcodeProject/XcodeInstallIOS.cmake create mode 100644 Tests/RunCMake/XcodeProject/foo.cpp hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits