[Cmake-commits] CMake branch, next, updated. v3.3.1-2773-gcfbf387
Gregor Jasny
gjasny at googlemail.com
Sun Sep 6 13:20:31 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 cfbf38704d2ee4caedf3fff51244855b076a152d (commit)
via 9cdf6ef48d62fed477cc9cf48995d7c91382f5f6 (commit)
via 1aa29f0db614f1292cff24633d61218d82490d1e (commit)
from 6985b37195c2b0336f3702cba64fb83d52a7d2b1 (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=cfbf38704d2ee4caedf3fff51244855b076a152d
commit cfbf38704d2ee4caedf3fff51244855b076a152d
Merge: 6985b37 9cdf6ef
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Sun Sep 6 13:20:30 2015 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Sun Sep 6 13:20:30 2015 -0400
Merge topic 'more-swift2-fixes' into next
9cdf6ef4 Swift: Add proper Swift compiler test
1aa29f0d Swift: Remove positive Swift language tests
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9cdf6ef48d62fed477cc9cf48995d7c91382f5f6
commit 9cdf6ef48d62fed477cc9cf48995d7c91382f5f6
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Sun Sep 6 18:19:18 2015 +0200
Commit: Gregor Jasny <gjasny at googlemail.com>
CommitDate: Sun Sep 6 18:19:18 2015 +0200
Swift: Add proper Swift compiler test
This catches for example the unavailability of Swift with
Xcode Beta6 and macosx10.10 SDK.
diff --git a/Modules/CMakeTestSwiftCompiler.cmake b/Modules/CMakeTestSwiftCompiler.cmake
index 9186426..89849fb 100644
--- a/Modules/CMakeTestSwiftCompiler.cmake
+++ b/Modules/CMakeTestSwiftCompiler.cmake
@@ -12,4 +12,54 @@
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
-set(CMAKE_Swift_COMPILER_WORKS 1)
+if(CMAKE_Swift_COMPILER_FORCED)
+ # The compiler configuration was forced by the user.
+ # Assume the user has configured all compiler information.
+ set(CMAKE_Swift_COMPILER_WORKS TRUE)
+ return()
+endif()
+
+include(CMakeTestCompilerCommon)
+
+# Remove any cached result from an older CMake version.
+# We now store this in CMakeSwiftCompiler.cmake.
+unset(CMAKE_Swift_COMPILER_WORKS CACHE)
+
+# This file is used by EnableLanguage in cmGlobalGenerator to
+# determine that that selected C++ compiler can actually compile
+# and link the most basic of programs. If not, a fatal error
+# is set and cmake stops processing commands and will not generate
+# any makefiles or projects.
+if(NOT CMAKE_Swift_COMPILER_WORKS)
+ PrintTestCompilerStatus("Swift" "")
+ file(WRITE ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/main.swift
+ "import Foundation\n"
+ "print(\"CMake\")\n")
+ try_compile(CMAKE_Swift_COMPILER_WORKS ${CMAKE_BINARY_DIR}
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/main.swift
+ OUTPUT_VARIABLE __CMAKE_Swift_COMPILER_OUTPUT)
+ # Move result from cache to normal variable.
+ set(CMAKE_Swift_COMPILER_WORKS ${CMAKE_Swift_COMPILER_WORKS})
+ unset(CMAKE_Swift_COMPILER_WORKS CACHE)
+ set(Swift_TEST_WAS_RUN 1)
+endif()
+
+if(NOT CMAKE_Swift_COMPILER_WORKS)
+ PrintTestCompilerStatus("Swift" " -- broken")
+ file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
+ "Determining if the Swift compiler works failed with "
+ "the following output:\n${__CMAKE_Swift_COMPILER_OUTPUT}\n\n")
+ message(FATAL_ERROR "The Swift compiler \"${CMAKE_Swift_COMPILER}\" "
+ "is not able to compile a simple test program.\nIt fails "
+ "with the following output:\n ${__CMAKE_Swift_COMPILER_OUTPUT}\n\n"
+ "CMake will not be able to correctly generate this project.")
+else()
+ if(Swift_TEST_WAS_RUN)
+ PrintTestCompilerStatus("Swift" " -- works")
+ file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
+ "Determining if the Swift compiler works passed with "
+ "the following output:\n${__CMAKE_Swift_COMPILER_OUTPUT}\n\n")
+ endif()
+endif()
+
+unset(__CMAKE_Swift_COMPILER_OUTPUT)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1aa29f0db614f1292cff24633d61218d82490d1e
commit 1aa29f0db614f1292cff24633d61218d82490d1e
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Sun Sep 6 18:14:35 2015 +0200
Commit: Gregor Jasny <gjasny at googlemail.com>
CommitDate: Sun Sep 6 18:14:35 2015 +0200
Swift: Remove positive Swift language tests
It's relatively complex to determine in advance if a Xcode, SDK,
and Deployment Target configuration is capable of running Swift.
For example the following combinations do not work:
* deployment target < OS X 10.9
* Xcode 6.2 and macosx10.9 SDK
* Xcode 7 Beta 6 and macosx10.10 SDK
Until we found out how to query Xcode for Swift support in a reliable
way, the RunCMake.Swift test cases will be restricted to negative ones.
diff --git a/Tests/RunCMake/Swift/Enable-stdout.txt b/Tests/RunCMake/Swift/Enable-stdout.txt
deleted file mode 100644
index 39e133f..0000000
--- a/Tests/RunCMake/Swift/Enable-stdout.txt
+++ /dev/null
@@ -1 +0,0 @@
--- The Swift compiler identification is Apple
diff --git a/Tests/RunCMake/Swift/Enable.cmake b/Tests/RunCMake/Swift/Enable.cmake
deleted file mode 100644
index 19f297a..0000000
--- a/Tests/RunCMake/Swift/Enable.cmake
+++ /dev/null
@@ -1 +0,0 @@
-enable_language(Swift)
diff --git a/Tests/RunCMake/Swift/RunCMakeTest.cmake b/Tests/RunCMake/Swift/RunCMakeTest.cmake
index 0a57121..4864295 100644
--- a/Tests/RunCMake/Swift/RunCMakeTest.cmake
+++ b/Tests/RunCMake/Swift/RunCMakeTest.cmake
@@ -3,8 +3,6 @@ include(RunCMake)
if(RunCMake_GENERATOR STREQUAL Xcode)
if(XCODE_BELOW_6_1)
run_cmake(XcodeTooOld)
- else()
- run_cmake(Enable)
endif()
else()
run_cmake(NotSupported)
-----------------------------------------------------------------------
Summary of changes:
Modules/CMakeTestSwiftCompiler.cmake | 52 ++++++++++++++++++++++++++++++-
Tests/RunCMake/Swift/Enable-stdout.txt | 1 -
Tests/RunCMake/Swift/Enable.cmake | 1 -
Tests/RunCMake/Swift/RunCMakeTest.cmake | 2 --
4 files changed, 51 insertions(+), 5 deletions(-)
delete mode 100644 Tests/RunCMake/Swift/Enable-stdout.txt
delete mode 100644 Tests/RunCMake/Swift/Enable.cmake
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list