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 76cb43c7c5515e0ca8c1858311a54954fbc39870 (commit) via da0937c04fe8cb167a55a1e37cf275d24a262fa7 (commit) via 56fec2fe8f7014abb5677fd4fca03fa208c498e8 (commit) via da78d0f5ea5506602db9f761e559ff9057430c57 (commit) via 59c392b44eb2920240b05a46e7f9c069ef374558 (commit) via 9bf97363b0d0f3ba0bf89247ce4f8811b4286961 (commit) via 3a0ab3ba2303784e20f1025cf3cd337d840a5b17 (commit) via 9e5457d3b4f5c46028c29d731f4057e3fa76415a (commit) via 3dfc8b9bd6b75d35b959ee4a79c056f4af8ea28a (commit) from 540640fc0aca7f181098b0270fb1cae1cd684791 (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=76cb43c7c5515e0ca8c1858311a54954fbc39870 commit 76cb43c7c5515e0ca8c1858311a54954fbc39870 Merge: da0937c 3dfc8b9 Author: Brad King <brad.k...@kitware.com> AuthorDate: Tue May 28 15:50:29 2019 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Tue May 28 11:51:58 2019 -0400 Merge topic 'GetPrerequisites-use-if-IN_LIST' 3dfc8b9bd6 GetPrerequisites: use if(IN_LIST) instead of foreach Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !3299 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da0937c04fe8cb167a55a1e37cf275d24a262fa7 commit da0937c04fe8cb167a55a1e37cf275d24a262fa7 Merge: 56fec2f 9e5457d Author: Brad King <brad.k...@kitware.com> AuthorDate: Tue May 28 15:49:43 2019 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Tue May 28 11:50:28 2019 -0400 Merge topic 'swift-response' 9e5457d3b4 Ninja,Swift: correct response file handling Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !3367 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=56fec2fe8f7014abb5677fd4fca03fa208c498e8 commit 56fec2fe8f7014abb5677fd4fca03fa208c498e8 Merge: da78d0f 59c392b Author: Brad King <brad.k...@kitware.com> AuthorDate: Tue May 28 15:49:09 2019 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Tue May 28 11:49:17 2019 -0400 Merge topic 'FindICU-find-names' 59c392b44e FindICU: Pass explicit NAMES argument to find command calls Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !3371 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da78d0f5ea5506602db9f761e559ff9057430c57 commit da78d0f5ea5506602db9f761e559ff9057430c57 Merge: 540640f 9bf9736 Author: Brad King <brad.k...@kitware.com> AuthorDate: Tue May 28 15:42:38 2019 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Tue May 28 11:43:24 2019 -0400 Merge topic 'rel-push' 9bf97363b0 Utilities/Release: Replace upload step with a "push" script 3a0ab3ba23 Utilities/Release: Teach upload script to compute version automatically Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !3370 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=59c392b44eb2920240b05a46e7f9c069ef374558 commit 59c392b44eb2920240b05a46e7f9c069ef374558 Author: Brad King <brad.k...@kitware.com> AuthorDate: Fri May 24 10:30:08 2019 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Fri May 24 10:31:35 2019 -0400 FindICU: Pass explicit NAMES argument to find command calls This improves readability and avoids an undocumented signature variant. Fixes: #19302 diff --git a/Modules/FindICU.cmake b/Modules/FindICU.cmake index e4b4909..38081f5 100644 --- a/Modules/FindICU.cmake +++ b/Modules/FindICU.cmake @@ -162,7 +162,8 @@ function(_ICU_FIND) string(TOUPPER "${program}" program_upcase) set(cache_var "ICU_${program_upcase}_EXECUTABLE") set(program_var "ICU_${program_upcase}_EXECUTABLE") - find_program("${cache_var}" "${program}" + find_program("${cache_var}" + NAMES "${program}" HINTS ${icu_roots} PATH_SUFFIXES ${icu_binary_suffixes} DOC "ICU ${program} executable" @@ -228,13 +229,15 @@ function(_ICU_FIND) list(APPEND component_libnames ${static_component_libnames}) list(APPEND component_debug_libnames ${static_component_debug_libnames}) endif() - find_library("${component_cache_release}" ${component_libnames} + find_library("${component_cache_release}" + NAMES ${component_libnames} HINTS ${icu_roots} PATH_SUFFIXES ${icu_library_suffixes} DOC "ICU ${component} library (release)" NO_PACKAGE_ROOT_PATH ) - find_library("${component_cache_debug}" ${component_debug_libnames} + find_library("${component_cache_debug}" + NAMES ${component_debug_libnames} HINTS ${icu_roots} PATH_SUFFIXES ${icu_library_suffixes} DOC "ICU ${component} library (debug)" @@ -286,7 +289,8 @@ function(_ICU_FIND) string(REPLACE "." "_" data_upcase "${data_upcase}") set(cache_var "ICU_${data_upcase}") set(data_var "ICU_${data_upcase}") - find_file("${cache_var}" "${data}" + find_file("${cache_var}" + NAMES "${data}" HINTS ${icu_roots} PATH_SUFFIXES ${icu_data_suffixes} DOC "ICU ${data} data file") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9bf97363b0d0f3ba0bf89247ce4f8811b4286961 commit 9bf97363b0d0f3ba0bf89247ce4f8811b4286961 Author: Brad King <brad.k...@kitware.com> AuthorDate: Fri May 24 09:17:51 2019 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Fri May 24 09:51:25 2019 -0400 Utilities/Release: Replace upload step with a "push" script Replace the `upload_release.cmake` script with a `push.bash` script that is more configurable from the command line and that does not hard-code any destinations. Instead of using `scp` to access `cmake.org` directly, push the files atomically to a staging directory from which another process will actually upload them. diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 698cb1d..6901077 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -770,14 +770,14 @@ if(BUILD_TESTING) file(WRITE "${_TEST_DIR}/nightly-cmake.sh" "cd ${_TEST_DIR} ${CMake_BINARY_DIR}/bin/cmake -DCMAKE_CREATE_VERSION=nightly -P ${CMake_SOURCE_DIR}/Utilities/Release/${script} -${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release/upload_release.cmake +${CMake_SOURCE_DIR}/Utilities/Release/push.bash --dir dev -- '${CMake_BUILD_NIGHTLY_RELEASES}' ") add_test(${name} /bin/sh ${_TEST_DIR}/nightly-cmake.sh) if(COMMAND SET_TESTS_PROPERTIES AND COMMAND GET_TEST_PROPERTY) set_tests_properties (${name} PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT}) endif() endmacro() - if(CMAKE_BUILD_NIGHTLY_RELEASES) + if(CMake_BUILD_NIGHTLY_RELEASES) ADD_NIGHTLY_BUILD_TEST(CMakeNightlyWin32 win32_release.cmake) ADD_NIGHTLY_BUILD_TEST(CMakeNightlyWin64 diff --git a/Utilities/Release/push.bash b/Utilities/Release/push.bash new file mode 100755 index 0000000..1c8efe9 --- /dev/null +++ b/Utilities/Release/push.bash @@ -0,0 +1,70 @@ +#!/usr/bin/env bash + +usage='usage: push.bash [<options>] [--] <dest> + +Options: + + --dir <dir> Specify subdirectory under destination. + Defaults to "v<version>". + --version <ver> CMake <major>.<minor> version number to push. + Defaults to version of source tree. +' + +die() { + echo "$@" 1>&2; exit 1 +} + +cmake_source_dir="${BASH_SOURCE%/*}/../.." + +cmake_version_component() +{ + sed -n " +/^set(CMake_VERSION_${1}/ {s/set(CMake_VERSION_${1} *\([0-9]*\))/\1/;p;} +" "${cmake_source_dir}/Source/CMakeVersion.cmake" +} + + +version='' +dir='' +while test "$#" != 0; do + case "$1" in + --dir) shift; dir="$1" ;; + --version) shift; version="$1" ;; + --) shift ; break ;; + -*) die "$usage" ;; + *) break ;; + esac + shift +done +test "$#" = 1 || die "$usage" +readonly dest="$1" + +if test -z "$version"; then + cmake_version_major="$(cmake_version_component MAJOR)" + cmake_version_minor="$(cmake_version_component MINOR)" + version="${cmake_version_major}.${cmake_version_minor}" +fi +readonly version + +if test -z "$dir"; then + dir="v${version}" +fi +readonly dir + +for f in cmake-${version}*; do + if ! test -f "${f}"; then + continue + fi + + echo "pushing '${f}'" + + # Make a copy with a new timestamp and atomically rename into place. + tf="${dest}/${dir}/.tmp.${f}" + df="${dest}/${dir}/${f}" + cp "${f}" "${tf}" + mv "${tf}" "${df}" + + # Pause to give each file a distinct time stamp even with 1s resolution + # so that sorting by time also sorts alphabetically. + sleep 1.1 +done diff --git a/Utilities/Release/upload_release.cmake b/Utilities/Release/upload_release.cmake deleted file mode 100644 index d78e68a..0000000 --- a/Utilities/Release/upload_release.cmake +++ /dev/null @@ -1,40 +0,0 @@ -set(CTEST_RUN_CURRENT_SCRIPT 0) -if(NOT VERSION) - include(${CMAKE_CURRENT_LIST_DIR}/../../Source/CMakeVersion.cmake) - set(VERSION ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}) -endif() -if(NOT DEFINED PROJECT_PREFIX) - set(PROJECT_PREFIX cmake-${VERSION}) -endif() -if(NOT DEFINED DIR) - set(DIR "v${VERSION}") -endif() -file(GLOB FILES ${CMAKE_CURRENT_SOURCE_DIR} "${PROJECT_PREFIX}*") -list(SORT FILES) -list(REVERSE FILES) -message("${FILES}") -set(UPLOAD_LOC - "kitw...@www.cmake.org:/projects/FTP/pub/cmake/${DIR}") -set(count 0) -foreach(file ${FILES}) - if(NOT IS_DIRECTORY ${file}) - message("upload ${file} ${UPLOAD_LOC}") - execute_process(COMMAND - scp ${file} ${UPLOAD_LOC} - RESULT_VARIABLE result) - if("${result}" GREATER 0) - message(FATAL_ERROR "failed to upload file to ${UPLOAD_LOC}") - endif() - - # Pause to give each upload a distinct (to the nearest second) - # time stamp - if(COMMAND ctest_sleep) - ctest_sleep(2) - endif() - - math(EXPR count "${count} + 1") - endif() -endforeach() -if(${count} EQUAL 0) - message(FATAL_ERROR "Error no files uploaded.") -endif() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3a0ab3ba2303784e20f1025cf3cd337d840a5b17 commit 3a0ab3ba2303784e20f1025cf3cd337d840a5b17 Author: Brad King <brad.k...@kitware.com> AuthorDate: Fri May 24 08:04:11 2019 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Fri May 24 08:04:11 2019 -0400 Utilities/Release: Teach upload script to compute version automatically Read the version from `Source/CMakeVersion.cmake` instead of repeating it. diff --git a/Help/dev/maint.rst b/Help/dev/maint.rst index a8942cd7..1153a09 100644 --- a/Help/dev/maint.rst +++ b/Help/dev/maint.rst @@ -188,12 +188,6 @@ Update ``Source/CMakeVersion.cmake`` to set the version to set(CMake_VERSION_PATCH 0) set(CMake_VERSION_RC 1) -Update ``Utilities/Release/upload_release.cmake``: - -.. code-block:: cmake - - set(VERSION $ver) - Update uses of ``DEVEL_CMAKE_VERSION`` in the source tree to mention the actual version number: diff --git a/Utilities/Release/upload_release.cmake b/Utilities/Release/upload_release.cmake index 3613ae7..d78e68a 100644 --- a/Utilities/Release/upload_release.cmake +++ b/Utilities/Release/upload_release.cmake @@ -1,6 +1,7 @@ set(CTEST_RUN_CURRENT_SCRIPT 0) if(NOT VERSION) - set(VERSION 3.14) + include(${CMAKE_CURRENT_LIST_DIR}/../../Source/CMakeVersion.cmake) + set(VERSION ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}) endif() if(NOT DEFINED PROJECT_PREFIX) set(PROJECT_PREFIX cmake-${VERSION}) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9e5457d3b4f5c46028c29d731f4057e3fa76415a commit 9e5457d3b4f5c46028c29d731f4057e3fa76415a Author: Saleem Abdulrasool <compn...@compnerd.org> AuthorDate: Thu May 23 14:05:37 2019 -0700 Commit: Saleem Abdulrasool <compn...@compnerd.org> CommitDate: Thu May 23 14:05:37 2019 -0700 Ninja,Swift: correct response file handling The response file was being written but not used due to the wrong variable being configured for Swift. Swift does compile+link in a single phase and does not use the `<OBJECTS>` placeholder. Use the `<SWIFT_SOURCES>` placeholder instead for the response file substitution which serves the same purpose. diff --git a/Modules/CMakeSwiftInformation.cmake b/Modules/CMakeSwiftInformation.cmake index 2bba178..1477e8a 100644 --- a/Modules/CMakeSwiftInformation.cmake +++ b/Modules/CMakeSwiftInformation.cmake @@ -18,10 +18,12 @@ if(CMAKE_Swift_COMPILER_ID) endif() set(CMAKE_INCLUDE_FLAG_Swift "-I ") + set(CMAKE_Swift_DEFINE_FLAG -D) set(CMAKE_Swift_COMPILE_OPTIONS_TARGET "-target ") set(CMAKE_Swift_COMPILER_ARG1 -frontend) set(CMAKE_Swift_FRAMEWORK_SEARCH_FLAG "-F ") +set(CMAKE_Swift_RESPONSE_FILE_LINK_FLAG @) # NOTE(compnerd) use the short form for convenience and ease of search. They # are treated equivalent to their long form names as well as custom Swift diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx index 1e4d2ed..77af45e 100644 --- a/Source/cmNinjaNormalTargetGenerator.cxx +++ b/Source/cmNinjaNormalTargetGenerator.cxx @@ -321,7 +321,11 @@ void cmNinjaNormalTargetGenerator::WriteLinkRule(bool useResponseFile) rspcontent = "$in_newline"; } rspcontent += " $LINK_PATH $LINK_LIBRARIES"; - vars.Objects = responseFlag.c_str(); + if (this->TargetLinkLanguage == "Swift") { + vars.SwiftSources = responseFlag.c_str(); + } else { + vars.Objects = responseFlag.c_str(); + } vars.LinkLibraries = ""; } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3dfc8b9bd6b75d35b959ee4a79c056f4af8ea28a commit 3dfc8b9bd6b75d35b959ee4a79c056f4af8ea28a Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Thu May 9 16:51:55 2019 -0400 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Thu May 23 09:15:04 2019 -0400 GetPrerequisites: use if(IN_LIST) instead of foreach diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake index fa6d75a..06655a4 100644 --- a/Modules/GetPrerequisites.cmake +++ b/Modules/GetPrerequisites.cmake @@ -169,17 +169,11 @@ Possible types are: other #]=======================================================================] -function(gp_append_unique list_var value) - set(contains 0) - - foreach(item ${${list_var}}) - if(item STREQUAL "${value}") - set(contains 1) - break() - endif() - endforeach() +cmake_policy(PUSH) +cmake_policy(SET CMP0057 NEW) # if IN_LIST - if(NOT contains) +function(gp_append_unique list_var value) + if(NOT item IN_LIST ${list_var}) set(${list_var} ${${list_var}} "${value}" PARENT_SCOPE) endif() endfunction() @@ -1043,3 +1037,5 @@ function(list_prerequisites_by_glob glob_arg glob_exp) endif() endforeach() endfunction() + +cmake_policy(POP) ----------------------------------------------------------------------- Summary of changes: Help/dev/maint.rst | 6 --- Modules/CMakeSwiftInformation.cmake | 2 + Modules/FindICU.cmake | 12 ++++-- Modules/GetPrerequisites.cmake | 16 +++----- Source/cmNinjaNormalTargetGenerator.cxx | 6 ++- Tests/CMakeLists.txt | 4 +- Utilities/Release/push.bash | 70 +++++++++++++++++++++++++++++++++ Utilities/Release/upload_release.cmake | 39 ------------------ 8 files changed, 93 insertions(+), 62 deletions(-) create mode 100755 Utilities/Release/push.bash delete mode 100644 Utilities/Release/upload_release.cmake hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org https://cmake.org/mailman/listinfo/cmake-commits