[Cmake-commits] CMake branch, next, updated. v3.8.0-rc2-535-g8ef278a
Kitware Robot
kwrobot at kitware.com
Tue Mar 21 10:45:02 EDT 2017
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 8ef278aad3a55c747e5af1ead666a44b25ce5bcd (commit)
via 6c8326749fccd37afd5343d926d650c87ecdfb9f (commit)
via fdb2ba2521998397d97d466b10a8ac2458363625 (commit)
from 8fa2244be202a1de02e869b1ac5a3211eb5d1520 (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=8ef278aad3a55c747e5af1ead666a44b25ce5bcd
commit 8ef278aad3a55c747e5af1ead666a44b25ce5bcd
Merge: 8fa2244 6c83267
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 14:43:44 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Tue Mar 21 10:43:46 2017 -0400
Stage topic 'wip.ipo.module'
Topic-id: 22904
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/558
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6c8326749fccd37afd5343d926d650c87ecdfb9f
commit 6c8326749fccd37afd5343d926d650c87ecdfb9f
Author: Ruslan Baratov <ruslan_baratov at yahoo.com>
AuthorDate: Sat Mar 11 19:56:00 2017 +0800
Commit: Ruslan Baratov <ruslan_baratov at yahoo.com>
CommitDate: Tue Mar 21 22:38:53 2017 +0800
Tests for 'CheckIPOSupported' module
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index 5157b9f..217f0d5 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -293,6 +293,7 @@ add_RunCMake_test(target_link_libraries)
add_RunCMake_test(target_compile_features)
add_RunCMake_test(CheckModules)
+add_RunCMake_test(CheckIPOSupported)
add_RunCMake_test(CommandLine -DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME})
add_RunCMake_test(CommandLineTar)
diff --git a/Tests/RunCMake/CheckIPOSupported/CMakeLists.txt b/Tests/RunCMake/CheckIPOSupported/CMakeLists.txt
new file mode 100644
index 0000000..a0effc9
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/CMakeLists.txt
@@ -0,0 +1,4 @@
+cmake_minimum_required(VERSION 3.0)
+project(${RunCMake_TEST} NONE)
+include(CheckIPOSupported)
+include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake b/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake
new file mode 100644
index 0000000..e304c61
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake
@@ -0,0 +1,9 @@
+include(RunCMake)
+
+run_cmake(unparsed-arguments)
+run_cmake(user-lang-unknown)
+run_cmake(user-lang-fortran)
+run_cmake(default-lang-none)
+run_cmake(not-supported-by-cmake)
+run_cmake(not-supported-by-compiler)
+run_cmake(save-to-result)
diff --git a/Tests/RunCMake/CheckIPOSupported/default-lang-none-result.txt b/Tests/RunCMake/CheckIPOSupported/default-lang-none-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/default-lang-none-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/CheckIPOSupported/default-lang-none-stderr.txt b/Tests/RunCMake/CheckIPOSupported/default-lang-none-stderr.txt
new file mode 100644
index 0000000..dc2c3ad
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/default-lang-none-stderr.txt
@@ -0,0 +1,7 @@
+^CMake Error at .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(message\):
+ IPO is not supported \(no C/CXX/Fortran languages found in ENABLED_LANGUAGES
+ global property\)\.
+Call Stack \(most recent call first\):
+ .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(_ipo_not_supported\)
+ default-lang-none\.cmake:[0-9]+ \(check_ipo_supported\)
+ CMakeLists\.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/CheckIPOSupported/default-lang-none.cmake b/Tests/RunCMake/CheckIPOSupported/default-lang-none.cmake
new file mode 100644
index 0000000..0a2ac69
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/default-lang-none.cmake
@@ -0,0 +1 @@
+check_ipo_supported()
diff --git a/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-result.txt b/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-stderr.txt b/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-stderr.txt
new file mode 100644
index 0000000..f63f30f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-stderr.txt
@@ -0,0 +1,6 @@
+^CMake Error at .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(message\):
+ IPO is not supported \(CMake doesn't support IPO for current compiler\)\.
+Call Stack \(most recent call first\):
+ .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(_ipo_not_supported\)
+ not-supported-by-cmake\.cmake:[0-9]+ \(check_ipo_supported\)
+ CMakeLists\.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake.cmake b/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake.cmake
new file mode 100644
index 0000000..6f61f7e
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake.cmake
@@ -0,0 +1,3 @@
+project(${RunCMake_TEST} LANGUAGES C)
+set(_CMAKE_IPO_SUPPORTED_BY_CMAKE NO)
+check_ipo_supported()
diff --git a/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-result.txt b/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-stderr.txt b/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-stderr.txt
new file mode 100644
index 0000000..73e2f26
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-stderr.txt
@@ -0,0 +1,6 @@
+^CMake Error at .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(message\):
+ IPO is not supported \(compiler doesn't support IPO\)\.
+Call Stack \(most recent call first\):
+ .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(_ipo_not_supported\)
+ not-supported-by-compiler\.cmake:[0-9]+ \(check_ipo_supported\)
+ CMakeLists\.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler.cmake b/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler.cmake
new file mode 100644
index 0000000..652cfd5
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler.cmake
@@ -0,0 +1,4 @@
+project(${RunCMake_TEST} LANGUAGES C)
+set(_CMAKE_IPO_SUPPORTED_BY_CMAKE YES)
+set(_CMAKE_IPO_MAY_BE_SUPPORTED_BY_COMPILER NO)
+check_ipo_supported()
diff --git a/Tests/RunCMake/CheckIPOSupported/save-to-result.cmake b/Tests/RunCMake/CheckIPOSupported/save-to-result.cmake
new file mode 100644
index 0000000..f76db72
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/save-to-result.cmake
@@ -0,0 +1,22 @@
+project(${RunCMake_TEST} LANGUAGES C)
+check_ipo_supported(RESULT result OUTPUT output)
+
+string(COMPARE EQUAL "${result}" "" is_empty)
+if(is_empty)
+ message(FATAL_ERROR "Result variable is empty")
+endif()
+
+string(COMPARE EQUAL "${result}" "YES" is_yes)
+string(COMPARE EQUAL "${result}" "NO" is_no)
+
+if(is_yes)
+ # Compiler supports IPO
+elseif(is_no)
+ # Compiler doesn't support IPO, output should not be empty.
+ string(COMPARE EQUAL "${output}" "" is_empty)
+ if(is_empty)
+ message(FATAL_ERROR "Output is empty")
+ endif()
+else()
+ message(FATAL_ERROR "Unexpected result: ${result}")
+endif()
diff --git a/Tests/RunCMake/CheckIPOSupported/unparsed-arguments-result.txt b/Tests/RunCMake/CheckIPOSupported/unparsed-arguments-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/unparsed-arguments-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/CheckIPOSupported/unparsed-arguments-stderr.txt b/Tests/RunCMake/CheckIPOSupported/unparsed-arguments-stderr.txt
new file mode 100644
index 0000000..a3fee53
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/unparsed-arguments-stderr.txt
@@ -0,0 +1,5 @@
+^CMake Error at .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(message\):
+ Unparsed arguments: xxx
+Call Stack \(most recent call first\):
+ unparsed-arguments\.cmake:[0-9]+ \(check_ipo_supported\)
+ CMakeLists\.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/CheckIPOSupported/unparsed-arguments.cmake b/Tests/RunCMake/CheckIPOSupported/unparsed-arguments.cmake
new file mode 100644
index 0000000..3ee7326
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/unparsed-arguments.cmake
@@ -0,0 +1 @@
+check_ipo_supported(RESULT result OUTPUT output xxx)
diff --git a/Tests/RunCMake/CheckIPOSupported/user-lang-fortran-result.txt b/Tests/RunCMake/CheckIPOSupported/user-lang-fortran-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/user-lang-fortran-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/CheckIPOSupported/user-lang-fortran-stderr.txt b/Tests/RunCMake/CheckIPOSupported/user-lang-fortran-stderr.txt
new file mode 100644
index 0000000..2cb595d
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/user-lang-fortran-stderr.txt
@@ -0,0 +1,6 @@
+^CMake Error at .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(message\):
+ IPO is not supported \(Fortran is not supported\)\.
+Call Stack \(most recent call first\):
+ .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(_ipo_not_supported\)
+ user-lang-fortran\.cmake:[0-9]+ \(check_ipo_supported\)
+ CMakeLists\.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/CheckIPOSupported/user-lang-fortran.cmake b/Tests/RunCMake/CheckIPOSupported/user-lang-fortran.cmake
new file mode 100644
index 0000000..275dbd9
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/user-lang-fortran.cmake
@@ -0,0 +1 @@
+check_ipo_supported(LANGUAGES "Fortran")
diff --git a/Tests/RunCMake/CheckIPOSupported/user-lang-unknown-result.txt b/Tests/RunCMake/CheckIPOSupported/user-lang-unknown-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/user-lang-unknown-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/CheckIPOSupported/user-lang-unknown-stderr.txt b/Tests/RunCMake/CheckIPOSupported/user-lang-unknown-stderr.txt
new file mode 100644
index 0000000..278ba0b
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/user-lang-unknown-stderr.txt
@@ -0,0 +1,6 @@
+^CMake Error at .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(message\):
+ IPO is not supported \(language\(s\) 'UnknownLanguage' not supported\)\.
+Call Stack \(most recent call first\):
+ .*/Modules/CheckIPOSupported\.cmake:[0-9]+ \(_ipo_not_supported\)
+ user-lang-unknown\.cmake:[0-9]+ \(check_ipo_supported\)
+ CMakeLists\.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/CheckIPOSupported/user-lang-unknown.cmake b/Tests/RunCMake/CheckIPOSupported/user-lang-unknown.cmake
new file mode 100644
index 0000000..ac743ad
--- /dev/null
+++ b/Tests/RunCMake/CheckIPOSupported/user-lang-unknown.cmake
@@ -0,0 +1 @@
+check_ipo_supported(LANGUAGES UnknownLanguage)
-----------------------------------------------------------------------
Summary of changes:
Help/manual/cmake-modules.7.rst | 1 +
Help/module/CheckIPOSupported.rst | 1 +
Help/release/dev/CheckIPOSupported.rst | 6 +
Modules/CheckIPOSupported.cmake | 215 ++++++++++++++++++++
Modules/CheckIPOSupported/CMakeLists-C.txt.in | 8 +
Modules/CheckIPOSupported/CMakeLists-CXX.txt.in | 8 +
Modules/CheckIPOSupported/foo.c | 4 +
Modules/CheckIPOSupported/foo.cpp | 4 +
Modules/CheckIPOSupported/main.c | 6 +
Modules/CheckIPOSupported/main.cpp | 6 +
Modules/Platform/Linux-Intel.cmake | 5 +
Tests/RunCMake/CMakeLists.txt | 1 +
Tests/RunCMake/CheckIPOSupported/CMakeLists.txt | 4 +
.../RunCMake/CheckIPOSupported/RunCMakeTest.cmake | 9 +
.../default-lang-none-result.txt} | 0
.../CheckIPOSupported/default-lang-none-stderr.txt | 7 +
.../CheckIPOSupported/default-lang-none.cmake | 1 +
.../not-supported-by-cmake-result.txt} | 0
.../not-supported-by-cmake-stderr.txt | 6 +
.../CheckIPOSupported/not-supported-by-cmake.cmake | 3 +
.../not-supported-by-compiler-result.txt} | 0
.../not-supported-by-compiler-stderr.txt | 6 +
.../not-supported-by-compiler.cmake | 4 +
.../CheckIPOSupported/save-to-result.cmake | 22 ++
.../unparsed-arguments-result.txt} | 0
.../unparsed-arguments-stderr.txt | 5 +
.../CheckIPOSupported/unparsed-arguments.cmake | 1 +
.../user-lang-fortran-result.txt} | 0
.../CheckIPOSupported/user-lang-fortran-stderr.txt | 6 +
.../CheckIPOSupported/user-lang-fortran.cmake | 1 +
.../user-lang-unknown-result.txt} | 0
.../CheckIPOSupported/user-lang-unknown-stderr.txt | 6 +
.../CheckIPOSupported/user-lang-unknown.cmake | 1 +
33 files changed, 347 insertions(+)
create mode 100644 Help/module/CheckIPOSupported.rst
create mode 100644 Help/release/dev/CheckIPOSupported.rst
create mode 100644 Modules/CheckIPOSupported.cmake
create mode 100644 Modules/CheckIPOSupported/CMakeLists-C.txt.in
create mode 100644 Modules/CheckIPOSupported/CMakeLists-CXX.txt.in
create mode 100644 Modules/CheckIPOSupported/foo.c
create mode 100644 Modules/CheckIPOSupported/foo.cpp
create mode 100644 Modules/CheckIPOSupported/main.c
create mode 100644 Modules/CheckIPOSupported/main.cpp
create mode 100644 Tests/RunCMake/CheckIPOSupported/CMakeLists.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/RunCMakeTest.cmake
copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => CheckIPOSupported/default-lang-none-result.txt} (100%)
create mode 100644 Tests/RunCMake/CheckIPOSupported/default-lang-none-stderr.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/default-lang-none.cmake
copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => CheckIPOSupported/not-supported-by-cmake-result.txt} (100%)
create mode 100644 Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake-stderr.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/not-supported-by-cmake.cmake
copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => CheckIPOSupported/not-supported-by-compiler-result.txt} (100%)
create mode 100644 Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler-stderr.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/not-supported-by-compiler.cmake
create mode 100644 Tests/RunCMake/CheckIPOSupported/save-to-result.cmake
copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => CheckIPOSupported/unparsed-arguments-result.txt} (100%)
create mode 100644 Tests/RunCMake/CheckIPOSupported/unparsed-arguments-stderr.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/unparsed-arguments.cmake
copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => CheckIPOSupported/user-lang-fortran-result.txt} (100%)
create mode 100644 Tests/RunCMake/CheckIPOSupported/user-lang-fortran-stderr.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/user-lang-fortran.cmake
copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => CheckIPOSupported/user-lang-unknown-result.txt} (100%)
create mode 100644 Tests/RunCMake/CheckIPOSupported/user-lang-unknown-stderr.txt
create mode 100644 Tests/RunCMake/CheckIPOSupported/user-lang-unknown.cmake
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list