[Cmake-commits] CMake branch, master, updated. v3.9.1-575-g797196c
Kitware Robot
kwrobot at kitware.com
Thu Aug 24 09:35:07 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, master has been updated
via 797196c8a7d1a21d1551357f244daa23cf7c918f (commit)
via 65ca67cef19bae85c4fd3582b474e9f95d3c9eb1 (commit)
via 94299c496d54d037db35575447b011c6c8a35b0a (commit)
via 061b4f24be8281a1504f6993602d79b61b862d6d (commit)
via efd0c013373f99e1e45310e24fced72d439d4adf (commit)
via 90a34ff79196c90b64ab16066f957e51a78a7375 (commit)
via 6756b552eedbe3f2185e02638701c11cd5799b86 (commit)
via fa114e7d708b76f33878f6f82a6c2a2e50c1c10f (commit)
via e66e8e891454b4addcb7dbd57a8bdc5eeaf7bff3 (commit)
from fe19fda2aa2595622c463fccaa8b36a91e4521c4 (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=797196c8a7d1a21d1551357f244daa23cf7c918f
commit 797196c8a7d1a21d1551357f244daa23cf7c918f
Merge: 65ca67c efd0c01
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Aug 24 13:34:03 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Aug 24 09:34:43 2017 -0400
Merge topic 'vs-sdk-refs'
efd0c013 VS: Fix VS_SDK_REFERENCES when target is not a Windows 10 app
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !1166
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=65ca67cef19bae85c4fd3582b474e9f95d3c9eb1
commit 65ca67cef19bae85c4fd3582b474e9f95d3c9eb1
Merge: 94299c4 fa114e7
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Aug 24 13:33:38 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Aug 24 09:34:22 2017 -0400
Merge topic 'boost-1.65'
fa114e7d FindBoost: Add Boost 1.65 dependencies
e66e8e89 BoostScanDeps: Special case python and numpy and variants
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !1172
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=94299c496d54d037db35575447b011c6c8a35b0a
commit 94299c496d54d037db35575447b011c6c8a35b0a
Merge: 061b4f2 90a34ff
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Aug 24 13:33:18 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Aug 24 09:33:55 2017 -0400
Merge topic 'ninja-gfortran-fpreprocessed'
90a34ff7 Ninja: Fix references to source files in gfortran diagnostics
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !1146
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=061b4f24be8281a1504f6993602d79b61b862d6d
commit 061b4f24be8281a1504f6993602d79b61b862d6d
Merge: fe19fda 6756b55
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Aug 24 13:32:46 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Aug 24 09:33:24 2017 -0400
Merge topic 'ipo-test-output'
6756b552 Tests: Print more info on CheckIPOSupported test failure
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !1177
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=efd0c013373f99e1e45310e24fced72d439d4adf
commit efd0c013373f99e1e45310e24fced72d439d4adf
Author: Roc Ramon <rcrmn16 at gmail.com>
AuthorDate: Mon Aug 21 09:08:37 2017 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Wed Aug 23 15:43:46 2017 -0400
VS: Fix VS_SDK_REFERENCES when target is not a Windows 10 app
Close the `<ItemGroup>` element whenever it is opened.
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index e1a0c83..35b7350 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -3698,10 +3698,10 @@ void cmVisualStudio10TargetGenerator::WriteSDKReferences()
this->WriteSingleSDKReference("WindowsIoT", iotExtensionsVersion);
}
}
+ }
- if (hasWrittenItemGroup) {
- this->WriteString("</ItemGroup>\n", 1);
- }
+ if (hasWrittenItemGroup) {
+ this->WriteString("</ItemGroup>\n", 1);
}
}
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=90a34ff79196c90b64ab16066f957e51a78a7375
commit 90a34ff79196c90b64ab16066f957e51a78a7375
Author: Raul Laasner <raullaasner at gmail.com>
AuthorDate: Wed Aug 16 14:12:35 2017 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Wed Aug 23 15:32:44 2017 -0400
Ninja: Fix references to source files in gfortran diagnostics
The Ninja generator preprocesses and compiles separately for Fortran.
When compiling, tell gfortran that the source is already preprocessed so
that it will honor the `# <line>` directives when producing diagnostics
messages.
Fixes: #17160
diff --git a/Modules/Compiler/GNU-Fortran.cmake b/Modules/Compiler/GNU-Fortran.cmake
index 94dc275..c333d50 100644
--- a/Modules/Compiler/GNU-Fortran.cmake
+++ b/Modules/Compiler/GNU-Fortran.cmake
@@ -7,6 +7,8 @@ set(CMAKE_Fortran_PREPROCESS_SOURCE
set(CMAKE_Fortran_FORMAT_FIXED_FLAG "-ffixed-form")
set(CMAKE_Fortran_FORMAT_FREE_FLAG "-ffree-form")
+set(CMAKE_Fortran_POSTPROCESS_FLAG "-fpreprocessed")
+
# No -DNDEBUG for Fortran.
string(APPEND CMAKE_Fortran_FLAGS_MINSIZEREL_INIT " -Os")
string(APPEND CMAKE_Fortran_FLAGS_RELEASE_INIT " -O3")
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx
index 7cc6ede..4b16dc7 100644
--- a/Source/cmNinjaTargetGenerator.cxx
+++ b/Source/cmNinjaTargetGenerator.cxx
@@ -891,9 +891,15 @@ void cmNinjaTargetGenerator::WriteObjectBuildStatement(
// The actual compilation will now use the preprocessed source.
explicitDeps.push_back(ppFileName);
- // Preprocessing and compilation use the same flags.
+ // Preprocessing and compilation generally use the same flags.
ppVars["FLAGS"] = vars["FLAGS"];
+ // In case compilation requires flags that are incompatible with
+ // preprocessing, include them here.
+ std::string const postFlag =
+ this->Makefile->GetSafeDefinition("CMAKE_Fortran_POSTPROCESS_FLAG");
+ this->LocalGenerator->AppendFlags(vars["FLAGS"], postFlag);
+
// Move preprocessor definitions to the preprocessor build statement.
std::swap(ppVars["DEFINES"], vars["DEFINES"]);
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6756b552eedbe3f2185e02638701c11cd5799b86
commit 6756b552eedbe3f2185e02638701c11cd5799b86
Author: Brad King <brad.king at kitware.com>
AuthorDate: Wed Aug 23 08:30:32 2017 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Wed Aug 23 08:43:28 2017 -0400
Tests: Print more info on CheckIPOSupported test failure
diff --git a/Tests/Module/CheckIPOSupported-C/CMakeLists.txt b/Tests/Module/CheckIPOSupported-C/CMakeLists.txt
index 607dcd3..4a41a98 100644
--- a/Tests/Module/CheckIPOSupported-C/CMakeLists.txt
+++ b/Tests/Module/CheckIPOSupported-C/CMakeLists.txt
@@ -4,11 +4,12 @@ project(CheckIPOSupported-C LANGUAGES C)
cmake_policy(SET CMP0069 NEW)
include(CheckIPOSupported)
-check_ipo_supported(RESULT ipo_supported)
+check_ipo_supported(RESULT ipo_supported OUTPUT ipo_output)
if(ipo_supported)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
elseif(CMake_TEST_IPO_WORKS_C)
- message(FATAL_ERROR "IPO expected to work")
+ string(REPLACE "\n" "\n " ipo_output "${ipo_output}")
+ message(FATAL_ERROR "IPO expected to work, but the check failed:\n ${ipo_output}")
endif()
add_library(foo foo.c)
diff --git a/Tests/Module/CheckIPOSupported-CXX/CMakeLists.txt b/Tests/Module/CheckIPOSupported-CXX/CMakeLists.txt
index 2dede93..1bb2b84 100644
--- a/Tests/Module/CheckIPOSupported-CXX/CMakeLists.txt
+++ b/Tests/Module/CheckIPOSupported-CXX/CMakeLists.txt
@@ -4,11 +4,12 @@ project(CheckIPOSupported-CXX LANGUAGES CXX)
cmake_policy(SET CMP0069 NEW)
include(CheckIPOSupported)
-check_ipo_supported(RESULT ipo_supported)
+check_ipo_supported(RESULT ipo_supported OUTPUT ipo_output)
if(ipo_supported)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
elseif(CMake_TEST_IPO_WORKS_CXX)
- message(FATAL_ERROR "IPO expected to work")
+ string(REPLACE "\n" "\n " ipo_output "${ipo_output}")
+ message(FATAL_ERROR "IPO expected to work, but the check failed:\n ${ipo_output}")
endif()
add_library(foo foo.cpp)
diff --git a/Tests/Module/CheckIPOSupported-Fortran/CMakeLists.txt b/Tests/Module/CheckIPOSupported-Fortran/CMakeLists.txt
index dee5c25..3872b56 100644
--- a/Tests/Module/CheckIPOSupported-Fortran/CMakeLists.txt
+++ b/Tests/Module/CheckIPOSupported-Fortran/CMakeLists.txt
@@ -4,11 +4,12 @@ project(CheckIPOSupported-Fortran LANGUAGES Fortran)
cmake_policy(SET CMP0069 NEW)
include(CheckIPOSupported)
-check_ipo_supported(RESULT ipo_supported)
+check_ipo_supported(RESULT ipo_supported OUTPUT ipo_output)
if(ipo_supported)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
elseif(CMake_TEST_IPO_WORKS_Fortran)
- message(FATAL_ERROR "IPO expected to work")
+ string(REPLACE "\n" "\n " ipo_output "${ipo_output}")
+ message(FATAL_ERROR "IPO expected to work, but the check failed:\n ${ipo_output}")
endif()
add_library(foo foo.f)
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fa114e7d708b76f33878f6f82a6c2a2e50c1c10f
commit fa114e7d708b76f33878f6f82a6c2a2e50c1c10f
Author: Roger Leigh <rleigh at dundee.ac.uk>
AuthorDate: Tue Aug 22 16:09:06 2017 +0100
Commit: Roger Leigh <rleigh at dundee.ac.uk>
CommitDate: Tue Aug 22 17:03:36 2017 +0100
FindBoost: Add Boost 1.65 dependencies
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
index b4abf75..b28f2b8 100644
--- a/Modules/FindBoost.cmake
+++ b/Modules/FindBoost.cmake
@@ -554,7 +554,10 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
# The addition of a new release should only require it to be run
# against the new release.
set(_Boost_IMPORTED_TARGETS TRUE)
- if(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
+ if(Boost_VERSION VERSION_LESS 103300)
+ message(WARNING "Imported targets and dependency information not available for Boost version ${Boost_VERSION} (all versions older than 1.33)")
+ set(_Boost_IMPORTED_TARGETS FALSE)
+ elseif(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
set(_Boost_IOSTREAMS_DEPENDENCIES regex thread)
set(_Boost_REGEX_DEPENDENCIES thread)
set(_Boost_WAVE_DEPENDENCIES filesystem thread)
@@ -768,8 +771,27 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
else()
- message(WARNING "Imported targets not available for Boost version ${Boost_VERSION}")
- set(_Boost_IMPORTED_TARGETS FALSE)
+ if(NOT Boost_VERSION VERSION_LESS 106500)
+ set(_Boost_CHRONO_DEPENDENCIES system)
+ set(_Boost_CONTEXT_DEPENDENCIES thread chrono system date_time)
+ set(_Boost_COROUTINE_DEPENDENCIES context system)
+ set(_Boost_FIBER_DEPENDENCIES context thread chrono system date_time)
+ set(_Boost_FILESYSTEM_DEPENDENCIES system)
+ set(_Boost_IOSTREAMS_DEPENDENCIES regex)
+ set(_Boost_LOG_DEPENDENCIES date_time log_setup system filesystem thread regex chrono atomic)
+ set(_Boost_MATH_DEPENDENCIES math_c99 math_c99f math_c99l math_tr1 math_tr1f math_tr1l atomic)
+ set(_Boost_MPI_DEPENDENCIES serialization)
+ set(_Boost_MPI_PYTHON_DEPENDENCIES python mpi serialization)
+ set(_Boost_NUMPY_DEPENDENCIES python)
+ set(_Boost_RANDOM_DEPENDENCIES system)
+ set(_Boost_THREAD_DEPENDENCIES chrono system date_time atomic)
+ set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
+ set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+ endif()
+ if(NOT Boost_VERSION VERSION_LESS 106600)
+ message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
+ set(_Boost_IMPORTED_TARGETS FALSE)
+ endif()
endif()
string(TOUPPER ${component} uppercomponent)
@@ -819,6 +841,7 @@ function(_Boost_COMPONENT_HEADERS component _hdrs)
set(_Boost_MATH_TR1L_HEADERS "boost/math/tr1.hpp")
set(_Boost_MPI_HEADERS "boost/mpi.hpp")
set(_Boost_MPI_PYTHON_HEADERS "boost/mpi/python/config.hpp")
+ set(_Boost_NUMPY_HEADERS "boost/python/numpy.hpp")
set(_Boost_PRG_EXEC_MONITOR_HEADERS "boost/test/prg_exec_monitor.hpp")
set(_Boost_PROGRAM_OPTIONS_HEADERS "boost/program_options.hpp")
set(_Boost_PYTHON_HEADERS "boost/python.hpp")
@@ -1000,6 +1023,7 @@ else()
# _Boost_COMPONENT_HEADERS. See the instructions at the top of
# _Boost_COMPONENT_DEPENDENCIES.
set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
+ "1.65.0" "1.65"
"1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
"1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55"
"1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51"
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e66e8e891454b4addcb7dbd57a8bdc5eeaf7bff3
commit e66e8e891454b4addcb7dbd57a8bdc5eeaf7bff3
Author: Roger Leigh <rleigh at dundee.ac.uk>
AuthorDate: Tue Aug 22 15:11:22 2017 +0100
Commit: Roger Leigh <rleigh at dundee.ac.uk>
CommitDate: Tue Aug 22 17:03:35 2017 +0100
BoostScanDeps: Special case python and numpy and variants
diff --git a/Utilities/Scripts/BoostScanDeps.cmake b/Utilities/Scripts/BoostScanDeps.cmake
index 2fd8f86..bd2e6a8 100644
--- a/Utilities/Scripts/BoostScanDeps.cmake
+++ b/Utilities/Scripts/BoostScanDeps.cmake
@@ -39,29 +39,40 @@ function(_Boost_FIND_COMPONENT_DEPENDENCIES component includedir _ret_libs)
# Start by finding all headers for the component; header
# dependencies via #include will be solved by future passes
+ file(GLOB_RECURSE _boost_mpi_python_headers
+ RELATIVE "${includedir}"
+ "${includedir}/boost/mpi/python/*")
+ list(INSERT _boost_mpi_python_headers 0 "boost/mpi/python.hpp")
+
+ file(GLOB_RECURSE _boost_python_numpy_headers
+ RELATIVE "${includedir}"
+ "${includedir}/boost/python/numpy/*")
+ list(INSERT _boost_python_numpy_headers 0 "boost/python/numpy.hpp")
# Special-case since it is part of mpi; look only in boost/mpi/python*
if(component STREQUAL "mpi_python")
set(_boost_DEPS "python")
set(library_component TRUE)
- file(GLOB_RECURSE _boost_unprocessed_headers
- RELATIVE "${includedir}"
- "${includedir}/boost/mpi/python/*")
- list(INSERT _boost_unprocessed_headers 0 "${includedir}/boost/mpi/python.hpp")
+ set(_boost_unprocessed_headers ${_boost_mpi_python_headers})
+ # Special-case since it is part of python; look only in boost/python/numpy*
+ elseif(component STREQUAL "numpy")
+ set(_boost_DEPS "python")
+ set(library_component TRUE)
+ set(_boost_unprocessed_headers ${_boost_python_numpy_headers})
# Special-case since it is a serialization variant; look in boost/serialization
elseif(component STREQUAL "wserialization")
set(library_component TRUE)
file(GLOB_RECURSE _boost_unprocessed_headers
RELATIVE "${includedir}"
"${includedir}/boost/serialization/*")
- list(INSERT _boost_unprocessed_headers 0 "${includedir}/boost/serialization.hpp")
+ list(INSERT _boost_unprocessed_headers 0 "boost/serialization.hpp")
# Not really a library in its own right, but treat it as one
elseif(component STREQUAL "math")
set(library_component TRUE)
file(GLOB_RECURSE _boost_unprocessed_headers
RELATIVE "${includedir}"
"${includedir}/boost/math/*")
- list(INSERT _boost_unprocessed_headers 0 "${includedir}/boost/math.hpp")
+ list(INSERT _boost_unprocessed_headers 0 "boost/math.hpp")
# Single test header
elseif(component STREQUAL "unit_test_framework")
set(library_component TRUE)
@@ -79,7 +90,8 @@ function(_Boost_FIND_COMPONENT_DEPENDENCIES component includedir _ret_libs)
file(GLOB_RECURSE _boost_unprocessed_headers
RELATIVE "${includedir}"
"${includedir}/boost/${component}/*")
- list(INSERT _boost_unprocessed_headers 0 "${includedir}/boost/${component}.hpp")
+ list(INSERT _boost_unprocessed_headers 0 "boost/${component}.hpp")
+ list(REMOVE_ITEM _boost_unprocessed_headers ${_boost_mpi_python_headers} ${_boost_python_numpy_headers})
endif()
while(_boost_unprocessed_headers)
@@ -102,6 +114,8 @@ function(_Boost_FIND_COMPONENT_DEPENDENCIES component includedir _ret_libs)
foreach(line ${_boost_header_deps})
string(REGEX REPLACE "^[ \t]*#[ \t]*define[ \t][ \t]*BOOST_LIB_NAME[ \t][ \t]*boost_([^ \t][^ \t]*).*" "\\1" _boost_component_match "${line}")
+ string(REPLACE "python3" "python" _boost_component_match "${_boost_component_match}")
+ string(REPLACE "numpy3" "numpy" _boost_component_match "${_boost_component_match}")
list(FIND _boost_DEPS "${_boost_component_match}" _boost_dep_found)
if(_boost_component_match STREQUAL "bzip2" OR
_boost_component_match STREQUAL "zlib")
@@ -119,6 +133,12 @@ function(_Boost_FIND_COMPONENT_DEPENDENCIES component includedir _ret_libs)
# hard dependency (handle as special-case for mpi_python).
continue()
endif()
+ if(component STREQUAL "python" AND
+ boost_component_match STREQUAL "numpy")
+ # Optional python dependency; skip to avoid making it a
+ # hard dependency (handle as special-case for numpy).
+ continue()
+ endif()
if (_boost_dep_found EQUAL -1 AND
NOT "${_boost_component_match}" STREQUAL "${component}")
list(APPEND _boost_DEPS "${_boost_component_match}")
@@ -168,6 +188,11 @@ if(IS_DIRECTORY "${BOOST_DIR}/boost/mpi" AND
IS_DIRECTORY "${BOOST_DIR}/boost/python")
list(APPEND boost_components "mpi_python")
endif()
+# Special-case numpy, since it's a part of python
+if(IS_DIRECTORY "${BOOST_DIR}/boost/python" AND
+ IS_DIRECTORY "${BOOST_DIR}/boost/python/numpy")
+ list(APPEND boost_components "numpy")
+endif()
# Special-case wserialization, which is a variant of serialization
if(IS_DIRECTORY "${BOOST_DIR}/boost/serialization")
list(APPEND boost_components "wserialization")
-----------------------------------------------------------------------
Summary of changes:
Modules/Compiler/GNU-Fortran.cmake | 2 +
Modules/FindBoost.cmake | 30 +++++++++++++--
Source/cmNinjaTargetGenerator.cxx | 8 +++-
Source/cmVisualStudio10TargetGenerator.cxx | 6 +--
Tests/Module/CheckIPOSupported-C/CMakeLists.txt | 5 ++-
Tests/Module/CheckIPOSupported-CXX/CMakeLists.txt | 5 ++-
.../CheckIPOSupported-Fortran/CMakeLists.txt | 5 ++-
Utilities/Scripts/BoostScanDeps.cmake | 39 ++++++++++++++++----
8 files changed, 80 insertions(+), 20 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list