From kwrobot at kitware.com Sun Feb 1 00:01:11 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 1 Feb 2015 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-985-g8d69764 Message-ID: <20150201050111.9FBF8AA148@public.kitware.com> 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 8d69764d06ba0dca6e1e15bd5efeaac640ece49b (commit) from 83ae27dcd18a746af35434bede9e3a7ee0aeef9b (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=8d69764d06ba0dca6e1e15bd5efeaac640ece49b commit 8d69764d06ba0dca6e1e15bd5efeaac640ece49b Author: Kitware Robot AuthorDate: Sun Feb 1 00:01:08 2015 -0500 Commit: Kitware Robot CommitDate: Sun Feb 1 00:01:08 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 34d59bb..947cae7 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 20150131) +set(CMake_VERSION_PATCH 20150201) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From kwrobot at kitware.com Mon Feb 2 00:01:09 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Mon, 2 Feb 2015 00:01:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-986-gcf38f68 Message-ID: <20150202050109.7ECECAAA98@public.kitware.com> 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 cf38f6868536e8439bc84d57363dcc51f1fea998 (commit) from 8d69764d06ba0dca6e1e15bd5efeaac640ece49b (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=cf38f6868536e8439bc84d57363dcc51f1fea998 commit cf38f6868536e8439bc84d57363dcc51f1fea998 Author: Kitware Robot AuthorDate: Mon Feb 2 00:01:07 2015 -0500 Commit: Kitware Robot CommitDate: Mon Feb 2 00:01:07 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 947cae7..68dff35 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 20150201) +set(CMake_VERSION_PATCH 20150202) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From ben.boeckel at kitware.com Mon Feb 2 10:32:49 2015 From: ben.boeckel at kitware.com (Ben Boeckel) Date: Mon, 2 Feb 2015 10:32:49 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2538-g2b24a11 Message-ID: <20150202153249.EC496AAC0A@public.kitware.com> 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 2b24a1129330027717429d0a2be1ce7d7bd4202a (commit) via 4c98de33d71fece4333607225ab030c1c7eee76c (commit) via cf38f6868536e8439bc84d57363dcc51f1fea998 (commit) via 8d69764d06ba0dca6e1e15bd5efeaac640ece49b (commit) via 83ae27dcd18a746af35434bede9e3a7ee0aeef9b (commit) from 951b4a382df85ca097859fdfb81bb3a6b886a0b9 (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=2b24a1129330027717429d0a2be1ce7d7bd4202a commit 2b24a1129330027717429d0a2be1ce7d7bd4202a Merge: 951b4a3 4c98de3 Author: Ben Boeckel AuthorDate: Mon Feb 2 10:32:49 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 2 10:32:49 2015 -0500 Merge topic 'fix-local-generator-config-check' into next 4c98de33 cmLocalGenerator: fix the default configuration check cf38f686 CMake Nightly Date Stamp 8d69764d CMake Nightly Date Stamp 83ae27dc CMake Nightly Date Stamp http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4c98de33d71fece4333607225ab030c1c7eee76c commit 4c98de33d71fece4333607225ab030c1c7eee76c Author: Ben Boeckel AuthorDate: Mon Feb 2 10:31:43 2015 -0500 Commit: Ben Boeckel CommitDate: Mon Feb 2 10:31:43 2015 -0500 cmLocalGenerator: fix the default configuration check Empty also means the default configuration should be used. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index af4c950..6b7a520 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -425,7 +425,7 @@ void cmLocalGenerator::GenerateInstallRules() { default_config = configurationTypes[0].c_str(); } - if(!default_config) + if(!default_config || !*default_config) { default_config = "Release"; } ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/cmLocalGenerator.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Tue Feb 3 00:01:11 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Tue, 3 Feb 2015 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-987-g460f7bc Message-ID: <20150203050111.2EFE1AA12F@public.kitware.com> 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 460f7bcb7d11e905ee025c9d9cc9629d597fa91b (commit) from cf38f6868536e8439bc84d57363dcc51f1fea998 (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=460f7bcb7d11e905ee025c9d9cc9629d597fa91b commit 460f7bcb7d11e905ee025c9d9cc9629d597fa91b Author: Kitware Robot AuthorDate: Tue Feb 3 00:01:08 2015 -0500 Commit: Kitware Robot CommitDate: Tue Feb 3 00:01:08 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 68dff35..dacbd20 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 20150202) +set(CMake_VERSION_PATCH 20150203) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 09:31:42 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 09:31:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2540-gf0e2fdd Message-ID: <20150203143142.7DDFBAACFF@public.kitware.com> 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 f0e2fdd201e3b7b466efb0710d0cbad317bbc8bd (commit) via fb828b44ebfd0f9a2c74d16efd15d4cc0716cb60 (commit) from 2b24a1129330027717429d0a2be1ce7d7bd4202a (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=f0e2fdd201e3b7b466efb0710d0cbad317bbc8bd commit f0e2fdd201e3b7b466efb0710d0cbad317bbc8bd Merge: 2b24a11 fb828b4 Author: Brad King AuthorDate: Tue Feb 3 09:31:41 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 09:31:41 2015 -0500 Merge topic 'fix-local-generator-config-check' into next fb828b44 Revert "cmLocalGenerator: fix the default configuration check" http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fb828b44ebfd0f9a2c74d16efd15d4cc0716cb60 commit fb828b44ebfd0f9a2c74d16efd15d4cc0716cb60 Author: Brad King AuthorDate: Tue Feb 3 09:31:05 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 09:31:05 2015 -0500 Revert "cmLocalGenerator: fix the default configuration check" This reverts commit 4c98de33d71fece4333607225ab030c1c7eee76c. We have always supported an empty config. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 6b7a520..af4c950 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -425,7 +425,7 @@ void cmLocalGenerator::GenerateInstallRules() { default_config = configurationTypes[0].c_str(); } - if(!default_config || !*default_config) + if(!default_config) { default_config = "Release"; } ----------------------------------------------------------------------- Summary of changes: Source/cmLocalGenerator.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 09:46:19 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 09:46:19 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-989-g1acf362 Message-ID: <20150203144619.4FFD1AA2B1@public.kitware.com> 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 1acf36241fee134faed4355be2c9b5afa5500714 (commit) via 68b5b23b3bd948ec15f2ebed2154db8ab50f66e9 (commit) from 460f7bcb7d11e905ee025c9d9cc9629d597fa91b (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=1acf36241fee134faed4355be2c9b5afa5500714 commit 1acf36241fee134faed4355be2c9b5afa5500714 Merge: 460f7bc 68b5b23 Author: Brad King AuthorDate: Tue Feb 3 09:46:18 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 09:46:18 2015 -0500 Merge topic 'GNU-5-CXX14' 68b5b23b Features: Update GNU 5.0 C++14 features. ----------------------------------------------------------------------- Summary of changes: Modules/Compiler/GNU-CXX-FeatureTests.cmake | 2 ++ 1 file changed, 2 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 09:46:21 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 09:46:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-991-g99e3650 Message-ID: <20150203144621.0397FAA2B1@public.kitware.com> 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 99e3650e66399e75efb989322d4b0146c549dbfa (commit) via 3cec0c75f73cc3d5c68cbb9e03e94ed38d60d0a9 (commit) from 1acf36241fee134faed4355be2c9b5afa5500714 (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=99e3650e66399e75efb989322d4b0146c549dbfa commit 99e3650e66399e75efb989322d4b0146c549dbfa Merge: 1acf362 3cec0c7 Author: Brad King AuthorDate: Tue Feb 3 09:46:20 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 09:46:20 2015 -0500 Merge topic 'make-NOTPARALLEL-not-PHONY' 3cec0c75 Makefile: Generate .NOTPARALLEL without .PHONY (#14312) ----------------------------------------------------------------------- Summary of changes: Source/cmLocalUnixMakefileGenerator3.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 09:46:23 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 09:46:23 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-993-gaec1137 Message-ID: <20150203144623.5FC31AA2B5@public.kitware.com> 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 aec11372a5868694937b1c232af9d7510ad8497e (commit) via 3ec025472735c22cb90b09bc171190005dd28bb1 (commit) from 99e3650e66399e75efb989322d4b0146c549dbfa (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=aec11372a5868694937b1c232af9d7510ad8497e commit aec11372a5868694937b1c232af9d7510ad8497e Merge: 99e3650 3ec0254 Author: Brad King AuthorDate: Tue Feb 3 09:46:21 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 09:46:21 2015 -0500 Merge topic 'rpm_multi_prefix' 3ec02547 CPackRPM: Allow multiple path relocation prefixes for one package ----------------------------------------------------------------------- Summary of changes: Help/release/dev/rpm_multi_prefix.rst | 11 ++ Modules/CPackRPM.cmake | 115 ++++++++++++++++++-- Tests/CPackComponentsForAll/CMakeLists.txt | 6 + .../MyLibCPackConfig-IgnoreGroup.cmake.in | 16 +-- .../RunCPackVerifyResult.cmake | 30 ++++- Tests/RunCMake/CMakeLists.txt | 4 + Tests/RunCMake/CPackRPM/CMakeLists.txt | 7 ++ ...ackRPM_PARTIALLY_RELOCATABLE_WARNING-stderr.txt | 1 + .../CPackRPM_PARTIALLY_RELOCATABLE_WARNING.cmake | 7 ++ Tests/RunCMake/CPackRPM/RunCMakeTest.cmake | 17 +++ 10 files changed, 194 insertions(+), 20 deletions(-) create mode 100644 Help/release/dev/rpm_multi_prefix.rst create mode 100644 Tests/RunCMake/CPackRPM/CMakeLists.txt create mode 100644 Tests/RunCMake/CPackRPM/CPackRPM_PARTIALLY_RELOCATABLE_WARNING-stderr.txt create mode 100644 Tests/RunCMake/CPackRPM/CPackRPM_PARTIALLY_RELOCATABLE_WARNING.cmake create mode 100644 Tests/RunCMake/CPackRPM/RunCMakeTest.cmake hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 09:46:51 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 09:46:51 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2545-g98e6914 Message-ID: <20150203144651.9CD61AA4B9@public.kitware.com> 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 98e6914a157b219ef6b5b70c3ba699a3402e633f (commit) via aec11372a5868694937b1c232af9d7510ad8497e (commit) via 99e3650e66399e75efb989322d4b0146c549dbfa (commit) via 1acf36241fee134faed4355be2c9b5afa5500714 (commit) via 460f7bcb7d11e905ee025c9d9cc9629d597fa91b (commit) from f0e2fdd201e3b7b466efb0710d0cbad317bbc8bd (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=98e6914a157b219ef6b5b70c3ba699a3402e633f commit 98e6914a157b219ef6b5b70c3ba699a3402e633f Merge: f0e2fdd aec1137 Author: Brad King AuthorDate: Tue Feb 3 09:46:35 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 09:46:35 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 10:01:34 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 10:01:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2547-g70fd484 Message-ID: <20150203150134.CB63AAADDE@public.kitware.com> 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 70fd484a81d55b9177b48f460f4d37d12089d0b2 (commit) via d7b3f1d19326bb0221562d6b4e1006eb40251650 (commit) from 98e6914a157b219ef6b5b70c3ba699a3402e633f (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=70fd484a81d55b9177b48f460f4d37d12089d0b2 commit 70fd484a81d55b9177b48f460f4d37d12089d0b2 Merge: 98e6914 d7b3f1d Author: Brad King AuthorDate: Tue Feb 3 10:01:34 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 10:01:34 2015 -0500 Merge topic 'CTestCoverageCollectGCOV-refinements' into next d7b3f1d1 CTestCoverageCollectGCOV: Rename GCOV_{EXTRA_ => }OPTIONS http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d7b3f1d19326bb0221562d6b4e1006eb40251650 commit d7b3f1d19326bb0221562d6b4e1006eb40251650 Author: Brad King AuthorDate: Tue Feb 3 09:58:36 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 09:58:36 2015 -0500 CTestCoverageCollectGCOV: Rename GCOV_{EXTRA_ => }OPTIONS diff --git a/Modules/CTestCoverageCollectGCOV.cmake b/Modules/CTestCoverageCollectGCOV.cmake index 037d3bc..dd10e83 100644 --- a/Modules/CTestCoverageCollectGCOV.cmake +++ b/Modules/CTestCoverageCollectGCOV.cmake @@ -19,7 +19,7 @@ # ctest_coverage_collect_gcov(TARBALL # [SOURCE ][BUILD ] # [GCOV_COMMAND ] -# [GCOV_EXTRA_OPTIONS ...] +# [GCOV_OPTIONS ...] # ) # # Run gcov and package a tar file for CDash. The options are: @@ -41,12 +41,10 @@ # Specify the full path to the ``gcov`` command on the machine. # Default is the value of :variable:`CTEST_COVERAGE_COMMAND`. # -# ``GCOV_EXTRA_OPTIONS ...`` -# Specify extra options to be passed to gcov. By default -# gcov is run as ``gcov -b -o .gcda``. -# If GCOV_EXTRA_OPTIONS is specified, gcov will be run as -# ``gcov ... -o .gcda``. - +# ``GCOV_OPTIONS ...`` +# Specify options to be passed to gcov. The ``gcov`` command +# is run as ``gcov ... -o .gcda``. +# If not specified, the default option is just ``-b``. #============================================================================= # Copyright 2014-2015 Kitware, Inc. @@ -64,7 +62,7 @@ include(CMakeParseArguments) function(ctest_coverage_collect_gcov) set(options "") set(oneValueArgs TARBALL SOURCE BUILD GCOV_COMMAND) - set(multiValueArgs GCOV_EXTRA_OPTIONS) + set(multiValueArgs GCOV_OPTIONS) cmake_parse_arguments(GCOV "${options}" "${oneValueArgs}" "${multiValueArgs}" "" ${ARGN} ) if(NOT DEFINED GCOV_TARBALL) @@ -121,11 +119,11 @@ function(ctest_coverage_collect_gcov) get_filename_component(gcov_dir ${gcda_file} DIRECTORY) # run gcov, this will produce the .gcov file in the current # working directory - if(NOT DEFINED GCOV_GCOV_EXTRA_OPTIONS) - set(GCOV_GCOV_EXTRA_OPTIONS -b) + if(NOT DEFINED GCOV_GCOV_OPTIONS) + set(GCOV_GCOV_OPTIONS -b) endif() execute_process(COMMAND - ${gcov_command} ${GCOV_GCOV_EXTRA_OPTIONS} -o ${gcov_dir} ${gcda_file} + ${gcov_command} ${GCOV_GCOV_OPTIONS} -o ${gcov_dir} ${gcda_file} OUTPUT_VARIABLE out RESULT_VARIABLE res WORKING_DIRECTORY ${coverage_dir}) diff --git a/Tests/CTestCoverageCollectGCOV/test.cmake.in b/Tests/CTestCoverageCollectGCOV/test.cmake.in index 2560542..4bdcb10 100644 --- a/Tests/CTestCoverageCollectGCOV/test.cmake.in +++ b/Tests/CTestCoverageCollectGCOV/test.cmake.in @@ -19,7 +19,7 @@ ctest_coverage_collect_gcov( SOURCE "${CTEST_SOURCE_DIRECTORY}" BUILD "${CTEST_BINARY_DIRECTORY}" GCOV_COMMAND "${CMAKE_COMMAND}" - GCOV_EXTRA_OPTIONS -P "@CMake_SOURCE_DIR@/Tests/CTestCoverageCollectGCOV/fakegcov.cmake") + GCOV_OPTIONS -P "@CMake_SOURCE_DIR@/Tests/CTestCoverageCollectGCOV/fakegcov.cmake") execute_process(COMMAND ${CMAKE_COMMAND} -E tar tf ${tar_file} ----------------------------------------------------------------------- Summary of changes: Modules/CTestCoverageCollectGCOV.cmake | 20 +++++++++----------- Tests/CTestCoverageCollectGCOV/test.cmake.in | 2 +- 2 files changed, 10 insertions(+), 12 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 10:38:21 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 10:38:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2549-g0539d92 Message-ID: <20150203153821.76EB5AAD64@public.kitware.com> 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 0539d927c370a25e09b59e8fb90e382cae13a224 (commit) via 23fca4c96912b9a4bd012000f2af6851eb0b02a2 (commit) from 70fd484a81d55b9177b48f460f4d37d12089d0b2 (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=0539d927c370a25e09b59e8fb90e382cae13a224 commit 0539d927c370a25e09b59e8fb90e382cae13a224 Merge: 70fd484 23fca4c Author: Brad King AuthorDate: Tue Feb 3 10:38:20 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 10:38:20 2015 -0500 Merge topic 'CTestCoverageCollectGCOV-refinements' into next 23fca4c9 CTestCoverageCollectGCOV: Fix handling of international characters http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=23fca4c96912b9a4bd012000f2af6851eb0b02a2 commit 23fca4c96912b9a4bd012000f2af6851eb0b02a2 Author: Brad King AuthorDate: Tue Feb 3 10:36:17 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 10:36:17 2015 -0500 CTestCoverageCollectGCOV: Fix handling of international characters When loading the list of target support directories, read the file with UTF-8 encoding since that is what CMake writes into the file. This allows us to support international characters in the path to the build tree containing the target support directories. diff --git a/Modules/CTestCoverageCollectGCOV.cmake b/Modules/CTestCoverageCollectGCOV.cmake index dd10e83..a607c52 100644 --- a/Modules/CTestCoverageCollectGCOV.cmake +++ b/Modules/CTestCoverageCollectGCOV.cmake @@ -90,7 +90,8 @@ function(ctest_coverage_collect_gcov) # look for gcda files in the target directories # could do a glob from the top of the binary tree but # this will be faster and only look where the files will be - file(STRINGS "${binary_dir}/CMakeFiles/TargetDirectories.txt" target_dirs) + file(STRINGS "${binary_dir}/CMakeFiles/TargetDirectories.txt" target_dirs + ENCODING UTF-8) foreach(target_dir ${target_dirs}) file(GLOB_RECURSE gfiles RELATIVE ${binary_dir} "${target_dir}/*.gcda") list(LENGTH gfiles len) ----------------------------------------------------------------------- Summary of changes: Modules/CTestCoverageCollectGCOV.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 10:41:22 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 10:41:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2554-g062cb2f Message-ID: <20150203154122.4558A25ED@public.kitware.com> 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 062cb2f5d0c7ab90f04805207bf4bef6469764d3 (commit) via 03c0812c41d4db2a48687ce0c053452906dfe69f (commit) via 8caa4e72abe4393914f4dcefd1621d3c86a7d139 (commit) via 5c828cc89b4f78eceaf0402719cf5693a6627935 (commit) via 30cb628ecb31484015136bf6065c9c40f59a9297 (commit) from 0539d927c370a25e09b59e8fb90e382cae13a224 (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=062cb2f5d0c7ab90f04805207bf4bef6469764d3 commit 062cb2f5d0c7ab90f04805207bf4bef6469764d3 Merge: 0539d92 03c0812 Author: Brad King AuthorDate: Tue Feb 3 10:41:21 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 10:41:21 2015 -0500 Merge topic 'CTestCoverageCollectGCOV-refinements' into next 03c0812c CTestCoverageCollectGCOV: Fix handling of international characters 8caa4e72 CTestCoverageCollectGCOV: Add test case 5c828cc8 CTestCoverageCollectGCOV: Allow custom flags to gcov 30cb628e CTestCoverageCollectGCOV: Fix handling of large file counts http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=03c0812c41d4db2a48687ce0c053452906dfe69f commit 03c0812c41d4db2a48687ce0c053452906dfe69f Author: Brad King AuthorDate: Tue Feb 3 10:36:17 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 10:40:58 2015 -0500 CTestCoverageCollectGCOV: Fix handling of international characters When loading the list of target support directories, read the file with UTF-8 encoding since that is what CMake writes into the file. This allows us to support international characters in the path to the build tree containing the target support directories. diff --git a/Modules/CTestCoverageCollectGCOV.cmake b/Modules/CTestCoverageCollectGCOV.cmake index dd10e83..a607c52 100644 --- a/Modules/CTestCoverageCollectGCOV.cmake +++ b/Modules/CTestCoverageCollectGCOV.cmake @@ -90,7 +90,8 @@ function(ctest_coverage_collect_gcov) # look for gcda files in the target directories # could do a glob from the top of the binary tree but # this will be faster and only look where the files will be - file(STRINGS "${binary_dir}/CMakeFiles/TargetDirectories.txt" target_dirs) + file(STRINGS "${binary_dir}/CMakeFiles/TargetDirectories.txt" target_dirs + ENCODING UTF-8) foreach(target_dir ${target_dirs}) file(GLOB_RECURSE gfiles RELATIVE ${binary_dir} "${target_dir}/*.gcda") list(LENGTH gfiles len) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8caa4e72abe4393914f4dcefd1621d3c86a7d139 commit 8caa4e72abe4393914f4dcefd1621d3c86a7d139 Author: Bill Hoffman AuthorDate: Wed Jan 28 17:08:41 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 10:40:58 2015 -0500 CTestCoverageCollectGCOV: Add test case diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 3aecd9b..1a79854 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -2269,6 +2269,18 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release PASS_REGULAR_EXPRESSION "Upload\\.xml") configure_file( + "${CMake_SOURCE_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake.in" + "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake" + @ONLY ESCAPE_QUOTES) + add_test(CTestCoverageCollectGCOV ${CMAKE_CTEST_COMMAND} + -S "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake" -VV + --output-log "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/testOut.log" + ) + set_tests_properties(CTestCoverageCollectGCOV PROPERTIES + PASS_REGULAR_EXPRESSION + "PASSED with correct output.*Testing/CoverageInfo/echoargs.gcov") + + configure_file( "${CMake_SOURCE_DIR}/Tests/CTestTestEmptyBinaryDirectory/test.cmake.in" "${CMake_BINARY_DIR}/Tests/CTestTestEmptyBinaryDirectory/test.cmake" @ONLY ESCAPE_QUOTES) diff --git a/Tests/CTestCoverageCollectGCOV/fakegcov.cmake b/Tests/CTestCoverageCollectGCOV/fakegcov.cmake new file mode 100644 index 0000000..e704f14 --- /dev/null +++ b/Tests/CTestCoverageCollectGCOV/fakegcov.cmake @@ -0,0 +1,8 @@ +foreach(I RANGE 0 ${CMAKE_ARGC}) + if("${CMAKE_ARGV${I}}" MATCHES ".*\\.gcda") + set(gcda_file "${CMAKE_ARGV${I}}") + endif() +endforeach() +get_filename_component(gcda_file ${gcda_file} NAME_WE) +file(WRITE "${CMAKE_SOURCE_DIR}/${gcda_file}.gcov" +"fake gcov file") diff --git a/Tests/CTestCoverageCollectGCOV/test.cmake.in b/Tests/CTestCoverageCollectGCOV/test.cmake.in new file mode 100644 index 0000000..4bdcb10 --- /dev/null +++ b/Tests/CTestCoverageCollectGCOV/test.cmake.in @@ -0,0 +1,39 @@ +cmake_minimum_required(VERSION 2.8.12) +set(CTEST_PROJECT_NAME "SmallAndFast") +set(CTEST_SOURCE_DIRECTORY "@CMake_SOURCE_DIR@/Tests/CTestTest/SmallAndFast") +set(CTEST_BINARY_DIRECTORY "@CMake_BINARY_DIR@/Tests/CTestCoverageCollectGCOV") +set(CTEST_CMAKE_GENERATOR "@CMAKE_GENERATOR@") +ctest_start(Experimental) +ctest_configure() +ctest_build() +ctest_test() + +file(WRITE ${CTEST_BINARY_DIRECTORY}/CMakeFiles/echoargs.dir/echoargs.gcda +"dummy +") + +include(CTestCoverageCollectGCOV) +set(tar_file ${CTEST_BINARY_DIRECTORY}/gcov.tar) +ctest_coverage_collect_gcov( + TARBALL "${tar_file}" + SOURCE "${CTEST_SOURCE_DIRECTORY}" + BUILD "${CTEST_BINARY_DIRECTORY}" + GCOV_COMMAND "${CMAKE_COMMAND}" + GCOV_OPTIONS -P "@CMake_SOURCE_DIR@/Tests/CTestCoverageCollectGCOV/fakegcov.cmake") + +execute_process(COMMAND + ${CMAKE_COMMAND} -E tar tf ${tar_file} + OUTPUT_VARIABLE out + WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}) + +set(expected_out +"Testing/CoverageInfo/echoargs.gcov +Testing/CoverageInfo/data.json +CMakeFiles/echoargs.dir/Labels.json +") + +if("${out}" STREQUAL "${expected_out}") + message("PASSED with correct output: ${out}") +else() + message(FATAL_ERROR "FAILED: expected:\n${expected_out}\nGot:\n${out}") +endif() http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5c828cc89b4f78eceaf0402719cf5693a6627935 commit 5c828cc89b4f78eceaf0402719cf5693a6627935 Author: Bill Hoffman AuthorDate: Wed Jan 28 17:08:41 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 10:40:58 2015 -0500 CTestCoverageCollectGCOV: Allow custom flags to gcov Add a GCOV_OPTIONS option to allow specification of custom flags. In ctest_coverage gcov support, if you set CTEST_COVERAGE_EXTRA_FLAGS, they get put on the command line before the -o. In this case we remove the -b and replace it with GCOV_OPTIONS. All other arguments remain the same. diff --git a/Modules/CTestCoverageCollectGCOV.cmake b/Modules/CTestCoverageCollectGCOV.cmake index f8058cd..dd10e83 100644 --- a/Modules/CTestCoverageCollectGCOV.cmake +++ b/Modules/CTestCoverageCollectGCOV.cmake @@ -19,6 +19,7 @@ # ctest_coverage_collect_gcov(TARBALL # [SOURCE ][BUILD ] # [GCOV_COMMAND ] +# [GCOV_OPTIONS ...] # ) # # Run gcov and package a tar file for CDash. The options are: @@ -39,6 +40,11 @@ # ``GCOV_COMMAND `` # Specify the full path to the ``gcov`` command on the machine. # Default is the value of :variable:`CTEST_COVERAGE_COMMAND`. +# +# ``GCOV_OPTIONS ...`` +# Specify options to be passed to gcov. The ``gcov`` command +# is run as ``gcov ... -o .gcda``. +# If not specified, the default option is just ``-b``. #============================================================================= # Copyright 2014-2015 Kitware, Inc. @@ -56,7 +62,7 @@ include(CMakeParseArguments) function(ctest_coverage_collect_gcov) set(options "") set(oneValueArgs TARBALL SOURCE BUILD GCOV_COMMAND) - set(multiValueArgs "") + set(multiValueArgs GCOV_OPTIONS) cmake_parse_arguments(GCOV "${options}" "${oneValueArgs}" "${multiValueArgs}" "" ${ARGN} ) if(NOT DEFINED GCOV_TARBALL) @@ -113,11 +119,18 @@ function(ctest_coverage_collect_gcov) get_filename_component(gcov_dir ${gcda_file} DIRECTORY) # run gcov, this will produce the .gcov file in the current # working directory + if(NOT DEFINED GCOV_GCOV_OPTIONS) + set(GCOV_GCOV_OPTIONS -b) + endif() execute_process(COMMAND - ${gcov_command} -b -o ${gcov_dir} ${gcda_file} + ${gcov_command} ${GCOV_GCOV_OPTIONS} -o ${gcov_dir} ${gcda_file} OUTPUT_VARIABLE out + RESULT_VARIABLE res WORKING_DIRECTORY ${coverage_dir}) endforeach() + if(NOT "${res}" EQUAL 0) + message(STATUS "Error running gcov: ${res} ${out}") + endif() # create json file with project information file(WRITE ${coverage_dir}/data.json "{ http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=30cb628ecb31484015136bf6065c9c40f59a9297 commit 30cb628ecb31484015136bf6065c9c40f59a9297 Author: Bill Hoffman AuthorDate: Wed Jan 28 17:08:41 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 10:40:53 2015 -0500 CTestCoverageCollectGCOV: Fix handling of large file counts Use the --files-from option to tar to handle lots of files. diff --git a/Modules/CTestCoverageCollectGCOV.cmake b/Modules/CTestCoverageCollectGCOV.cmake index f6616e0..f8058cd 100644 --- a/Modules/CTestCoverageCollectGCOV.cmake +++ b/Modules/CTestCoverageCollectGCOV.cmake @@ -130,9 +130,16 @@ function(ctest_coverage_collect_gcov) # tar up the coverage info with the same date so that the md5 # sum will be the same for the tar file independent of file time # stamps + string(REPLACE ";" "\n" gcov_files "${gcov_files}") + string(REPLACE ";" "\n" label_files "${label_files}") + file(WRITE "${coverage_dir}/coverage_file_list.txt" + "${gcov_files} +${coverage_dir}/data.json +${label_files} +") execute_process(COMMAND ${CMAKE_COMMAND} -E tar cvfj ${GCOV_TARBALL} - "--mtime=1970-01-01 0:0:0 UTC" ${gcov_files} - ${coverage_dir}/data.json ${label_files} + "--mtime=1970-01-01 0:0:0 UTC" + --files-from=${coverage_dir}/coverage_file_list.txt WORKING_DIRECTORY ${binary_dir}) endfunction() ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 13:22:59 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 13:22:59 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2556-g8e80319 Message-ID: <20150203182259.33895A9EA1@public.kitware.com> 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 8e8031933929b12fac8b167b542526af045a415a (commit) via dea42d929699ef62c1d6df0eb273beb30c9fbf6e (commit) from 062cb2f5d0c7ab90f04805207bf4bef6469764d3 (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=8e8031933929b12fac8b167b542526af045a415a commit 8e8031933929b12fac8b167b542526af045a415a Merge: 062cb2f dea42d9 Author: Brad King AuthorDate: Tue Feb 3 13:22:58 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 13:22:58 2015 -0500 Merge topic 'fix-default-install-config' into next dea42d92 install: Fix regression in default configuration selection http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dea42d929699ef62c1d6df0eb273beb30c9fbf6e commit dea42d929699ef62c1d6df0eb273beb30c9fbf6e Author: Ben Boeckel AuthorDate: Tue Feb 3 13:01:03 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 13:05:47 2015 -0500 install: Fix regression in default configuration selection The refactoring in commit v3.1.0-rc1~812^2~16 (stringapi: Pass configuration names as strings, 2014-02-09) broke the code path in cmLocalGenerator::GenerateInstallRules that intends to pick a default install configuration for multi-config generators. Fix the logic to select an empty default configuration only when using a single-config generator whose CMAKE_BUILD_TYPE is not set. Inspired-by: Roman W?ger Reported-by: NoRulez diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 50e279b..e726ab9 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -390,27 +390,23 @@ void cmLocalGenerator::GenerateInstallRules() this->Makefile->GetConfigurations(configurationTypes, false); // Choose a default install configuration. - const char* default_config = config.c_str(); + std::string default_config = config; const char* default_order[] = {"RELEASE", "MINSIZEREL", "RELWITHDEBINFO", "DEBUG", 0}; - for(const char** c = default_order; *c && !default_config; ++c) + for(const char** c = default_order; *c && default_config.empty(); ++c) { for(std::vector::iterator i = configurationTypes.begin(); i != configurationTypes.end(); ++i) { if(cmSystemTools::UpperCase(*i) == *c) { - default_config = i->c_str(); + default_config = *i; } } } - if(!default_config && !configurationTypes.empty()) + if(default_config.empty() && !configurationTypes.empty()) { - default_config = configurationTypes[0].c_str(); - } - if(!default_config) - { - default_config = "Release"; + default_config = configurationTypes[0]; } // Create the install script file. ----------------------------------------------------------------------- Summary of changes: Source/cmLocalGenerator.cxx | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 3 13:41:32 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 3 Feb 2015 13:41:32 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2558-gff75867 Message-ID: <20150203184132.27C464943@public.kitware.com> 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 ff758672b69e0992e4bf7a7c9d031b3ce4bb5d20 (commit) via 467f5bcc6ebb8468bb2ef1fc4edaeab9970a37d4 (commit) from 8e8031933929b12fac8b167b542526af045a415a (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=ff758672b69e0992e4bf7a7c9d031b3ce4bb5d20 commit ff758672b69e0992e4bf7a7c9d031b3ce4bb5d20 Merge: 8e80319 467f5bc Author: Brad King AuthorDate: Tue Feb 3 13:41:31 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 13:41:31 2015 -0500 Merge topic 'fix-msvc-linker-flags-typo' into next 467f5bcc MSVC: Fix initialization of RelWithDebInfo shared library link flags (#15385) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=467f5bcc6ebb8468bb2ef1fc4edaeab9970a37d4 commit 467f5bcc6ebb8468bb2ef1fc4edaeab9970a37d4 Author: Brad King AuthorDate: Tue Feb 3 13:36:37 2015 -0500 Commit: Brad King CommitDate: Tue Feb 3 13:41:21 2015 -0500 MSVC: Fix initialization of RelWithDebInfo shared library link flags (#15385) Initialize CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT from the value of CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT rather than the one for the DEBUG configuration. This typo has been present since the logic was first added in commit 36db45082e (ENH: fix up several problems with new stuff, 2002-11-11). Reported-by: Gunnar Roth diff --git a/Modules/Platform/Windows-MSVC.cmake b/Modules/Platform/Windows-MSVC.cmake index a72f946..2440f89 100644 --- a/Modules/Platform/Windows-MSVC.cmake +++ b/Modules/Platform/Windows-MSVC.cmake @@ -235,7 +235,7 @@ set(CMAKE_EXE_LINKER_FLAGS_RELEASE_INIT "/INCREMENTAL:NO") # shared linker flags set (CMAKE_SHARED_LINKER_FLAGS_INIT ${CMAKE_EXE_LINKER_FLAGS_INIT}) set (CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT}) -set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT}) +set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT}) set (CMAKE_SHARED_LINKER_FLAGS_RELEASE_INIT ${CMAKE_EXE_LINKER_FLAGS_RELEASE_INIT}) set (CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL_INIT ${CMAKE_EXE_LINKER_FLAGS_MINSIZEREL_INIT}) # module linker flags diff --git a/Modules/Platform/Windows-df.cmake b/Modules/Platform/Windows-df.cmake index 211cc9d..59d88a3 100644 --- a/Modules/Platform/Windows-df.cmake +++ b/Modules/Platform/Windows-df.cmake @@ -62,7 +62,7 @@ endif () set (CMAKE_SHARED_LINKER_FLAGS_INIT ${CMAKE_EXE_LINKER_FLAGS_INIT}) set (CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT}) -set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT}) +set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT}) set (CMAKE_MODULE_LINKER_FLAGS_INIT ${CMAKE_SHARED_LINKER_FLAGS_INIT}) set (CMAKE_MODULE_LINKER_FLAGS_DEBUG_INIT ${CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT}) set (CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT}) ----------------------------------------------------------------------- Summary of changes: Modules/Platform/Windows-MSVC.cmake | 2 +- Modules/Platform/Windows-df.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Tue Feb 3 16:32:55 2015 From: steveire at gmail.com (Stephen Kelly) Date: Tue, 3 Feb 2015 16:32:55 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2560-gdc5bd78 Message-ID: <20150203213255.2E454AAC95@public.kitware.com> 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 dc5bd78ae99b4851dbc505ec5a47622c7045ff9e (commit) via 584ba3fe68d49dcb7d0d4d5d826f883548a24e5d (commit) from ff758672b69e0992e4bf7a7c9d031b3ce4bb5d20 (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=dc5bd78ae99b4851dbc505ec5a47622c7045ff9e commit dc5bd78ae99b4851dbc505ec5a47622c7045ff9e Merge: ff75867 584ba3f Author: Stephen Kelly AuthorDate: Tue Feb 3 16:32:54 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 16:32:54 2015 -0500 Merge topic 'fix-C-standard-features' into next 584ba3fe Features: Fix C90 feature detection. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=584ba3fe68d49dcb7d0d4d5d826f883548a24e5d commit 584ba3fe68d49dcb7d0d4d5d826f883548a24e5d Author: Stephen Kelly AuthorDate: Tue Feb 3 21:47:45 2015 +0100 Commit: Stephen Kelly CommitDate: Tue Feb 3 22:05:27 2015 +0100 Features: Fix C90 feature detection. This bug caused c_function_prototypes to not be recorded at configure time when compiling with -std=gnu99 or similar. In the case of feature recording, that was not a problem, because the logic in CMakeDetermineCompileFeatures.cmake currently assumes that a feature present for an earlier standard is present for a later standard. However, the detection strings are also used in WriteCompilerDetectionHeader, so the feature macro has been defined to '0' when using a later language dialect. Fix that by not checking the existence of the __STDC_VERSION__ macro at all when detecting C90 features. diff --git a/Modules/Compiler/AppleClang-C-FeatureTests.cmake b/Modules/Compiler/AppleClang-C-FeatureTests.cmake index 6f3d6a7..e80b526 100644 --- a/Modules/Compiler/AppleClang-C-FeatureTests.cmake +++ b/Modules/Compiler/AppleClang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(AppleClang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __ set(_cmake_feature_test_c_restrict "${AppleClang_C99}") set(_cmake_feature_test_c_variadic_macros "${AppleClang_C99}") -set(AppleClang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(AppleClang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${AppleClang_C90}") diff --git a/Modules/Compiler/Clang-C-FeatureTests.cmake b/Modules/Compiler/Clang-C-FeatureTests.cmake index 2d8673d..99c2252 100644 --- a/Modules/Compiler/Clang-C-FeatureTests.cmake +++ b/Modules/Compiler/Clang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(Clang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __STDC_ set(_cmake_feature_test_c_restrict "${Clang_C99}") set(_cmake_feature_test_c_variadic_macros "${Clang_C99}") -set(Clang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(Clang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${Clang_C90}") diff --git a/Modules/Compiler/GNU-C-FeatureTests.cmake b/Modules/Compiler/GNU-C-FeatureTests.cmake index d8e456c..b3fe33f 100644 --- a/Modules/Compiler/GNU-C-FeatureTests.cmake +++ b/Modules/Compiler/GNU-C-FeatureTests.cmake @@ -13,5 +13,5 @@ set(GNU44_C99 "(__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSIO set(_cmake_feature_test_c_restrict "${GNU44_C99}") set(_cmake_feature_test_c_variadic_macros "${GNU44_C99}") -set(GNU_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(GNU_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${GNU_C90}") diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt index 38c44c8..3ba1e0a 100644 --- a/Tests/CompileFeatures/CMakeLists.txt +++ b/Tests/CompileFeatures/CMakeLists.txt @@ -164,6 +164,38 @@ if (CMAKE_C_COMPILE_FEATURES) ) endif() endif() + + add_executable(CompileFeaturesGenex_C genex_test.c) + set_property(TARGET CompileFeaturesGenex_C PROPERTY C_STANDARD 11) + + if (CMAKE_C_COMPILER_ID STREQUAL "GNU") + if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.6) + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + else() + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=0 + ) + endif() + elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + endif() + + list(APPEND expected_defs + EXPECT_C_FUNCTION_PROTOTYPES=1 + EXPECT_C_RESTRICT=1 + ) + + target_compile_definitions(CompileFeaturesGenex_C PRIVATE + HAVE_C_FUNCTION_PROTOTYPES=$ + HAVE_C_RESTRICT=$ + HAVE_C_STATIC_ASSERT=$ + ${expected_defs} + ) endif() if (CMAKE_CXX_COMPILE_FEATURES) diff --git a/Tests/CompileFeatures/genex_test.c b/Tests/CompileFeatures/genex_test.c new file mode 100644 index 0000000..b1215bd --- /dev/null +++ b/Tests/CompileFeatures/genex_test.c @@ -0,0 +1,38 @@ +#ifndef EXPECT_C_STATIC_ASSERT +# error EXPECT_C_STATIC_ASSERT not defined +#endif +#ifndef EXPECT_C_FUNCTION_PROTOTYPES +# error EXPECT_C_FUNCTION_PROTOTYPES not defined +#endif +#ifndef EXPECT_C_RESTRICT +# error EXPECT_C_RESTRICT not defined +#endif + +#if !EXPECT_C_STATIC_ASSERT +#if EXPECT_C_STATIC_ASSERT +#error "Expect c_static_assert feature" +#endif +#else +#if !EXPECT_C_STATIC_ASSERT +#error "Expect no c_static_assert feature" +#endif +#endif + +#if !EXPECT_C_FUNCTION_PROTOTYPES +# error Expect c_function_prototypes support +#endif + +#if !EXPECT_C_RESTRICT +# if EXPECT_C_RESTRICT +# error Expect c_restrict support +# endif +#else +# if !EXPECT_C_RESTRICT +# error Expect no c_restrict support +# endif +#endif + +int main() +{ + +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt index e70a977..d431c0e 100644 --- a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt +++ b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt @@ -90,6 +90,15 @@ add_executable(WriteCompilerDetectionHeader main.cpp) set_property(TARGET WriteCompilerDetectionHeader PROPERTY CXX_STANDARD 98) set_defines(WriteCompilerDetectionHeader "${true_defs}" "${false_defs}") +add_executable(WriteCompilerDetectionHeader_C main.c) +set_property(TARGET WriteCompilerDetectionHeader_C PROPERTY C_STANDARD 90) +set_defines(WriteCompilerDetectionHeader_C "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + +add_executable(WriteCompilerDetectionHeader_C_multi main_multi.c) +set_property(TARGET WriteCompilerDetectionHeader_C_multi PROPERTY C_STANDARD 90) +set_defines(WriteCompilerDetectionHeader_C_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") +target_include_directories(WriteCompilerDetectionHeader_C_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) + write_compiler_detection_header( FILE "${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files/multi_file_compiler_detection.h" PREFIX MULTI @@ -130,3 +139,12 @@ add_executable(multi_files_11 multi_files.cpp) set_property(TARGET multi_files_11 PROPERTY CXX_STANDARD 11) target_include_directories(multi_files_11 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) set_defines(multi_files_11 "${true_defs}" "${false_defs}") + +add_executable(WriteCompilerDetectionHeader_C11 main.c) +set_property(TARGET WriteCompilerDetectionHeader_C11 PROPERTY C_STANDARD 11) +set_defines(WriteCompilerDetectionHeader_C11 "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + +add_executable(WriteCompilerDetectionHeader_C11_multi main_multi.c) +set_property(TARGET WriteCompilerDetectionHeader_C11_multi PROPERTY C_STANDARD 11) +set_defines(WriteCompilerDetectionHeader_C11_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") +target_include_directories(WriteCompilerDetectionHeader_C11_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) diff --git a/Tests/Module/WriteCompilerDetectionHeader/main.c b/Tests/Module/WriteCompilerDetectionHeader/main.c new file mode 100644 index 0000000..9023b0f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main.c @@ -0,0 +1,29 @@ + +#include "test_compiler_detection.h" + +#if !defined(TEST_COMPILER_C_FUNCTION_PROTOTYPES) || !TEST_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected TEST_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(TEST_COMPILER_C_RESTRICT) || !TEST_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected TEST_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no TEST_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef TEST_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/main_multi.c b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c new file mode 100644 index 0000000..6f4573f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c @@ -0,0 +1,29 @@ + +#include "multi_file_compiler_detection.h" + +#if !defined(MULTI_COMPILER_C_FUNCTION_PROTOTYPES) || !MULTI_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected MULTI_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(MULTI_COMPILER_C_RESTRICT) || !MULTI_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected MULTI_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no MULTI_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef MULTI_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} ----------------------------------------------------------------------- Summary of changes: Modules/Compiler/AppleClang-C-FeatureTests.cmake | 2 +- Modules/Compiler/Clang-C-FeatureTests.cmake | 2 +- Modules/Compiler/GNU-C-FeatureTests.cmake | 2 +- Tests/CompileFeatures/CMakeLists.txt | 32 +++++++++++++++++ Tests/CompileFeatures/genex_test.c | 38 ++++++++++++++++++++ .../WriteCompilerDetectionHeader/CMakeLists.txt | 18 ++++++++++ Tests/Module/WriteCompilerDetectionHeader/main.c | 29 +++++++++++++++ .../WriteCompilerDetectionHeader/main_multi.c | 29 +++++++++++++++ 8 files changed, 149 insertions(+), 3 deletions(-) create mode 100644 Tests/CompileFeatures/genex_test.c create mode 100644 Tests/Module/WriteCompilerDetectionHeader/main.c create mode 100644 Tests/Module/WriteCompilerDetectionHeader/main_multi.c hooks/post-receive -- CMake From steveire at gmail.com Tue Feb 3 16:56:03 2015 From: steveire at gmail.com (Stephen Kelly) Date: Tue, 3 Feb 2015 16:56:03 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2562-g9fad1bd Message-ID: <20150203215603.8C7F5AA9BB@public.kitware.com> 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 9fad1bd5aef1d7c46dff587febd66808781e88ad (commit) via 2fed8e173cbd8c897b0cf2fd46ec72fedc3c43ed (commit) from dc5bd78ae99b4851dbc505ec5a47622c7045ff9e (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=9fad1bd5aef1d7c46dff587febd66808781e88ad commit 9fad1bd5aef1d7c46dff587febd66808781e88ad Merge: dc5bd78 2fed8e1 Author: Stephen Kelly AuthorDate: Tue Feb 3 16:56:02 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 16:56:02 2015 -0500 Merge topic 'Qt-AUTOUIC-file-origin' into next 2fed8e17 QtAutogen: Issue error message with origin file (#15342). http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2fed8e173cbd8c897b0cf2fd46ec72fedc3c43ed commit 2fed8e173cbd8c897b0cf2fd46ec72fedc3c43ed Author: Stephen Kelly AuthorDate: Tue Feb 3 22:52:17 2015 +0100 Commit: Stephen Kelly CommitDate: Tue Feb 3 22:52:17 2015 +0100 QtAutogen: Issue error message with origin file (#15342). diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx index bf79066..e18e757 100644 --- a/Source/cmQtAutoGenerators.cxx +++ b/Source/cmQtAutoGenerators.cxx @@ -2243,7 +2243,8 @@ bool cmQtAutoGenerators::GenerateUi(const std::string& realName, if (!result || retVal) { std::cerr << "AUTOUIC: error: process for " << ui_output_file << - " failed:\n" << output << std::endl; + " needed by\n \"" << realName << "\"\nfailed:\n" << output + << std::endl; this->RunUicFailed = true; cmSystemTools::RemoveFile(ui_output_file); return false; ----------------------------------------------------------------------- Summary of changes: Source/cmQtAutoGenerators.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From steveire at gmail.com Tue Feb 3 17:50:08 2015 From: steveire at gmail.com (Stephen Kelly) Date: Tue, 3 Feb 2015 17:50:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2564-gb7225dd Message-ID: <20150203225008.26E0EA7B18@public.kitware.com> 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 b7225ddb44bf375df320a3c9096ab8dac965c3a8 (commit) via 117176317359cbdaa09afad7168f1d6c923c56b5 (commit) from 9fad1bd5aef1d7c46dff587febd66808781e88ad (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=b7225ddb44bf375df320a3c9096ab8dac965c3a8 commit b7225ddb44bf375df320a3c9096ab8dac965c3a8 Merge: 9fad1bd 1171763 Author: Stephen Kelly AuthorDate: Tue Feb 3 17:50:07 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 17:50:07 2015 -0500 Merge topic 'fix-C-standard-features' into next 11717631 avoid-MSVC http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=117176317359cbdaa09afad7168f1d6c923c56b5 commit 117176317359cbdaa09afad7168f1d6c923c56b5 Author: Stephen Kelly AuthorDate: Tue Feb 3 23:49:40 2015 +0100 Commit: Stephen Kelly CommitDate: Tue Feb 3 23:49:40 2015 +0100 avoid-MSVC diff --git a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt index d431c0e..c538280 100644 --- a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt +++ b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt @@ -84,21 +84,21 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU" add_executable(C_undefined c_undefined.c) set_property(TARGET C_undefined PROPERTY C_STANDARD 90) target_compile_options(C_undefined PRIVATE -Werror=undef) + + add_executable(WriteCompilerDetectionHeader_C main.c) + set_property(TARGET WriteCompilerDetectionHeader_C PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + + add_executable(WriteCompilerDetectionHeader_C_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C_multi PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + target_include_directories(WriteCompilerDetectionHeader_C_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) endif() add_executable(WriteCompilerDetectionHeader main.cpp) set_property(TARGET WriteCompilerDetectionHeader PROPERTY CXX_STANDARD 98) set_defines(WriteCompilerDetectionHeader "${true_defs}" "${false_defs}") -add_executable(WriteCompilerDetectionHeader_C main.c) -set_property(TARGET WriteCompilerDetectionHeader_C PROPERTY C_STANDARD 90) -set_defines(WriteCompilerDetectionHeader_C "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") - -add_executable(WriteCompilerDetectionHeader_C_multi main_multi.c) -set_property(TARGET WriteCompilerDetectionHeader_C_multi PROPERTY C_STANDARD 90) -set_defines(WriteCompilerDetectionHeader_C_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") -target_include_directories(WriteCompilerDetectionHeader_C_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) - write_compiler_detection_header( FILE "${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files/multi_file_compiler_detection.h" PREFIX MULTI @@ -140,11 +140,15 @@ set_property(TARGET multi_files_11 PROPERTY CXX_STANDARD 11) target_include_directories(multi_files_11 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) set_defines(multi_files_11 "${true_defs}" "${false_defs}") -add_executable(WriteCompilerDetectionHeader_C11 main.c) -set_property(TARGET WriteCompilerDetectionHeader_C11 PROPERTY C_STANDARD 11) -set_defines(WriteCompilerDetectionHeader_C11 "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") - -add_executable(WriteCompilerDetectionHeader_C11_multi main_multi.c) -set_property(TARGET WriteCompilerDetectionHeader_C11_multi PROPERTY C_STANDARD 11) -set_defines(WriteCompilerDetectionHeader_C11_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") -target_include_directories(WriteCompilerDetectionHeader_C11_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) +if (CMAKE_C_COMPILER_ID STREQUAL "GNU" + OR CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + add_executable(WriteCompilerDetectionHeader_C11 main.c) + set_property(TARGET WriteCompilerDetectionHeader_C11 PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11 "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + + add_executable(WriteCompilerDetectionHeader_C11_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C11_multi PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + target_include_directories(WriteCompilerDetectionHeader_C11_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) +endif() ----------------------------------------------------------------------- Summary of changes: .../WriteCompilerDetectionHeader/CMakeLists.txt | 38 +++++++++++--------- 1 file changed, 21 insertions(+), 17 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Tue Feb 3 17:50:29 2015 From: steveire at gmail.com (Stephen Kelly) Date: Tue, 3 Feb 2015 17:50:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2566-g8beff48 Message-ID: <20150203225029.5300CA7CCD@public.kitware.com> 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 8beff487b2f22cb03b78fcc1f6375a63ce04420e (commit) via 5c23ef334f3c5132f24d96dee23bf1a8430951f3 (commit) from b7225ddb44bf375df320a3c9096ab8dac965c3a8 (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=8beff487b2f22cb03b78fcc1f6375a63ce04420e commit 8beff487b2f22cb03b78fcc1f6375a63ce04420e Merge: b7225dd 5c23ef3 Author: Stephen Kelly AuthorDate: Tue Feb 3 17:50:28 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 3 17:50:28 2015 -0500 Merge topic 'fix-C-standard-features' into next 5c23ef33 Features: Fix C90 feature detection. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5c23ef334f3c5132f24d96dee23bf1a8430951f3 commit 5c23ef334f3c5132f24d96dee23bf1a8430951f3 Author: Stephen Kelly AuthorDate: Tue Feb 3 21:47:45 2015 +0100 Commit: Stephen Kelly CommitDate: Tue Feb 3 23:50:13 2015 +0100 Features: Fix C90 feature detection. This bug caused c_function_prototypes to not be recorded at configure time when compiling with -std=gnu99 or similar. In the case of feature recording, that was not a problem, because the logic in CMakeDetermineCompileFeatures.cmake currently assumes that a feature present for an earlier standard is present for a later standard. However, the detection strings are also used in WriteCompilerDetectionHeader, so the feature macro has been defined to '0' when using a later language dialect. Fix that by not checking the existence of the __STDC_VERSION__ macro at all when detecting C90 features. diff --git a/Modules/Compiler/AppleClang-C-FeatureTests.cmake b/Modules/Compiler/AppleClang-C-FeatureTests.cmake index 6f3d6a7..e80b526 100644 --- a/Modules/Compiler/AppleClang-C-FeatureTests.cmake +++ b/Modules/Compiler/AppleClang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(AppleClang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __ set(_cmake_feature_test_c_restrict "${AppleClang_C99}") set(_cmake_feature_test_c_variadic_macros "${AppleClang_C99}") -set(AppleClang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(AppleClang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${AppleClang_C90}") diff --git a/Modules/Compiler/Clang-C-FeatureTests.cmake b/Modules/Compiler/Clang-C-FeatureTests.cmake index 2d8673d..99c2252 100644 --- a/Modules/Compiler/Clang-C-FeatureTests.cmake +++ b/Modules/Compiler/Clang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(Clang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __STDC_ set(_cmake_feature_test_c_restrict "${Clang_C99}") set(_cmake_feature_test_c_variadic_macros "${Clang_C99}") -set(Clang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(Clang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${Clang_C90}") diff --git a/Modules/Compiler/GNU-C-FeatureTests.cmake b/Modules/Compiler/GNU-C-FeatureTests.cmake index d8e456c..b3fe33f 100644 --- a/Modules/Compiler/GNU-C-FeatureTests.cmake +++ b/Modules/Compiler/GNU-C-FeatureTests.cmake @@ -13,5 +13,5 @@ set(GNU44_C99 "(__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSIO set(_cmake_feature_test_c_restrict "${GNU44_C99}") set(_cmake_feature_test_c_variadic_macros "${GNU44_C99}") -set(GNU_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(GNU_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${GNU_C90}") diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt index 38c44c8..3ba1e0a 100644 --- a/Tests/CompileFeatures/CMakeLists.txt +++ b/Tests/CompileFeatures/CMakeLists.txt @@ -164,6 +164,38 @@ if (CMAKE_C_COMPILE_FEATURES) ) endif() endif() + + add_executable(CompileFeaturesGenex_C genex_test.c) + set_property(TARGET CompileFeaturesGenex_C PROPERTY C_STANDARD 11) + + if (CMAKE_C_COMPILER_ID STREQUAL "GNU") + if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.6) + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + else() + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=0 + ) + endif() + elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + endif() + + list(APPEND expected_defs + EXPECT_C_FUNCTION_PROTOTYPES=1 + EXPECT_C_RESTRICT=1 + ) + + target_compile_definitions(CompileFeaturesGenex_C PRIVATE + HAVE_C_FUNCTION_PROTOTYPES=$ + HAVE_C_RESTRICT=$ + HAVE_C_STATIC_ASSERT=$ + ${expected_defs} + ) endif() if (CMAKE_CXX_COMPILE_FEATURES) diff --git a/Tests/CompileFeatures/genex_test.c b/Tests/CompileFeatures/genex_test.c new file mode 100644 index 0000000..b1215bd --- /dev/null +++ b/Tests/CompileFeatures/genex_test.c @@ -0,0 +1,38 @@ +#ifndef EXPECT_C_STATIC_ASSERT +# error EXPECT_C_STATIC_ASSERT not defined +#endif +#ifndef EXPECT_C_FUNCTION_PROTOTYPES +# error EXPECT_C_FUNCTION_PROTOTYPES not defined +#endif +#ifndef EXPECT_C_RESTRICT +# error EXPECT_C_RESTRICT not defined +#endif + +#if !EXPECT_C_STATIC_ASSERT +#if EXPECT_C_STATIC_ASSERT +#error "Expect c_static_assert feature" +#endif +#else +#if !EXPECT_C_STATIC_ASSERT +#error "Expect no c_static_assert feature" +#endif +#endif + +#if !EXPECT_C_FUNCTION_PROTOTYPES +# error Expect c_function_prototypes support +#endif + +#if !EXPECT_C_RESTRICT +# if EXPECT_C_RESTRICT +# error Expect c_restrict support +# endif +#else +# if !EXPECT_C_RESTRICT +# error Expect no c_restrict support +# endif +#endif + +int main() +{ + +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt index e70a977..c538280 100644 --- a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt +++ b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt @@ -84,6 +84,15 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU" add_executable(C_undefined c_undefined.c) set_property(TARGET C_undefined PROPERTY C_STANDARD 90) target_compile_options(C_undefined PRIVATE -Werror=undef) + + add_executable(WriteCompilerDetectionHeader_C main.c) + set_property(TARGET WriteCompilerDetectionHeader_C PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + + add_executable(WriteCompilerDetectionHeader_C_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C_multi PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + target_include_directories(WriteCompilerDetectionHeader_C_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) endif() add_executable(WriteCompilerDetectionHeader main.cpp) @@ -130,3 +139,16 @@ add_executable(multi_files_11 multi_files.cpp) set_property(TARGET multi_files_11 PROPERTY CXX_STANDARD 11) target_include_directories(multi_files_11 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) set_defines(multi_files_11 "${true_defs}" "${false_defs}") + +if (CMAKE_C_COMPILER_ID STREQUAL "GNU" + OR CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + add_executable(WriteCompilerDetectionHeader_C11 main.c) + set_property(TARGET WriteCompilerDetectionHeader_C11 PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11 "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + + add_executable(WriteCompilerDetectionHeader_C11_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C11_multi PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + target_include_directories(WriteCompilerDetectionHeader_C11_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) +endif() diff --git a/Tests/Module/WriteCompilerDetectionHeader/main.c b/Tests/Module/WriteCompilerDetectionHeader/main.c new file mode 100644 index 0000000..9023b0f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main.c @@ -0,0 +1,29 @@ + +#include "test_compiler_detection.h" + +#if !defined(TEST_COMPILER_C_FUNCTION_PROTOTYPES) || !TEST_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected TEST_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(TEST_COMPILER_C_RESTRICT) || !TEST_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected TEST_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no TEST_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef TEST_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/main_multi.c b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c new file mode 100644 index 0000000..6f4573f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c @@ -0,0 +1,29 @@ + +#include "multi_file_compiler_detection.h" + +#if !defined(MULTI_COMPILER_C_FUNCTION_PROTOTYPES) || !MULTI_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected MULTI_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(MULTI_COMPILER_C_RESTRICT) || !MULTI_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected MULTI_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no MULTI_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef MULTI_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Wed Feb 4 00:01:11 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Wed, 4 Feb 2015 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-994-g5f37785 Message-ID: <20150204050111.A666EAAA57@public.kitware.com> 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 5f3778571770ccbceca22aa18ad06f1779a3ca5a (commit) from aec11372a5868694937b1c232af9d7510ad8497e (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=5f3778571770ccbceca22aa18ad06f1779a3ca5a commit 5f3778571770ccbceca22aa18ad06f1779a3ca5a Author: Kitware Robot AuthorDate: Wed Feb 4 00:01:09 2015 -0500 Commit: Kitware Robot CommitDate: Wed Feb 4 00:01:09 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index dacbd20..8722425 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 20150203) +set(CMake_VERSION_PATCH 20150204) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:22:15 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:22:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2568-ga6db7d2 Message-ID: <20150204172215.506EAAA08A@public.kitware.com> 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 a6db7d2d48faf5a7455b2cca6e310e24fed6e85a (commit) via 809a5a5e2391484966614f11100de956619adda6 (commit) from 8beff487b2f22cb03b78fcc1f6375a63ce04420e (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=a6db7d2d48faf5a7455b2cca6e310e24fed6e85a commit a6db7d2d48faf5a7455b2cca6e310e24fed6e85a Merge: 8beff48 809a5a5 Author: Brad King AuthorDate: Wed Feb 4 12:22:14 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 12:22:14 2015 -0500 Merge topic 'CTestCoverageCollectGCOV-refinements' into next 809a5a5e Help: Add notes for topic 'CTestCoverageCollectGCOV-refinements' http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=809a5a5e2391484966614f11100de956619adda6 commit 809a5a5e2391484966614f11100de956619adda6 Author: Brad King AuthorDate: Wed Feb 4 12:21:52 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 12:21:52 2015 -0500 Help: Add notes for topic 'CTestCoverageCollectGCOV-refinements' diff --git a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst b/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst new file mode 100644 index 0000000..afa0a52 --- /dev/null +++ b/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst @@ -0,0 +1,6 @@ +CTestCoverageCollectGCOV-refinements +------------------------------------ + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. ----------------------------------------------------------------------- Summary of changes: Help/release/dev/CTestCoverageCollectGCOV-refinements.rst | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Help/release/dev/CTestCoverageCollectGCOV-refinements.rst hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:30:11 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:30:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1000-g8f82004 Message-ID: <20150204173011.A4D45AA960@public.kitware.com> 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 8f820043684fa8a11289061297828bccce7ba080 (commit) via 809a5a5e2391484966614f11100de956619adda6 (commit) via 03c0812c41d4db2a48687ce0c053452906dfe69f (commit) via 8caa4e72abe4393914f4dcefd1621d3c86a7d139 (commit) via 5c828cc89b4f78eceaf0402719cf5693a6627935 (commit) via 30cb628ecb31484015136bf6065c9c40f59a9297 (commit) from 5f3778571770ccbceca22aa18ad06f1779a3ca5a (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=8f820043684fa8a11289061297828bccce7ba080 commit 8f820043684fa8a11289061297828bccce7ba080 Merge: 5f37785 809a5a5 Author: Brad King AuthorDate: Wed Feb 4 12:30:10 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 12:30:10 2015 -0500 Merge topic 'CTestCoverageCollectGCOV-refinements' 809a5a5e Help: Add notes for topic 'CTestCoverageCollectGCOV-refinements' 03c0812c CTestCoverageCollectGCOV: Fix handling of international characters 8caa4e72 CTestCoverageCollectGCOV: Add test case 5c828cc8 CTestCoverageCollectGCOV: Allow custom flags to gcov 30cb628e CTestCoverageCollectGCOV: Fix handling of large file counts ----------------------------------------------------------------------- Summary of changes: .../dev/CTestCoverageCollectGCOV-refinements.rst | 6 +++ Modules/CTestCoverageCollectGCOV.cmake | 31 +++++++++++++--- Tests/CMakeLists.txt | 12 ++++++ Tests/CTestCoverageCollectGCOV/fakegcov.cmake | 8 ++++ Tests/CTestCoverageCollectGCOV/test.cmake.in | 39 ++++++++++++++++++++ 5 files changed, 91 insertions(+), 5 deletions(-) create mode 100644 Help/release/dev/CTestCoverageCollectGCOV-refinements.rst create mode 100644 Tests/CTestCoverageCollectGCOV/fakegcov.cmake create mode 100644 Tests/CTestCoverageCollectGCOV/test.cmake.in hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:30:13 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:30:13 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1002-gbe072d3 Message-ID: <20150204173013.7AD01AA964@public.kitware.com> 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 be072d3fe1872651ce03ad8258bef23e1e3f795c (commit) via 2fed8e173cbd8c897b0cf2fd46ec72fedc3c43ed (commit) from 8f820043684fa8a11289061297828bccce7ba080 (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=be072d3fe1872651ce03ad8258bef23e1e3f795c commit be072d3fe1872651ce03ad8258bef23e1e3f795c Merge: 8f82004 2fed8e1 Author: Brad King AuthorDate: Wed Feb 4 12:30:12 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 12:30:12 2015 -0500 Merge topic 'Qt-AUTOUIC-file-origin' 2fed8e17 QtAutogen: Issue error message with origin file (#15342). ----------------------------------------------------------------------- Summary of changes: Source/cmQtAutoGenerators.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:30:15 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:30:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1004-gff90f49 Message-ID: <20150204173015.DD0E9AA968@public.kitware.com> 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 ff90f49d188b4e700abe31afe66c31f38e315648 (commit) via 467f5bcc6ebb8468bb2ef1fc4edaeab9970a37d4 (commit) from be072d3fe1872651ce03ad8258bef23e1e3f795c (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=ff90f49d188b4e700abe31afe66c31f38e315648 commit ff90f49d188b4e700abe31afe66c31f38e315648 Merge: be072d3 467f5bc Author: Brad King AuthorDate: Wed Feb 4 12:30:14 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 12:30:14 2015 -0500 Merge topic 'fix-msvc-linker-flags-typo' 467f5bcc MSVC: Fix initialization of RelWithDebInfo shared library link flags (#15385) ----------------------------------------------------------------------- Summary of changes: Modules/Platform/Windows-MSVC.cmake | 2 +- Modules/Platform/Windows-df.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:30:18 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:30:18 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1006-gf560fdd Message-ID: <20150204173018.1BF94AA97F@public.kitware.com> 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 f560fdddd19200f994fb98ba5576bed34938a7a3 (commit) via dea42d929699ef62c1d6df0eb273beb30c9fbf6e (commit) from ff90f49d188b4e700abe31afe66c31f38e315648 (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=f560fdddd19200f994fb98ba5576bed34938a7a3 commit f560fdddd19200f994fb98ba5576bed34938a7a3 Merge: ff90f49 dea42d9 Author: Brad King AuthorDate: Wed Feb 4 12:30:17 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 12:30:17 2015 -0500 Merge topic 'fix-default-install-config' dea42d92 install: Fix regression in default configuration selection ----------------------------------------------------------------------- Summary of changes: Source/cmLocalGenerator.cxx | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:30:33 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:30:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2574-g1c5fef6 Message-ID: <20150204173033.0D4E8AA986@public.kitware.com> 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 1c5fef6fdc772db6d0f603da9eb44831103aa27f (commit) via f560fdddd19200f994fb98ba5576bed34938a7a3 (commit) via ff90f49d188b4e700abe31afe66c31f38e315648 (commit) via be072d3fe1872651ce03ad8258bef23e1e3f795c (commit) via 8f820043684fa8a11289061297828bccce7ba080 (commit) via 5f3778571770ccbceca22aa18ad06f1779a3ca5a (commit) from a6db7d2d48faf5a7455b2cca6e310e24fed6e85a (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=1c5fef6fdc772db6d0f603da9eb44831103aa27f commit 1c5fef6fdc772db6d0f603da9eb44831103aa27f Merge: a6db7d2 f560fdd Author: Brad King AuthorDate: Wed Feb 4 12:30:24 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 12:30:24 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:31:20 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:31:20 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1009-geef9a47 Message-ID: <20150204173120.98C38AA9C3@public.kitware.com> 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 eef9a476179dd91c69d30f937e742ea484436fc6 (commit) via e6afd9500d0d00855ef0144a1e7c913a8bf4927d (commit) via fdb0799d7568efbae2b01ede62e6cec30a0798ce (commit) from f560fdddd19200f994fb98ba5576bed34938a7a3 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:31:20 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:31:20 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2578-g294d9ad Message-ID: <20150204173120.BD0B4AA9C5@public.kitware.com> 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 294d9ad1248020d3ea8e9c5a04dfd7fb6d89bdcb (commit) via eef9a476179dd91c69d30f937e742ea484436fc6 (commit) via e6afd9500d0d00855ef0144a1e7c913a8bf4927d (commit) via fdb0799d7568efbae2b01ede62e6cec30a0798ce (commit) from 1c5fef6fdc772db6d0f603da9eb44831103aa27f (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=294d9ad1248020d3ea8e9c5a04dfd7fb6d89bdcb commit 294d9ad1248020d3ea8e9c5a04dfd7fb6d89bdcb Merge: 1c5fef6 eef9a47 Author: Brad King AuthorDate: Wed Feb 4 12:31:09 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 12:31:09 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 12:31:20 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 12:31:20 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.1.1-18-ge6afd95 Message-ID: <20150204173120.CD976AA9C6@public.kitware.com> 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, release has been updated via e6afd9500d0d00855ef0144a1e7c913a8bf4927d (commit) via 467f5bcc6ebb8468bb2ef1fc4edaeab9970a37d4 (commit) via fdb0799d7568efbae2b01ede62e6cec30a0798ce (commit) via dea42d929699ef62c1d6df0eb273beb30c9fbf6e (commit) from 37662ea4bf64087f2251e2f4a71a13623cfe047f (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Modules/Platform/Windows-MSVC.cmake | 2 +- Modules/Platform/Windows-df.cmake | 2 +- Source/cmLocalGenerator.cxx | 14 +++++--------- 3 files changed, 7 insertions(+), 11 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 4 13:37:33 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 4 Feb 2015 13:37:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2580-gf54e479 Message-ID: <20150204183733.0EB6EAACCF@public.kitware.com> 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 f54e479a42f74753a9052fe0eb822d407d5f2a76 (commit) via 12f30fde379d3bfe6c6302c5d50915a413f2c5af (commit) from 294d9ad1248020d3ea8e9c5a04dfd7fb6d89bdcb (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=f54e479a42f74753a9052fe0eb822d407d5f2a76 commit f54e479a42f74753a9052fe0eb822d407d5f2a76 Merge: 294d9ad 12f30fd Author: Stephen Kelly AuthorDate: Wed Feb 4 13:37:32 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 13:37:32 2015 -0500 Merge topic 'fix-C-standard-features' into next 12f30fde Features: Allow setting standard dialect below the default. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=12f30fde379d3bfe6c6302c5d50915a413f2c5af commit 12f30fde379d3bfe6c6302c5d50915a413f2c5af Author: Stephen Kelly AuthorDate: Wed Feb 4 19:14:00 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 19:34:17 2015 +0100 Features: Allow setting standard dialect below the default. Prior to looping from the requested version to the default dialect to find a suitable flag, find a suitable flag it the default dialect or a previous dialect is selected. In that case, the loop is not entered at all. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index af4c950..298d547 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2287,7 +2287,21 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, defaultStdIt = stds.end() - 1; } - for ( ; stdIt <= defaultStdIt; ++stdIt) + // Greater or equal because the standards are stored in + // backward chronological order. + if (stdIt >= defaultStdIt) + { + std::string option_flag = + "CMAKE_" + lang + *stdIt + + "_" + type + "_COMPILE_OPTION"; + + const char *opt = + target->GetMakefile()->GetRequiredDefinition(option_flag); + this->AppendFlagEscape(flags, opt); + return; + } + + for ( ; stdIt < defaultStdIt; ++stdIt) { std::string option_flag = "CMAKE_" + lang + *stdIt ----------------------------------------------------------------------- Summary of changes: Source/cmLocalGenerator.cxx | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 4 13:38:21 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 4 Feb 2015 13:38:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2583-g3e56e29 Message-ID: <20150204183821.B870FAAD40@public.kitware.com> 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 3e56e295bc901ff7af64463e2b91cdbcd960d950 (commit) via 60ed7bbb83e8e585865cfca49cf1f26ea0c58295 (commit) via a64323966805fe0089763f39c92e75529aeffd13 (commit) from f54e479a42f74753a9052fe0eb822d407d5f2a76 (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=3e56e295bc901ff7af64463e2b91cdbcd960d950 commit 3e56e295bc901ff7af64463e2b91cdbcd960d950 Merge: f54e479 60ed7bb Author: Stephen Kelly AuthorDate: Wed Feb 4 13:38:20 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 13:38:20 2015 -0500 Merge topic 'fix-C-standard-features' into next 60ed7bbb Features: Fix C90 feature detection. a6432396 Features: Allow setting standard dialect below the default. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=60ed7bbb83e8e585865cfca49cf1f26ea0c58295 commit 60ed7bbb83e8e585865cfca49cf1f26ea0c58295 Author: Stephen Kelly AuthorDate: Tue Feb 3 21:47:45 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 19:37:57 2015 +0100 Features: Fix C90 feature detection. This bug caused c_function_prototypes to not be recorded at configure time when compiling with -std=gnu99 or similar. In the case of feature recording, that was not a problem, because the logic in CMakeDetermineCompileFeatures.cmake currently assumes that a feature present for an earlier standard is present for a later standard. However, the detection strings are also used in WriteCompilerDetectionHeader, so the feature macro has been defined to '0' when using a later language dialect. Fix that by not checking the existence of the __STDC_VERSION__ macro at all when detecting C90 features. diff --git a/Modules/Compiler/AppleClang-C-FeatureTests.cmake b/Modules/Compiler/AppleClang-C-FeatureTests.cmake index 6f3d6a7..e80b526 100644 --- a/Modules/Compiler/AppleClang-C-FeatureTests.cmake +++ b/Modules/Compiler/AppleClang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(AppleClang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __ set(_cmake_feature_test_c_restrict "${AppleClang_C99}") set(_cmake_feature_test_c_variadic_macros "${AppleClang_C99}") -set(AppleClang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(AppleClang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${AppleClang_C90}") diff --git a/Modules/Compiler/Clang-C-FeatureTests.cmake b/Modules/Compiler/Clang-C-FeatureTests.cmake index 2d8673d..99c2252 100644 --- a/Modules/Compiler/Clang-C-FeatureTests.cmake +++ b/Modules/Compiler/Clang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(Clang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __STDC_ set(_cmake_feature_test_c_restrict "${Clang_C99}") set(_cmake_feature_test_c_variadic_macros "${Clang_C99}") -set(Clang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(Clang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${Clang_C90}") diff --git a/Modules/Compiler/GNU-C-FeatureTests.cmake b/Modules/Compiler/GNU-C-FeatureTests.cmake index d8e456c..b3fe33f 100644 --- a/Modules/Compiler/GNU-C-FeatureTests.cmake +++ b/Modules/Compiler/GNU-C-FeatureTests.cmake @@ -13,5 +13,5 @@ set(GNU44_C99 "(__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSIO set(_cmake_feature_test_c_restrict "${GNU44_C99}") set(_cmake_feature_test_c_variadic_macros "${GNU44_C99}") -set(GNU_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(GNU_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${GNU_C90}") diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt index 38c44c8..3ba1e0a 100644 --- a/Tests/CompileFeatures/CMakeLists.txt +++ b/Tests/CompileFeatures/CMakeLists.txt @@ -164,6 +164,38 @@ if (CMAKE_C_COMPILE_FEATURES) ) endif() endif() + + add_executable(CompileFeaturesGenex_C genex_test.c) + set_property(TARGET CompileFeaturesGenex_C PROPERTY C_STANDARD 11) + + if (CMAKE_C_COMPILER_ID STREQUAL "GNU") + if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.6) + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + else() + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=0 + ) + endif() + elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + endif() + + list(APPEND expected_defs + EXPECT_C_FUNCTION_PROTOTYPES=1 + EXPECT_C_RESTRICT=1 + ) + + target_compile_definitions(CompileFeaturesGenex_C PRIVATE + HAVE_C_FUNCTION_PROTOTYPES=$ + HAVE_C_RESTRICT=$ + HAVE_C_STATIC_ASSERT=$ + ${expected_defs} + ) endif() if (CMAKE_CXX_COMPILE_FEATURES) diff --git a/Tests/CompileFeatures/genex_test.c b/Tests/CompileFeatures/genex_test.c new file mode 100644 index 0000000..b1215bd --- /dev/null +++ b/Tests/CompileFeatures/genex_test.c @@ -0,0 +1,38 @@ +#ifndef EXPECT_C_STATIC_ASSERT +# error EXPECT_C_STATIC_ASSERT not defined +#endif +#ifndef EXPECT_C_FUNCTION_PROTOTYPES +# error EXPECT_C_FUNCTION_PROTOTYPES not defined +#endif +#ifndef EXPECT_C_RESTRICT +# error EXPECT_C_RESTRICT not defined +#endif + +#if !EXPECT_C_STATIC_ASSERT +#if EXPECT_C_STATIC_ASSERT +#error "Expect c_static_assert feature" +#endif +#else +#if !EXPECT_C_STATIC_ASSERT +#error "Expect no c_static_assert feature" +#endif +#endif + +#if !EXPECT_C_FUNCTION_PROTOTYPES +# error Expect c_function_prototypes support +#endif + +#if !EXPECT_C_RESTRICT +# if EXPECT_C_RESTRICT +# error Expect c_restrict support +# endif +#else +# if !EXPECT_C_RESTRICT +# error Expect no c_restrict support +# endif +#endif + +int main() +{ + +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt index e70a977..c538280 100644 --- a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt +++ b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt @@ -84,6 +84,15 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU" add_executable(C_undefined c_undefined.c) set_property(TARGET C_undefined PROPERTY C_STANDARD 90) target_compile_options(C_undefined PRIVATE -Werror=undef) + + add_executable(WriteCompilerDetectionHeader_C main.c) + set_property(TARGET WriteCompilerDetectionHeader_C PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + + add_executable(WriteCompilerDetectionHeader_C_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C_multi PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + target_include_directories(WriteCompilerDetectionHeader_C_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) endif() add_executable(WriteCompilerDetectionHeader main.cpp) @@ -130,3 +139,16 @@ add_executable(multi_files_11 multi_files.cpp) set_property(TARGET multi_files_11 PROPERTY CXX_STANDARD 11) target_include_directories(multi_files_11 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) set_defines(multi_files_11 "${true_defs}" "${false_defs}") + +if (CMAKE_C_COMPILER_ID STREQUAL "GNU" + OR CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + add_executable(WriteCompilerDetectionHeader_C11 main.c) + set_property(TARGET WriteCompilerDetectionHeader_C11 PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11 "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + + add_executable(WriteCompilerDetectionHeader_C11_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C11_multi PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + target_include_directories(WriteCompilerDetectionHeader_C11_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) +endif() diff --git a/Tests/Module/WriteCompilerDetectionHeader/main.c b/Tests/Module/WriteCompilerDetectionHeader/main.c new file mode 100644 index 0000000..9023b0f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main.c @@ -0,0 +1,29 @@ + +#include "test_compiler_detection.h" + +#if !defined(TEST_COMPILER_C_FUNCTION_PROTOTYPES) || !TEST_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected TEST_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(TEST_COMPILER_C_RESTRICT) || !TEST_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected TEST_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no TEST_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef TEST_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/main_multi.c b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c new file mode 100644 index 0000000..6f4573f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c @@ -0,0 +1,29 @@ + +#include "multi_file_compiler_detection.h" + +#if !defined(MULTI_COMPILER_C_FUNCTION_PROTOTYPES) || !MULTI_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected MULTI_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(MULTI_COMPILER_C_RESTRICT) || !MULTI_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected MULTI_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no MULTI_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef MULTI_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a64323966805fe0089763f39c92e75529aeffd13 commit a64323966805fe0089763f39c92e75529aeffd13 Author: Stephen Kelly AuthorDate: Wed Feb 4 19:14:00 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 19:37:57 2015 +0100 Features: Allow setting standard dialect below the default. Prior to looping from the requested version to the default dialect to find a suitable flag, find a suitable flag it the default dialect or a previous dialect is selected. In that case, the loop is not entered at all. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index af4c950..298d547 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2287,7 +2287,21 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, defaultStdIt = stds.end() - 1; } - for ( ; stdIt <= defaultStdIt; ++stdIt) + // Greater or equal because the standards are stored in + // backward chronological order. + if (stdIt >= defaultStdIt) + { + std::string option_flag = + "CMAKE_" + lang + *stdIt + + "_" + type + "_COMPILE_OPTION"; + + const char *opt = + target->GetMakefile()->GetRequiredDefinition(option_flag); + this->AppendFlagEscape(flags, opt); + return; + } + + for ( ; stdIt < defaultStdIt; ++stdIt) { std::string option_flag = "CMAKE_" + lang + *stdIt ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 13:48:41 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 13:48:41 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2586-gba1989e Message-ID: <20150204184841.E049FAA098@public.kitware.com> 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 ba1989e5609850771ea4291c85fcd0a0620b3c68 (commit) via 9122ca6f7ebaf47cb3d1e27859a5b19f7f84940e (commit) via 7b53ca2bfc5b2afb722b7438084c1536c31cc789 (commit) from 3e56e295bc901ff7af64463e2b91cdbcd960d950 (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=ba1989e5609850771ea4291c85fcd0a0620b3c68 commit ba1989e5609850771ea4291c85fcd0a0620b3c68 Merge: 3e56e29 9122ca6 Author: Brad King AuthorDate: Wed Feb 4 13:48:40 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 13:48:40 2015 -0500 Merge topic 'doc-3.2-relnotes' into next 9122ca6f Help: Organize 3.2 release notes 7b53ca2b Help: Consolidate 3.2 release notes http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9122ca6f7ebaf47cb3d1e27859a5b19f7f84940e commit 9122ca6f7ebaf47cb3d1e27859a5b19f7f84940e Author: Brad King AuthorDate: Wed Feb 4 13:33:49 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 13:47:12 2015 -0500 Help: Organize 3.2 release notes Add section headers similar to the 3.1 release notes and move each individual bullet into an appropriate section. Revise and consolidate some bullets covering related areas. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 142d408..fba6523 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -7,47 +7,27 @@ CMake 3.2.0 Release Notes Changes made since CMake 3.1.0 include the following. -* A new :command:`continue` command was added that can be called inside loop - contexts to end the current iteration and start the next one at the top of - the loop block. - -* A :module:`FindGSL` module was introduced to find the - GNU Scientific Library. - -* The :module:`FindIntl` module was added to find the Gettext ``libintl`` - library. - -* A :module:`FindJsonCpp` module was introduced to find the - JsonCpp package. - -* The :command:`ctest_coverage` learned to support Javascript coverage. - -* The :manual:`cmake(1)` ``-E tar`` command now supports creating - ``.xz``-compressed archives with the ``J`` flag. - -* On OS X with Makefile and Ninja generators, when a compiler is found - in ``/usr/bin`` it is now mapped to the corresponding compiler inside - the Xcode application folder, if any. This allows such build - trees to continue to work with their original compiler even when - ``xcode-select`` switches to a different Xcode installation. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on OS X. +New Features +============ -* The :command:`break` command now rejects calls outside of a loop - context or that pass arguments to the command. - See policy :policy:`CMP0055`. +Syntax +------ -* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last - regular expression. +* On Windows, CMake learned to support international characters. + This allows use of characters from multiple (spoken) languages + in CMake code, paths to source files, configured files such as + ``.h.in`` files, and other files read and written by CMake. + Because CMake interoperates with many other tools, there may + still be some limitations when using certain international + characters. -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--files-from=`` option to specify file names using - lines in a file to overcome command-line length limits. +Commands +-------- -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--mtime=`` option to specify the modification time - recorded in tarball entries. +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``BYPRODUCTS`` option to specify files + produced as side effects of the custom commands. These are not + outputs because they do not always have to be newer than inputs. * The :command:`add_custom_command` and :command:`add_custom_target` commands learned a new ``USES_TERMINAL`` option to request that @@ -57,81 +37,75 @@ Changes made since CMake 3.1.0 include the following. for individual interactive use, such as ``install``, are now placed in this pool. -* The :module:`CPackRPM` module learned options to set per-component - descriptions and summaries. See the - :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and - :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. +* A new :command:`continue` command was added that can be called inside loop + contexts to end the current iteration and start the next one at the top of + the loop block. -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-install scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. +* The :command:`file(LOCK)` subcommand was created to allow CMake + processes to synchronize through file and directory locks. -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-uninstall scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. +* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, + UTF-32LE, UTF-32BE as ``ENCODING`` options. -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. +* The :command:`install(EXPORT)` command now works with an absolute + ``DESTINATION`` even if targets in the export set are installed + with a destination or usage requirements specified relative to the + install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` + variable is hard-coded into the installed export file as the base + for relative references. -* The :command:`ctest_coverage` learned to support Delphi coverage. +* The :command:`try_compile` command source file signature now honors + link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated + test project. See policy :policy:`CMP0056`. -* On OS X, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The OS X native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. +* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` + option just as :command:`try_compile` already does. -* When CMake is built with OpenSSL on systems other than Windows - and OS X, commands supporting network communication via ``https``, - such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now search for OS-configured certificate - authorities in a few ``/etc`` paths to be trusted automatically. +Variables +--------- -* On Windows, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The Windows native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. +* The :variable:`CMAKE_MATCH_COUNT` variable was introduced to record the + number of matches made in the last regular expression matched in an + :command:`if` command or a :command:`string` command. -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``BYPRODUCTS`` option to specify files - produced as side effects of the custom commands. These are not - outputs because they do not always have to be newer than inputs. +Properties +---------- + +* An :prop_tgt:`ANDROID_API_MIN` target property was introduced to + specify the minimum version to be targeted by the toolchain. + +* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify + additional shader flags to ``.hlsl`` files, for the Visual Studio + generators. + +Modules +------- + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. * The :module:`ExternalData` module learned to support :ref:`Custom Fetch Scripts `. This allows projects to specify custom ``.cmake`` scripts for fetching data objects during the build. -* The :module:`ExternalProject` module ``ExternalProject_Add`` function - learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache - values in the external project without setting them on future builds. - * The :module:`ExternalProject` module learned options to create independent external project step targets that do not depend on the builtin steps. * The :module:`ExternalProject` module :command:`ExternalProject_Add` - command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests - from the main build. - -* The :module:`ExternalProject` module ``ExternalProject_Add`` command - learned an ``UPDATE_DISCONNECTED`` option to avoid automatically - updating the source tree checkout from version control. + command learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to + initialize cache values in the external project without setting + them on future builds. -* The :manual:`Compile Features ` functionality - is now aware of features supported by Microsoft Visual Studio (``MSVC``). - -* The :command:`file(LOCK)` subcommand was created to allow CMake - processes to synchronize through file and directory locks. +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a new ``TEST_EXCLUDE_FROM_MAIN`` option to exclude + tests from the main build. -* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, - UTF-32LE, UTF-32BE as ``ENCODING`` options. +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a new ``UPDATE_DISCONNECTED`` option to avoid + automatically updating the source tree checkout from version control. * The :module:`FindCUDA` module learned about the ``cusolver`` library in CUDA 7.0. @@ -139,6 +113,15 @@ Changes made since CMake 3.1.0 include the following. * The :module:`FindGit` module learned to find the ``git`` command-line tool that comes with GitHub for Windows installed in user home directories. +* A :module:`FindGSL` module was introduced to find the + GNU Scientific Library. + +* A :module:`FindIntl` module was introduced to find the + Gettext ``libintl`` library. + +* A :module:`FindJsonCpp` module was introduced to find the + JsonCpp package. + * The :module:`FindLATEX` module learned to support components. * The :module:`FindMPI` module learned to find MS-MPI on Windows. @@ -154,18 +137,38 @@ Changes made since CMake 3.1.0 include the following. ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to link to one without the other. -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU 4.4 to 4.6 compilers. +* The :module:`WriteCompilerDetectionHeader` module learned to + create a define for portability of the ``cxx_thread_local`` feature. + The define expands to either the C++11 ``thread_local`` keyword, or a + pre-standardization compiler-specific equivalent, as appropriate. -* The :command:`install(EXPORT)` command now works with an absolute - ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. +* The :module:`WriteCompilerDetectionHeader` module learned to create + multiple output files per compiler and per language, instead of creating + one large file. -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compiler version 5.0. +CTest +----- + +* The :command:`ctest_coverage` command learned to support Delphi coverage. +* The :command:`ctest_coverage` command learned to support Javascript coverage. + +CPack +----- + +* The :module:`CPackRPM` module learned options to set per-component + descriptions and summaries. See the + :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and + :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-install scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-uninstall scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. * The :module:`CPackRPM` module learned a new :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to @@ -176,74 +179,89 @@ Changes made since CMake 3.1.0 include the following. :variable:`CPACK_RPM_RELOCATION_PATHS` variable to specify multiple relocation prefixes for a single rpm package. -* The :manual:`Compile Features ` functionality - is now aware of features supported by Oracle SolarisStudio (``SunPro``). +Other +----- -* The :command:`try_compile` command source file signature now honors - link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated - test project. See policy :policy:`CMP0056`. +* The :manual:`cmake(1)` ``-E tar`` command now supports creating + ``.xz``-compressed archives with the ``J`` flag. -* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` - option just as :command:`try_compile` already does. +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--files-from=`` option to specify file names using + lines in a file to overcome command-line length limits. -* The implementation of CMake relies on some C++ compiler features which are - not supported by some older compilers. As a result, those old compilers - can no longer be used to build CMake itself. CMake continues to be able to - generate Makefiles and project files for users of those old compilers - however. The compilers known to no longer be capable of building CMake - are: - - * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. - * GCC 2.95 - superceded by GCC 3 and newer compilers. - * Borland compilers - superceded by other Windows compilers. - * Compaq compilers - superceded by other compilers. - * Comeau compilers - superceded by other compilers. - * SGI compilers - IRIX was dropped as a host platform. - - When building using SolarisStudio 12, the default ``libCStd`` standard - library is not sufficient to build CMake. The SolarisStudio distribution - supports compiler options to use ``STLPort4`` or ``libstdc++``. An - appropriate option to select the standard library is now added - automatically when building CMake with SolarisStudio compilers. +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--mtime=`` option to specify the modification time + recorded in tarball entries. -* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to - specify the minimum version to be targeted by the toolchain. +* The :manual:`Compile Features ` functionality + is now aware of features supported by more compilers, including: -* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify - additional shader flags to ``.hlsl`` files, for the Visual Studio generators. + * Apple Clang (``AppleClang``). + * GNU compiler versions 4.4 through 5.0, including Apple variants (``GNU``). + * Microsoft Visual Studio (``MSVC``). + * Oracle SolarisStudio (``SunPro``). -* The :module:`WriteCompilerDetectionHeader` module learned to - create a define for portability of the cxx_thread_local feature. The define - expands to either the C++11 ``thread_local`` keyword, or a - pre-standardization compiler-specific equivalent, as appropriate. +New Diagnostics +=============== -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. +* The :command:`break` command now rejects calls outside of a loop + context or that pass arguments to the command. + See policy :policy:`CMP0055`. - Files written in the :manual:`cmake-language(7)`, such as - ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be +Deprecated and Removed Features +=============================== + +* Files written in the :manual:`cmake-language(7)`, such as + ``CMakeLists.txt`` or ``*.cmake`` files, are now expected to be encoded as UTF-8. If files are already ASCII, they will be compatible. If files were in a different encoding, including Latin 1, they will need to be converted. - The Visual Studio generators now write solution and project + +* The implementation of CMake now relies on some C++ compiler features which + are not supported by some older compilers. As a result, those old compilers + can no longer be used to build CMake itself. CMake continues to be able to + generate Makefiles and project files for users of those old compilers + however. Compilers known to no longer be capable of building CMake are: + + * Visual Studio 6 and 7.0 -- superseded by VisualStudio 7.1 and newer. + * GCC 2.95 -- superseded by GCC 3 and newer compilers. + * Borland compilers -- superseded by other Windows compilers. + * Compaq compilers -- superseded by other compilers. + * SGI compilers -- IRIX was dropped as a host platform. + +Other Changes +============= + +* On Windows and OS X, commands supporting network communication + via ``https``, such as :command:`file(DOWNLOAD)`, + :command:`file(UPLOAD)`, and :command:`ctest_submit`, now support + SSL/TLS even when CMake is not built against OpenSSL. + The Windows or OS X native SSL/TLS implementation is used by default. + OS-configured certificate authorities will be trusted automatically. + + On other platforms, when CMake is built with OpenSSL, these + commands now search for OS-configured certificate authorities + in a few ``/etc`` paths to be trusted automatically. + +* On OS X with Makefile and Ninja generators, when a compiler is found + in ``/usr/bin`` it is now mapped to the corresponding compiler inside + the Xcode application folder, if any. This allows such build + trees to continue to work with their original compiler even when + ``xcode-select`` switches to a different Xcode installation. + +* The Visual Studio generators now write solution and project files in UTF-8 instead of Windows-1252. Windows-1252 supported Latin 1 languages such as those found in North and South America and Western Europe. With UTF-8, additional languages are now supported. -* The :module:`WriteCompilerDetectionHeader` module learned to create - multiple output files per compiler and per language, instead of creating - one large file. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Apple Clang (``AppleClang``). - * The :generator:`Xcode` generator no longer requires a value for the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. It now locates ``xcodebuild`` when needed at build time. + +* When building CMake itself using SolarisStudio 12, the default ``libCStd`` + standard library is not sufficient to build CMake. The SolarisStudio + distribution supports compiler options to use ``STLPort4`` or ``libstdc++``. + An appropriate option to select the standard library is now added + automatically when building CMake with SolarisStudio compilers. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7b53ca2bfc5b2afb722b7438084c1536c31cc789 commit 7b53ca2bfc5b2afb722b7438084c1536c31cc789 Author: Brad King AuthorDate: Wed Feb 4 13:12:12 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 13:14:08 2015 -0500 Help: Consolidate 3.2 release notes Move all development release notes into a new version-specific document: tail -q -n +3 Help/release/dev/* > Help/release/3.2.0.rst git rm -- Help/release/dev/* except the sample topic: git checkout HEAD -- Help/release/dev/0-sample-topic.rst Reference the new document from the release notes index document. Add a title and intro sentence to the new document by hand. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst new file mode 100644 index 0000000..142d408 --- /dev/null +++ b/Help/release/3.2.0.rst @@ -0,0 +1,249 @@ +CMake 3.2.0 Release Notes +************************* + +.. only:: html + + .. contents:: + +Changes made since CMake 3.1.0 include the following. + +* A new :command:`continue` command was added that can be called inside loop + contexts to end the current iteration and start the next one at the top of + the loop block. + +* A :module:`FindGSL` module was introduced to find the + GNU Scientific Library. + +* The :module:`FindIntl` module was added to find the Gettext ``libintl`` + library. + +* A :module:`FindJsonCpp` module was introduced to find the + JsonCpp package. + +* The :command:`ctest_coverage` learned to support Javascript coverage. + +* The :manual:`cmake(1)` ``-E tar`` command now supports creating + ``.xz``-compressed archives with the ``J`` flag. + +* On OS X with Makefile and Ninja generators, when a compiler is found + in ``/usr/bin`` it is now mapped to the corresponding compiler inside + the Xcode application folder, if any. This allows such build + trees to continue to work with their original compiler even when + ``xcode-select`` switches to a different Xcode installation. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compilers on OS X. + +* The :command:`break` command now rejects calls outside of a loop + context or that pass arguments to the command. + See policy :policy:`CMP0055`. + +* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last + regular expression. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--files-from=`` option to specify file names using + lines in a file to overcome command-line length limits. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--mtime=`` option to specify the modification time + recorded in tarball entries. + +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``USES_TERMINAL`` option to request that + the command be given direct access to the terminal if possible. + The :generator:`Ninja` generator will places such commands in the + ``console`` pool. Build targets provided by CMake that are meant + for individual interactive use, such as ``install``, are now + placed in this pool. + +* The :module:`CPackRPM` module learned options to set per-component + descriptions and summaries. See the + :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and + :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-install scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-uninstall scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. + +* The :command:`ctest_coverage` learned to support Delphi coverage. + +* On OS X, commands supporting network communication, such as + :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now support SSL/TLS even when CMake + is not built against OpenSSL. The OS X native SSL/TLS + implementation is used by default. OS-configured certificate + authorities will be trusted automatically. + +* When CMake is built with OpenSSL on systems other than Windows + and OS X, commands supporting network communication via ``https``, + such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now search for OS-configured certificate + authorities in a few ``/etc`` paths to be trusted automatically. + +* On Windows, commands supporting network communication, such as + :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now support SSL/TLS even when CMake + is not built against OpenSSL. The Windows native SSL/TLS + implementation is used by default. OS-configured certificate + authorities will be trusted automatically. + +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``BYPRODUCTS`` option to specify files + produced as side effects of the custom commands. These are not + outputs because they do not always have to be newer than inputs. + +* The :module:`ExternalData` module learned to support + :ref:`Custom Fetch Scripts `. + This allows projects to specify custom ``.cmake`` scripts for + fetching data objects during the build. + +* The :module:`ExternalProject` module ``ExternalProject_Add`` function + learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache + values in the external project without setting them on future builds. + +* The :module:`ExternalProject` module learned options to create + independent external project step targets that do not depend + on the builtin steps. + +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests + from the main build. + +* The :module:`ExternalProject` module ``ExternalProject_Add`` command + learned an ``UPDATE_DISCONNECTED`` option to avoid automatically + updating the source tree checkout from version control. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Microsoft Visual Studio (``MSVC``). + +* The :command:`file(LOCK)` subcommand was created to allow CMake + processes to synchronize through file and directory locks. + +* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, + UTF-32LE, UTF-32BE as ``ENCODING`` options. + +* The :module:`FindCUDA` module learned about the ``cusolver`` + library in CUDA 7.0. + +* The :module:`FindGit` module learned to find the ``git`` command-line tool + that comes with GitHub for Windows installed in user home directories. + +* The :module:`FindLATEX` module learned to support components. + +* The :module:`FindMPI` module learned to find MS-MPI on Windows. + +* The :module:`FindOpenGL` module no longer explicitly searches + for any dependency on X11 libraries with the :module:`FindX11` + module. Such dependencies should not need to be explicit. + Applications using X11 APIs themselves should find and link + to X11 libraries explicitly. + +* The :module:`FindOpenSSL` module now reports ``crypto`` and ``ssl`` + libraries separately in ``OPENSSL_CRYPTO_LIBRARY`` and + ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to + link to one without the other. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU 4.4 to 4.6 compilers. + +* The :command:`install(EXPORT)` command now works with an absolute + ``DESTINATION`` even if targets in the export set are installed + with a destination or usage requirements specified relative to the + install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` + variable is hard-coded into the installed export file as the base + for relative references. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compiler version 5.0. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to + specify a component-specific value to use instead of + :variable:`CPACK_PACKAGING_INSTALL_PREFIX`. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM_RELOCATION_PATHS` variable to + specify multiple relocation prefixes for a single rpm package. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Oracle SolarisStudio (``SunPro``). + +* The :command:`try_compile` command source file signature now honors + link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated + test project. See policy :policy:`CMP0056`. + +* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` + option just as :command:`try_compile` already does. + +* The implementation of CMake relies on some C++ compiler features which are + not supported by some older compilers. As a result, those old compilers + can no longer be used to build CMake itself. CMake continues to be able to + generate Makefiles and project files for users of those old compilers + however. The compilers known to no longer be capable of building CMake + are: + + * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. + * GCC 2.95 - superceded by GCC 3 and newer compilers. + * Borland compilers - superceded by other Windows compilers. + * Compaq compilers - superceded by other compilers. + * Comeau compilers - superceded by other compilers. + * SGI compilers - IRIX was dropped as a host platform. + + When building using SolarisStudio 12, the default ``libCStd`` standard + library is not sufficient to build CMake. The SolarisStudio distribution + supports compiler options to use ``STLPort4`` or ``libstdc++``. An + appropriate option to select the standard library is now added + automatically when building CMake with SolarisStudio compilers. + +* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to + specify the minimum version to be targeted by the toolchain. + +* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify + additional shader flags to ``.hlsl`` files, for the Visual Studio generators. + +* The :module:`WriteCompilerDetectionHeader` module learned to + create a define for portability of the cxx_thread_local feature. The define + expands to either the C++11 ``thread_local`` keyword, or a + pre-standardization compiler-specific equivalent, as appropriate. + +* On Windows, CMake learned to support international characters. + This allows use of characters from multiple (spoken) languages + in CMake code, paths to source files, configured files such as + ``.h.in`` files, and other files read and written by CMake. + Because CMake interoperates with many other tools, there may + still be some limitations when using certain international + characters. + + Files written in the :manual:`cmake-language(7)`, such as + ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be + encoded as UTF-8. If files are already ASCII, they will be + compatible. If files were in a different encoding, including + Latin 1, they will need to be converted. + + The Visual Studio generators now write solution and project + files in UTF-8 instead of Windows-1252. Windows-1252 supported + Latin 1 languages such as those found in North and South America + and Western Europe. With UTF-8, additional languages are now + supported. + +* The :module:`WriteCompilerDetectionHeader` module learned to create + multiple output files per compiler and per language, instead of creating + one large file. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Apple Clang (``AppleClang``). + +* The :generator:`Xcode` generator no longer requires a value for + the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. + It now locates ``xcodebuild`` when needed at build time. diff --git a/Help/release/dev/Apple-GNU-compiler-features.rst b/Help/release/dev/Apple-GNU-compiler-features.rst deleted file mode 100644 index 40c3712..0000000 --- a/Help/release/dev/Apple-GNU-compiler-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -Apple-GNU-compiler-features ---------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on OS X. diff --git a/Help/release/dev/Apple-compiler-selection.rst b/Help/release/dev/Apple-compiler-selection.rst deleted file mode 100644 index 5ff5653..0000000 --- a/Help/release/dev/Apple-compiler-selection.rst +++ /dev/null @@ -1,8 +0,0 @@ -Apple-compiler-selection ------------------------- - -* On OS X with Makefile and Ninja generators, when a compiler is found - in ``/usr/bin`` it is now mapped to the corresponding compiler inside - the Xcode application folder, if any. This allows such build - trees to continue to work with their original compiler even when - ``xcode-select`` switches to a different Xcode installation. diff --git a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst b/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst deleted file mode 100644 index afa0a52..0000000 --- a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst +++ /dev/null @@ -1,6 +0,0 @@ -CTestCoverageCollectGCOV-refinements ------------------------------------- - -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. diff --git a/Help/release/dev/ExternalData-custom-download.rst b/Help/release/dev/ExternalData-custom-download.rst deleted file mode 100644 index c40f4f7..0000000 --- a/Help/release/dev/ExternalData-custom-download.rst +++ /dev/null @@ -1,7 +0,0 @@ -ExternalData-custom-download ----------------------------- - -* The :module:`ExternalData` module learned to support - :ref:`Custom Fetch Scripts `. - This allows projects to specify custom ``.cmake`` scripts for - fetching data objects during the build. diff --git a/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst b/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst deleted file mode 100644 index 1838ab6..0000000 --- a/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_CMAKE_CACHE_DEFAULT_ARGS ----------------------------------------- - -* The :module:`ExternalProject` module ``ExternalProject_Add`` function - learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache - values in the external project without setting them on future builds. diff --git a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst b/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst deleted file mode 100644 index dfbf108..0000000 --- a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_TEST_EXCLUDE_FROM_MAIN --------------------------------------- - -* The :module:`ExternalProject` module :command:`ExternalProject_Add` - command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests - from the main build. diff --git a/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst b/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst deleted file mode 100644 index bed4a89..0000000 --- a/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_UPDATE_DISCONNECTED ------------------------------------ - -* The :module:`ExternalProject` module ``ExternalProject_Add`` command - learned an ``UPDATE_DISCONNECTED`` option to avoid automatically - updating the source tree checkout from version control. diff --git a/Help/release/dev/ExternalProject_independent-step-targets.rst b/Help/release/dev/ExternalProject_independent-step-targets.rst deleted file mode 100644 index 02e8db8..0000000 --- a/Help/release/dev/ExternalProject_independent-step-targets.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_independent-step-targets ----------------------------------------- - -* The :module:`ExternalProject` module learned options to create - independent external project step targets that do not depend - on the builtin steps. diff --git a/Help/release/dev/FindCUDA-cusolver.rst b/Help/release/dev/FindCUDA-cusolver.rst deleted file mode 100644 index 7a61e78..0000000 --- a/Help/release/dev/FindCUDA-cusolver.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindCUDA-cusolver ------------------ - -* The :module:`FindCUDA` module learned about the ``cusolver`` - library in CUDA 7.0. diff --git a/Help/release/dev/FindGit-local-Github.rst b/Help/release/dev/FindGit-local-Github.rst deleted file mode 100644 index 3523e86..0000000 --- a/Help/release/dev/FindGit-local-Github.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindGit-local-Github --------------------- - -* The :module:`FindGit` module learned to find the ``git`` command-line tool - that comes with GitHub for Windows installed in user home directories. diff --git a/Help/release/dev/FindLATEX-components.rst b/Help/release/dev/FindLATEX-components.rst deleted file mode 100644 index d161c1f..0000000 --- a/Help/release/dev/FindLATEX-components.rst +++ /dev/null @@ -1,4 +0,0 @@ -FindLATEX-components --------------------- - -* The :module:`FindLATEX` module learned to support components. diff --git a/Help/release/dev/FindOpenGL-no-X11.rst b/Help/release/dev/FindOpenGL-no-X11.rst deleted file mode 100644 index dacf165..0000000 --- a/Help/release/dev/FindOpenGL-no-X11.rst +++ /dev/null @@ -1,8 +0,0 @@ -FindOpenGL-no-X11 ------------------ - -* The :module:`FindOpenGL` module no longer explicitly searches - for any dependency on X11 libraries with the :module:`FindX11` - module. Such dependencies should not need to be explicit. - Applications using X11 APIs themselves should find and link - to X11 libraries explicitly. diff --git a/Help/release/dev/FindOpenSSL-separate-libs.rst b/Help/release/dev/FindOpenSSL-separate-libs.rst deleted file mode 100644 index 96e3961..0000000 --- a/Help/release/dev/FindOpenSSL-separate-libs.rst +++ /dev/null @@ -1,7 +0,0 @@ -FindOpenSSL-separate-libs -------------------------- - -* The :module:`FindOpenSSL` module now reports ``crypto`` and ``ssl`` - libraries separately in ``OPENSSL_CRYPTO_LIBRARY`` and - ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to - link to one without the other. diff --git a/Help/release/dev/GNU-4.4-compile-features.rst b/Help/release/dev/GNU-4.4-compile-features.rst deleted file mode 100644 index d5c1356..0000000 --- a/Help/release/dev/GNU-4.4-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -GNU-4.4-compile-features ------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU 4.4 to 4.6 compilers. diff --git a/Help/release/dev/SolarisStudio-compile-features.rst b/Help/release/dev/SolarisStudio-compile-features.rst deleted file mode 100644 index 83110cd..0000000 --- a/Help/release/dev/SolarisStudio-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -SolarisStudio-compile-features ------------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Oracle SolarisStudio (``SunPro``). diff --git a/Help/release/dev/WCDH-thread_local.rst b/Help/release/dev/WCDH-thread_local.rst deleted file mode 100644 index 44516a7..0000000 --- a/Help/release/dev/WCDH-thread_local.rst +++ /dev/null @@ -1,7 +0,0 @@ -WriteCompilerDetectionHeader thread_local portability ------------------------------------------------------ - -* The :module:`WriteCompilerDetectionHeader` module learned to - create a define for portability of the cxx_thread_local feature. The define - expands to either the C++11 ``thread_local`` keyword, or a - pre-standardization compiler-specific equivalent, as appropriate. diff --git a/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst b/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst deleted file mode 100644 index a8665da..0000000 --- a/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst +++ /dev/null @@ -1,6 +0,0 @@ -WriteCompilerDetectionHeader-multi-file ---------------------------------------- - -* The :module:`WriteCompilerDetectionHeader` module learned to create - multiple output files per compiler and per language, instead of creating - one large file. diff --git a/Help/release/dev/Xcode-clang-compile-features.rst b/Help/release/dev/Xcode-clang-compile-features.rst deleted file mode 100644 index d93475f..0000000 --- a/Help/release/dev/Xcode-clang-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -Xcode-clang-compile-features ----------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Apple Clang (``AppleClang``). diff --git a/Help/release/dev/add-FindGSL.rst b/Help/release/dev/add-FindGSL.rst deleted file mode 100644 index 47a0a25..0000000 --- a/Help/release/dev/add-FindGSL.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindGSL ------------ - -* A :module:`FindGSL` module was introduced to find the - GNU Scientific Library. diff --git a/Help/release/dev/add-FindIntl.rst b/Help/release/dev/add-FindIntl.rst deleted file mode 100644 index ac048c9..0000000 --- a/Help/release/dev/add-FindIntl.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindIntl ------------- - -* The :module:`FindIntl` module was added to find the Gettext ``libintl`` - library. diff --git a/Help/release/dev/add-FindJsonCpp.rst b/Help/release/dev/add-FindJsonCpp.rst deleted file mode 100644 index 5d1cb18..0000000 --- a/Help/release/dev/add-FindJsonCpp.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindJsonCpp ---------------- - -* A :module:`FindJsonCpp` module was introduced to find the - JsonCpp package. diff --git a/Help/release/dev/add-continue-command.rst b/Help/release/dev/add-continue-command.rst deleted file mode 100644 index 4995a8e..0000000 --- a/Help/release/dev/add-continue-command.rst +++ /dev/null @@ -1,6 +0,0 @@ -add-continue-command --------------------- - -* A new :command:`continue` command was added that can be called inside loop - contexts to end the current iteration and start the next one at the top of - the loop block. diff --git a/Help/release/dev/add-xz-support.rst b/Help/release/dev/add-xz-support.rst deleted file mode 100644 index 9bdf528..0000000 --- a/Help/release/dev/add-xz-support.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-xz-support --------------- - -* The :manual:`cmake(1)` ``-E tar`` command now supports creating - ``.xz``-compressed archives with the ``J`` flag. diff --git a/Help/release/dev/add_javascript_coverage_parser.rst b/Help/release/dev/add_javascript_coverage_parser.rst deleted file mode 100644 index 0d068ee..0000000 --- a/Help/release/dev/add_javascript_coverage_parser.rst +++ /dev/null @@ -1,4 +0,0 @@ -add_javascript_coverage_parser ------------------------------- - -* The :command:`ctest_coverage` learned to support Javascript coverage. diff --git a/Help/release/dev/break-command-strictness.rst b/Help/release/dev/break-command-strictness.rst deleted file mode 100644 index 0723774..0000000 --- a/Help/release/dev/break-command-strictness.rst +++ /dev/null @@ -1,6 +0,0 @@ -break-command-strictness ------------------------- - -* The :command:`break` command now rejects calls outside of a loop - context or that pass arguments to the command. - See policy :policy:`CMP0055`. diff --git a/Help/release/dev/cached-regex-clear-fixed.rst b/Help/release/dev/cached-regex-clear-fixed.rst deleted file mode 100644 index fbf08cc..0000000 --- a/Help/release/dev/cached-regex-clear-fixed.rst +++ /dev/null @@ -1,5 +0,0 @@ -cached-regex-clear-fixed ------------------------- - -* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last - regular expression. diff --git a/Help/release/dev/cmake-E-tar-files-from.rst b/Help/release/dev/cmake-E-tar-files-from.rst deleted file mode 100644 index f6087ff..0000000 --- a/Help/release/dev/cmake-E-tar-files-from.rst +++ /dev/null @@ -1,6 +0,0 @@ -cmake-E-tar-files-from ----------------------- - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--files-from=`` option to specify file names using - lines in a file to overcome command-line length limits. diff --git a/Help/release/dev/cmake-E-tar-mtime.rst b/Help/release/dev/cmake-E-tar-mtime.rst deleted file mode 100644 index 6496577..0000000 --- a/Help/release/dev/cmake-E-tar-mtime.rst +++ /dev/null @@ -1,6 +0,0 @@ -cmake-E-tar-mtime ------------------ - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--mtime=`` option to specify the modification time - recorded in tarball entries. diff --git a/Help/release/dev/console-pool.rst b/Help/release/dev/console-pool.rst deleted file mode 100644 index 1d9bdb8..0000000 --- a/Help/release/dev/console-pool.rst +++ /dev/null @@ -1,10 +0,0 @@ -console-pool ------------- - -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``USES_TERMINAL`` option to request that - the command be given direct access to the terminal if possible. - The :generator:`Ninja` generator will places such commands in the - ``console`` pool. Build targets provided by CMake that are meant - for individual interactive use, such as ``install``, are now - placed in this pool. diff --git a/Help/release/dev/cpack-rpm-component-descriptions.rst b/Help/release/dev/cpack-rpm-component-descriptions.rst deleted file mode 100644 index 769a912..0000000 --- a/Help/release/dev/cpack-rpm-component-descriptions.rst +++ /dev/null @@ -1,7 +0,0 @@ -cpack-rpm-component-descriptions --------------------------------- - -* The :module:`CPackRPM` module learned options to set per-component - descriptions and summaries. See the - :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and - :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. diff --git a/Help/release/dev/cpack-rpm-pre-post-install.rst b/Help/release/dev/cpack-rpm-pre-post-install.rst deleted file mode 100644 index 0909d94..0000000 --- a/Help/release/dev/cpack-rpm-pre-post-install.rst +++ /dev/null @@ -1,12 +0,0 @@ -cpack-rpm-pre-post-install --------------------------- - -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-install scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. - -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-uninstall scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. diff --git a/Help/release/dev/ctest-delphi-coverage.rst b/Help/release/dev/ctest-delphi-coverage.rst deleted file mode 100644 index efa97c9..0000000 --- a/Help/release/dev/ctest-delphi-coverage.rst +++ /dev/null @@ -1,4 +0,0 @@ -ctest-delphi-coverage ---------------------- - -* The :command:`ctest_coverage` learned to support Delphi coverage. diff --git a/Help/release/dev/curl-darwinssl.rst b/Help/release/dev/curl-darwinssl.rst deleted file mode 100644 index 3571bd1..0000000 --- a/Help/release/dev/curl-darwinssl.rst +++ /dev/null @@ -1,9 +0,0 @@ -curl-darwinssl --------------- - -* On OS X, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The OS X native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. diff --git a/Help/release/dev/curl-default-cainfo.rst b/Help/release/dev/curl-default-cainfo.rst deleted file mode 100644 index ed45d36..0000000 --- a/Help/release/dev/curl-default-cainfo.rst +++ /dev/null @@ -1,8 +0,0 @@ -curl-default-cainfo -------------------- - -* When CMake is built with OpenSSL on systems other than Windows - and OS X, commands supporting network communication via ``https``, - such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now search for OS-configured certificate - authorities in a few ``/etc`` paths to be trusted automatically. diff --git a/Help/release/dev/curl-winssl.rst b/Help/release/dev/curl-winssl.rst deleted file mode 100644 index 9a28f4f..0000000 --- a/Help/release/dev/curl-winssl.rst +++ /dev/null @@ -1,9 +0,0 @@ -curl-winssl ------------ - -* On Windows, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The Windows native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. diff --git a/Help/release/dev/custom-command-byproducts.rst b/Help/release/dev/custom-command-byproducts.rst deleted file mode 100644 index dc85fdb..0000000 --- a/Help/release/dev/custom-command-byproducts.rst +++ /dev/null @@ -1,7 +0,0 @@ -custom-command-byproducts -------------------------- - -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``BYPRODUCTS`` option to specify files - produced as side effects of the custom commands. These are not - outputs because they do not always have to be newer than inputs. diff --git a/Help/release/dev/feature-record-msvc.rst b/Help/release/dev/feature-record-msvc.rst deleted file mode 100644 index a8c9fd1..0000000 --- a/Help/release/dev/feature-record-msvc.rst +++ /dev/null @@ -1,5 +0,0 @@ -feature-record-msvc -------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Microsoft Visual Studio (``MSVC``). diff --git a/Help/release/dev/file-LOCK-command.rst b/Help/release/dev/file-LOCK-command.rst deleted file mode 100644 index 4b11e9e..0000000 --- a/Help/release/dev/file-LOCK-command.rst +++ /dev/null @@ -1,5 +0,0 @@ -file-LOCK-command ------------------ - -* The :command:`file(LOCK)` subcommand was created to allow CMake - processes to synchronize through file and directory locks. diff --git a/Help/release/dev/file-strings-utf-16.rst b/Help/release/dev/file-strings-utf-16.rst deleted file mode 100644 index f40b63e..0000000 --- a/Help/release/dev/file-strings-utf-16.rst +++ /dev/null @@ -1,5 +0,0 @@ -file-strings-utf-16 -------------------- - -* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, - UTF-32LE, UTF-32BE as ``ENCODING`` options. diff --git a/Help/release/dev/find-msmpi.rst b/Help/release/dev/find-msmpi.rst deleted file mode 100644 index 6ece5c8..0000000 --- a/Help/release/dev/find-msmpi.rst +++ /dev/null @@ -1,4 +0,0 @@ -find-msmpi ----------- - -* The :module:`FindMPI` module learned to find MS-MPI on Windows. diff --git a/Help/release/dev/install-EXPORT-absolute-prefix.rst b/Help/release/dev/install-EXPORT-absolute-prefix.rst deleted file mode 100644 index 1b2a01c..0000000 --- a/Help/release/dev/install-EXPORT-absolute-prefix.rst +++ /dev/null @@ -1,9 +0,0 @@ -install-EXPORT-absolute-prefix ------------------------------- - -* The :command:`install(EXPORT)` command now works with an absolute - ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. diff --git a/Help/release/dev/record-GNU-5-features.rst b/Help/release/dev/record-GNU-5-features.rst deleted file mode 100644 index 0da9e75..0000000 --- a/Help/release/dev/record-GNU-5-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -record-GNU-5-features ---------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compiler version 5.0. diff --git a/Help/release/dev/rpm_multi_prefix.rst b/Help/release/dev/rpm_multi_prefix.rst deleted file mode 100644 index 0329592..0000000 --- a/Help/release/dev/rpm_multi_prefix.rst +++ /dev/null @@ -1,11 +0,0 @@ -rpm_multi_prefix ----------------- - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to - specify a component-specific value to use instead of - :variable:`CPACK_PACKAGING_INSTALL_PREFIX`. - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM_RELOCATION_PATHS` variable to - specify multiple relocation prefixes for a single rpm package. diff --git a/Help/release/dev/try-run-link-libraries.rst b/Help/release/dev/try-run-link-libraries.rst deleted file mode 100644 index 4f20cbd..0000000 --- a/Help/release/dev/try-run-link-libraries.rst +++ /dev/null @@ -1,5 +0,0 @@ -try-run-link-libraries ----------------------- - -* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` - option just as :command:`try_compile` already does. diff --git a/Help/release/dev/try_compile-link-flags.rst b/Help/release/dev/try_compile-link-flags.rst deleted file mode 100644 index d995e0b..0000000 --- a/Help/release/dev/try_compile-link-flags.rst +++ /dev/null @@ -1,6 +0,0 @@ -try_compile-link-flags ----------------------- - -* The :command:`try_compile` command source file signature now honors - link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated - test project. See policy :policy:`CMP0056`. diff --git a/Help/release/dev/unsupported-compilers.rst b/Help/release/dev/unsupported-compilers.rst deleted file mode 100644 index 1f3e8c1..0000000 --- a/Help/release/dev/unsupported-compilers.rst +++ /dev/null @@ -1,22 +0,0 @@ -unsupported-compilers ---------------------- - -* The implementation of CMake relies on some C++ compiler features which are - not supported by some older compilers. As a result, those old compilers - can no longer be used to build CMake itself. CMake continues to be able to - generate Makefiles and project files for users of those old compilers - however. The compilers known to no longer be capable of building CMake - are: - - * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. - * GCC 2.95 - superceded by GCC 3 and newer compilers. - * Borland compilers - superceded by other Windows compilers. - * Compaq compilers - superceded by other compilers. - * Comeau compilers - superceded by other compilers. - * SGI compilers - IRIX was dropped as a host platform. - - When building using SolarisStudio 12, the default ``libCStd`` standard - library is not sufficient to build CMake. The SolarisStudio distribution - supports compiler options to use ``STLPort4`` or ``libstdc++``. An - appropriate option to select the standard library is now added - automatically when building CMake with SolarisStudio compilers. diff --git a/Help/release/dev/vs-nsight-tegra-min-api.rst b/Help/release/dev/vs-nsight-tegra-min-api.rst deleted file mode 100644 index f8fa056..0000000 --- a/Help/release/dev/vs-nsight-tegra-min-api.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs-nsight-tegra-min-api ------------------------ - -* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to - specify the minimum version to be targeted by the toolchain. diff --git a/Help/release/dev/vs-shader-flags.rst b/Help/release/dev/vs-shader-flags.rst deleted file mode 100644 index 0d3f6cc..0000000 --- a/Help/release/dev/vs-shader-flags.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs-shader-flags ---------------- - -* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify - additional shader flags to ``.hlsl`` files, for the Visual Studio generators. diff --git a/Help/release/dev/windows-utf-8.rst b/Help/release/dev/windows-utf-8.rst deleted file mode 100644 index 64cd616..0000000 --- a/Help/release/dev/windows-utf-8.rst +++ /dev/null @@ -1,22 +0,0 @@ -windows-utf-8 -------------- - -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. - - Files written in the :manual:`cmake-language(7)`, such as - ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be - encoded as UTF-8. If files are already ASCII, they will be - compatible. If files were in a different encoding, including - Latin 1, they will need to be converted. - - The Visual Studio generators now write solution and project - files in UTF-8 instead of Windows-1252. Windows-1252 supported - Latin 1 languages such as those found in North and South America - and Western Europe. With UTF-8, additional languages are now - supported. diff --git a/Help/release/dev/xcode-revise-make-program.rst b/Help/release/dev/xcode-revise-make-program.rst deleted file mode 100644 index f50cf44..0000000 --- a/Help/release/dev/xcode-revise-make-program.rst +++ /dev/null @@ -1,6 +0,0 @@ -xcode-revise-make-program -------------------------- - -* The :generator:`Xcode` generator no longer requires a value for - the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. - It now locates ``xcodebuild`` when needed at build time. diff --git a/Help/release/index.rst b/Help/release/index.rst index abc19b8..990accf 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -13,5 +13,6 @@ Releases .. toctree:: :maxdepth: 1 + 3.2.0 <3.2.0> 3.1.0 <3.1.0> 3.0.0 <3.0.0> ----------------------------------------------------------------------- Summary of changes: Help/release/3.2.0.rst | 267 ++++++++++++++++++++ Help/release/dev/Apple-GNU-compiler-features.rst | 5 - Help/release/dev/Apple-compiler-selection.rst | 8 - .../dev/CTestCoverageCollectGCOV-refinements.rst | 6 - Help/release/dev/ExternalData-custom-download.rst | 7 - .../ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst | 6 - .../dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst | 6 - .../dev/ExternalProject_UPDATE_DISCONNECTED.rst | 6 - .../ExternalProject_independent-step-targets.rst | 6 - Help/release/dev/FindCUDA-cusolver.rst | 5 - Help/release/dev/FindGit-local-Github.rst | 5 - Help/release/dev/FindLATEX-components.rst | 4 - Help/release/dev/FindOpenGL-no-X11.rst | 8 - Help/release/dev/FindOpenSSL-separate-libs.rst | 7 - Help/release/dev/GNU-4.4-compile-features.rst | 5 - .../release/dev/SolarisStudio-compile-features.rst | 5 - Help/release/dev/WCDH-thread_local.rst | 7 - ...riteCompilerDetectionHeader-multi-file-lang.rst | 6 - Help/release/dev/Xcode-clang-compile-features.rst | 5 - Help/release/dev/add-FindGSL.rst | 5 - Help/release/dev/add-FindIntl.rst | 5 - Help/release/dev/add-FindJsonCpp.rst | 5 - Help/release/dev/add-continue-command.rst | 6 - Help/release/dev/add-xz-support.rst | 5 - .../release/dev/add_javascript_coverage_parser.rst | 4 - Help/release/dev/break-command-strictness.rst | 6 - Help/release/dev/cached-regex-clear-fixed.rst | 5 - Help/release/dev/cmake-E-tar-files-from.rst | 6 - Help/release/dev/cmake-E-tar-mtime.rst | 6 - Help/release/dev/console-pool.rst | 10 - .../dev/cpack-rpm-component-descriptions.rst | 7 - Help/release/dev/cpack-rpm-pre-post-install.rst | 12 - Help/release/dev/ctest-delphi-coverage.rst | 4 - Help/release/dev/curl-darwinssl.rst | 9 - Help/release/dev/curl-default-cainfo.rst | 8 - Help/release/dev/curl-winssl.rst | 9 - Help/release/dev/custom-command-byproducts.rst | 7 - Help/release/dev/feature-record-msvc.rst | 5 - Help/release/dev/file-LOCK-command.rst | 5 - Help/release/dev/file-strings-utf-16.rst | 5 - Help/release/dev/find-msmpi.rst | 4 - .../release/dev/install-EXPORT-absolute-prefix.rst | 9 - Help/release/dev/record-GNU-5-features.rst | 5 - Help/release/dev/rpm_multi_prefix.rst | 11 - Help/release/dev/try-run-link-libraries.rst | 5 - Help/release/dev/try_compile-link-flags.rst | 6 - Help/release/dev/unsupported-compilers.rst | 22 -- Help/release/dev/vs-nsight-tegra-min-api.rst | 5 - Help/release/dev/vs-shader-flags.rst | 5 - Help/release/dev/windows-utf-8.rst | 22 -- Help/release/dev/xcode-revise-make-program.rst | 6 - Help/release/index.rst | 1 + 52 files changed, 268 insertions(+), 341 deletions(-) create mode 100644 Help/release/3.2.0.rst delete mode 100644 Help/release/dev/Apple-GNU-compiler-features.rst delete mode 100644 Help/release/dev/Apple-compiler-selection.rst delete mode 100644 Help/release/dev/CTestCoverageCollectGCOV-refinements.rst delete mode 100644 Help/release/dev/ExternalData-custom-download.rst delete mode 100644 Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst delete mode 100644 Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst delete mode 100644 Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst delete mode 100644 Help/release/dev/ExternalProject_independent-step-targets.rst delete mode 100644 Help/release/dev/FindCUDA-cusolver.rst delete mode 100644 Help/release/dev/FindGit-local-Github.rst delete mode 100644 Help/release/dev/FindLATEX-components.rst delete mode 100644 Help/release/dev/FindOpenGL-no-X11.rst delete mode 100644 Help/release/dev/FindOpenSSL-separate-libs.rst delete mode 100644 Help/release/dev/GNU-4.4-compile-features.rst delete mode 100644 Help/release/dev/SolarisStudio-compile-features.rst delete mode 100644 Help/release/dev/WCDH-thread_local.rst delete mode 100644 Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst delete mode 100644 Help/release/dev/Xcode-clang-compile-features.rst delete mode 100644 Help/release/dev/add-FindGSL.rst delete mode 100644 Help/release/dev/add-FindIntl.rst delete mode 100644 Help/release/dev/add-FindJsonCpp.rst delete mode 100644 Help/release/dev/add-continue-command.rst delete mode 100644 Help/release/dev/add-xz-support.rst delete mode 100644 Help/release/dev/add_javascript_coverage_parser.rst delete mode 100644 Help/release/dev/break-command-strictness.rst delete mode 100644 Help/release/dev/cached-regex-clear-fixed.rst delete mode 100644 Help/release/dev/cmake-E-tar-files-from.rst delete mode 100644 Help/release/dev/cmake-E-tar-mtime.rst delete mode 100644 Help/release/dev/console-pool.rst delete mode 100644 Help/release/dev/cpack-rpm-component-descriptions.rst delete mode 100644 Help/release/dev/cpack-rpm-pre-post-install.rst delete mode 100644 Help/release/dev/ctest-delphi-coverage.rst delete mode 100644 Help/release/dev/curl-darwinssl.rst delete mode 100644 Help/release/dev/curl-default-cainfo.rst delete mode 100644 Help/release/dev/curl-winssl.rst delete mode 100644 Help/release/dev/custom-command-byproducts.rst delete mode 100644 Help/release/dev/feature-record-msvc.rst delete mode 100644 Help/release/dev/file-LOCK-command.rst delete mode 100644 Help/release/dev/file-strings-utf-16.rst delete mode 100644 Help/release/dev/find-msmpi.rst delete mode 100644 Help/release/dev/install-EXPORT-absolute-prefix.rst delete mode 100644 Help/release/dev/record-GNU-5-features.rst delete mode 100644 Help/release/dev/rpm_multi_prefix.rst delete mode 100644 Help/release/dev/try-run-link-libraries.rst delete mode 100644 Help/release/dev/try_compile-link-flags.rst delete mode 100644 Help/release/dev/unsupported-compilers.rst delete mode 100644 Help/release/dev/vs-nsight-tegra-min-api.rst delete mode 100644 Help/release/dev/vs-shader-flags.rst delete mode 100644 Help/release/dev/windows-utf-8.rst delete mode 100644 Help/release/dev/xcode-revise-make-program.rst hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 13:59:34 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 13:59:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2589-g6894b25 Message-ID: <20150204185934.A0F72AAB43@public.kitware.com> 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 6894b2511b2517091d3383b5a6313467919f1847 (commit) via 2bbbf99d7bd27844dcf157f72bd05eb7d20ce888 (commit) via 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 (commit) from ba1989e5609850771ea4291c85fcd0a0620b3c68 (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=6894b2511b2517091d3383b5a6313467919f1847 commit 6894b2511b2517091d3383b5a6313467919f1847 Merge: ba1989e 2bbbf99 Author: Brad King AuthorDate: Wed Feb 4 13:59:33 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 13:59:33 2015 -0500 Merge topic 'test-release' into next 2bbbf99d Merge branch 'release-3.1' into test-release 44100adc CMake 3.1.2 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2bbbf99d7bd27844dcf157f72bd05eb7d20ce888 commit 2bbbf99d7bd27844dcf157f72bd05eb7d20ce888 Merge: eef9a47 44100ad Author: Brad King AuthorDate: Wed Feb 4 13:59:02 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 13:59:02 2015 -0500 Merge branch 'release-3.1' into test-release http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 commit 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 Author: Brad King AuthorDate: Wed Feb 4 13:58:33 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 13:58:33 2015 -0500 CMake 3.1.2 diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 6e17c35..7b27901 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 1) +set(CMake_VERSION_PATCH 2) #set(CMake_VERSION_RC 0) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 15:25:11 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 15:25:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2591-g950f8fe Message-ID: <20150204202511.4616BAA9F3@public.kitware.com> 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 950f8fe104ee7f45fb1cd2a240bc80ede115e6ad (commit) via ecaee7caca4e3d4528e643736c0620e785e84153 (commit) from 6894b2511b2517091d3383b5a6313467919f1847 (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=950f8fe104ee7f45fb1cd2a240bc80ede115e6ad commit 950f8fe104ee7f45fb1cd2a240bc80ede115e6ad Merge: 6894b25 ecaee7c Author: Brad King AuthorDate: Wed Feb 4 15:25:10 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 15:25:10 2015 -0500 Merge topic 'cpack-nsis-win64' into next ecaee7ca CPack: Fix NSIS default 64-bit Windows install directory (#14211) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ecaee7caca4e3d4528e643736c0620e785e84153 commit ecaee7caca4e3d4528e643736c0620e785e84153 Author: Brad King AuthorDate: Wed Feb 4 15:09:18 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 15:11:10 2015 -0500 CPack: Fix NSIS default 64-bit Windows install directory (#14211) When targeting Windows with a 64-bit architecture, use "$PROGRAMFILES64" to get the Program Files folder. Use CMAKE_SIZEOF_VOID_P to check for the architecture size instead of CMAKE_CL_64 because the latter is not defined for all compilers. Inspired-by: Hugh Sorby Inspired-by: ?smail D?nmez diff --git a/Modules/CPack.cmake b/Modules/CPack.cmake index 35259c4..ce1536e 100644 --- a/Modules/CPack.cmake +++ b/Modules/CPack.cmake @@ -352,8 +352,8 @@ if(CPACK_NSIS_MODIFY_PATH) endif() set(__cpack_system_name ${CMAKE_SYSTEM_NAME}) -if(${__cpack_system_name} MATCHES Windows) - if(CMAKE_CL_64) +if(__cpack_system_name MATCHES "Windows") + if(CMAKE_SIZEOF_VOID_P EQUAL 8) set(__cpack_system_name win64) else() set(__cpack_system_name win32) @@ -363,7 +363,12 @@ cpack_set_if_not_set(CPACK_SYSTEM_NAME "${__cpack_system_name}") # Root dir: default value should be the string literal "$PROGRAMFILES" # for backwards compatibility. Projects may set this value to anything. -set(__cpack_root_default "$PROGRAMFILES") +# When creating 64 bit binaries we set the default value to "$PROGRAMFILES64" +if("x${__cpack_system_name}" STREQUAL "xwin64") + set(__cpack_root_default "$PROGRAMFILES64") +else() + set(__cpack_root_default "$PROGRAMFILES") +endif() cpack_set_if_not_set(CPACK_NSIS_INSTALL_ROOT "${__cpack_root_default}") # -..--. ----------------------------------------------------------------------- Summary of changes: Modules/CPack.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 4 15:51:39 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 4 Feb 2015 15:51:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2596-gcd7e669 Message-ID: <20150204205139.933E2AAAFD@public.kitware.com> 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 cd7e6690f95e3fb6c61bf2c0fdbd12880f55bb66 (commit) via e49ac7e1faccdbcffa88127a92d7184832fbc383 (commit) via 5e2569af959073ff3b91a5ee2a5325ad8c854744 (commit) via 6ed3d551f7caf18b50a4ce6c82323e3cdddd5c62 (commit) via 415151c383e74402d8922cbc1fc2ed8ee7040f0c (commit) from 950f8fe104ee7f45fb1cd2a240bc80ede115e6ad (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=cd7e6690f95e3fb6c61bf2c0fdbd12880f55bb66 commit cd7e6690f95e3fb6c61bf2c0fdbd12880f55bb66 Merge: 950f8fe e49ac7e Author: Stephen Kelly AuthorDate: Wed Feb 4 15:51:38 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 15:51:38 2015 -0500 Merge topic 'doc-3.2-relnotes' into next e49ac7e1 RelNotes: Document that the AUTORCC feature tracks dependencies. 5e2569af RelNotes: Document the versions of compilers supported for features. 6ed3d551 RelNotes: Document some new features of file(GENERATE). 415151c3 RelNotes: Add some cross-linking. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e49ac7e1faccdbcffa88127a92d7184832fbc383 commit e49ac7e1faccdbcffa88127a92d7184832fbc383 Author: Stephen Kelly AuthorDate: Wed Feb 4 21:45:25 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 21:50:35 2015 +0100 RelNotes: Document that the AUTORCC feature tracks dependencies. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 9068a97..fc3c1b3 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -208,6 +208,10 @@ Other * Microsoft Visual Studio (``MSVC``) for versions 2010 through 2015. * Oracle SolarisStudio (``SunPro``) version 12.4. +* The :ref:`Qt AUTORCC` feature now tracks files listed in ``.qrc`` files + as dependencies. If an input file to the ``rcc`` tool is changed, the tool + is automatically re-run. + New Diagnostics =============== http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5e2569af959073ff3b91a5ee2a5325ad8c854744 commit 5e2569af959073ff3b91a5ee2a5325ad8c854744 Author: Stephen Kelly AuthorDate: Wed Feb 4 21:44:46 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 21:50:35 2015 +0100 RelNotes: Document the versions of compilers supported for features. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 0793d8e..9068a97 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -203,10 +203,10 @@ Other * The :manual:`Compile Features ` functionality is now aware of features supported by more compilers, including: - * Apple Clang (``AppleClang``). - * GNU compiler versions 4.4 through 5.0, including Apple variants (``GNU``). - * Microsoft Visual Studio (``MSVC``). - * Oracle SolarisStudio (``SunPro``). + * Apple Clang (``AppleClang``) for Xcode versions 4.4 though 6.1. + * GNU compiler versions 4.4 through 5.0 on UNIX and Apple (``GNU``). + * Microsoft Visual Studio (``MSVC``) for versions 2010 through 2015. + * Oracle SolarisStudio (``SunPro``) version 12.4. New Diagnostics =============== http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6ed3d551f7caf18b50a4ce6c82323e3cdddd5c62 commit 6ed3d551f7caf18b50a4ce6c82323e3cdddd5c62 Author: Stephen Kelly AuthorDate: Wed Feb 4 21:44:11 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 21:44:11 2015 +0100 RelNotes: Document some new features of file(GENERATE). diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 55c0c9d..0793d8e 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -61,6 +61,13 @@ Commands * The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` option just as :command:`try_compile` already does. +* The :command:`file(GENERATE)` command now generates the output file with + the same permissions as the input file if set. + +* The :command:`file(GENERATE)` command can now generate files which are + used as source files for buildsystem targets. Generated files + automatically get their :prop_sf:`GENERATED` property set to ``TRUE``. + Variables --------- http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=415151c383e74402d8922cbc1fc2ed8ee7040f0c commit 415151c383e74402d8922cbc1fc2ed8ee7040f0c Author: Stephen Kelly AuthorDate: Wed Feb 4 21:43:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 21:43:40 2015 +0100 RelNotes: Add some cross-linking. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index fba6523..55c0c9d 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -33,8 +33,8 @@ Commands commands learned a new ``USES_TERMINAL`` option to request that the command be given direct access to the terminal if possible. The :generator:`Ninja` generator will places such commands in the - ``console`` pool. Build targets provided by CMake that are meant - for individual interactive use, such as ``install``, are now + ``console`` :prop_gbl:`pool `. Build targets provided by CMake + that are meant for individual interactive use, such as ``install``, are now placed in this pool. * A new :command:`continue` command was added that can be called inside loop @@ -49,10 +49,10 @@ Commands * The :command:`install(EXPORT)` command now works with an absolute ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. + with a destination or :ref:`usage requirements ` + specified relative to the install prefix. The value of the + :variable:`CMAKE_INSTALL_PREFIX` variable is hard-coded into the installed + export file as the base for relative references. * The :command:`try_compile` command source file signature now honors link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated ----------------------------------------------------------------------- Summary of changes: Help/release/3.2.0.rst | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 4 15:57:00 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 4 Feb 2015 15:57:00 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2599-g20dca82 Message-ID: <20150204205700.65761AACAC@public.kitware.com> 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 20dca828e47efc9d01f6f7ead0a0691a142f3175 (commit) via f9839c491ef926b71487345fdcc7054324587168 (commit) via 44d6f3ce0839ba0407dc095d1edc1f30e732b719 (commit) from cd7e6690f95e3fb6c61bf2c0fdbd12880f55bb66 (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=20dca828e47efc9d01f6f7ead0a0691a142f3175 commit 20dca828e47efc9d01f6f7ead0a0691a142f3175 Merge: cd7e669 f9839c4 Author: Stephen Kelly AuthorDate: Wed Feb 4 15:56:59 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 15:56:59 2015 -0500 Merge topic 'update-docs' into next f9839c49 Help: Document build targets automatically added to console pool. 44d6f3ce Help: Add some cross-linking. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f9839c491ef926b71487345fdcc7054324587168 commit f9839c491ef926b71487345fdcc7054324587168 Author: Stephen Kelly AuthorDate: Wed Feb 4 21:52:13 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 21:52:13 2015 +0100 Help: Document build targets automatically added to console pool. diff --git a/Help/prop_gbl/JOB_POOLS.rst b/Help/prop_gbl/JOB_POOLS.rst index 98b9f7e..2ce74b8 100644 --- a/Help/prop_gbl/JOB_POOLS.rst +++ b/Help/prop_gbl/JOB_POOLS.rst @@ -18,3 +18,6 @@ Defined pools could be used globally by setting :variable:`CMAKE_JOB_POOL_COMPILE` and :variable:`CMAKE_JOB_POOL_LINK` or per target by setting the target properties :prop_tgt:`JOB_POOL_COMPILE` and :prop_tgt:`JOB_POOL_LINK`. + +Build targets provided by CMake that are meant for individual interactive +use, such as ``install``, are placed in the ``console`` pool automatically. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=44d6f3ce0839ba0407dc095d1edc1f30e732b719 commit 44d6f3ce0839ba0407dc095d1edc1f30e732b719 Author: Stephen Kelly AuthorDate: Wed Feb 4 21:52:00 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 21:52:00 2015 +0100 Help: Add some cross-linking. diff --git a/Help/command/add_custom_command.rst b/Help/command/add_custom_command.rst index 1307a58..e646c56 100644 --- a/Help/command/add_custom_command.rst +++ b/Help/command/add_custom_command.rst @@ -147,7 +147,7 @@ The options are: ``USES_TERMINAL`` The command will be given direct access to the terminal if possible. With the :generator:`Ninja` generator, this places the command in - the ``console`` pool. + the ``console`` :prop_gbl:`pool `. ``VERBATIM`` All arguments to the commands will be escaped properly for the diff --git a/Help/command/add_custom_target.rst b/Help/command/add_custom_target.rst index 5134a70..82d69db 100644 --- a/Help/command/add_custom_target.rst +++ b/Help/command/add_custom_target.rst @@ -103,7 +103,7 @@ The options are: ``USES_TERMINAL`` The command will be given direct access to the terminal if possible. With the :generator:`Ninja` generator, this places the command in - the ``console`` pool. + the ``console`` :prop_gbl:`pool `. ``WORKING_DIRECTORY`` Execute the command with the given current working directory. diff --git a/Help/manual/cmake-packages.7.rst b/Help/manual/cmake-packages.7.rst index fba1d61..3367ba4 100644 --- a/Help/manual/cmake-packages.7.rst +++ b/Help/manual/cmake-packages.7.rst @@ -358,7 +358,7 @@ and a ``cmake/ClimbingStatsConfig.cmake`` are installed to the same location, completing the package. The generated :prop_tgt:`IMPORTED` targets have appropriate properties set -to define their usage requirements, such as +to define their :ref:`usage requirements `, such as :prop_tgt:`INTERFACE_INCLUDE_DIRECTORIES`, :prop_tgt:`INTERFACE_COMPILE_DEFINITIONS` and other relevant built-in ``INTERFACE_`` properties. The ``INTERFACE`` variant of user-defined ----------------------------------------------------------------------- Summary of changes: Help/command/add_custom_command.rst | 2 +- Help/command/add_custom_target.rst | 2 +- Help/manual/cmake-packages.7.rst | 2 +- Help/prop_gbl/JOB_POOLS.rst | 3 +++ 4 files changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 4 16:06:38 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 4 Feb 2015 16:06:38 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2602-g3a3d9fb Message-ID: <20150204210638.B501FAAE6A@public.kitware.com> 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 3a3d9fb5810cd408a232df2fcb86599624eb216b (commit) via 43cdef5bbde4616bce8be3144d0cdfa005cece03 (commit) via 572dbfc18ee29474590ca8170074190c074761f5 (commit) from 20dca828e47efc9d01f6f7ead0a0691a142f3175 (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=3a3d9fb5810cd408a232df2fcb86599624eb216b commit 3a3d9fb5810cd408a232df2fcb86599624eb216b Merge: 20dca82 43cdef5 Author: Stephen Kelly AuthorDate: Wed Feb 4 16:06:37 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 16:06:37 2015 -0500 Merge topic 'fix-C-standard-features' into next 43cdef5b Features: Populate CMAKE__STANDARD_DEFAULT only for supported compilers. 572dbfc1 AppleClang: Remove redundant UNIX condition. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=43cdef5bbde4616bce8be3144d0cdfa005cece03 commit 43cdef5bbde4616bce8be3144d0cdfa005cece03 Author: Stephen Kelly AuthorDate: Wed Feb 4 22:04:18 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 22:04:18 2015 +0100 Features: Populate CMAKE__STANDARD_DEFAULT only for supported compilers. diff --git a/Modules/Compiler/AppleClang-C.cmake b/Modules/Compiler/AppleClang-C.cmake index 00d2633..10454f6 100644 --- a/Modules/Compiler/AppleClang-C.cmake +++ b/Modules/Compiler/AppleClang-C.cmake @@ -12,7 +12,9 @@ if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11") endif() -set(CMAKE_C_STANDARD_DEFAULT 99) +if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) + set(CMAKE_C_STANDARD_DEFAULT 99) +endif() macro(cmake_record_c_compile_features) macro(_get_appleclang_features std_version list) diff --git a/Modules/Compiler/AppleClang-CXX.cmake b/Modules/Compiler/AppleClang-CXX.cmake index 6d58be3..5194da4 100644 --- a/Modules/Compiler/AppleClang-CXX.cmake +++ b/Modules/Compiler/AppleClang-CXX.cmake @@ -19,7 +19,9 @@ if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.1) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_appleclang_features std_version list) diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake index e07eace..84b2c74 100644 --- a/Modules/Compiler/Clang-CXX.cmake +++ b/Modules/Compiler/Clang-CXX.cmake @@ -31,7 +31,9 @@ elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if(UNIX AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_clang_features std_version list) diff --git a/Modules/Compiler/GNU-C.cmake b/Modules/Compiler/GNU-C.cmake index fa97a94..89704e6 100644 --- a/Modules/Compiler/GNU-C.cmake +++ b/Modules/Compiler/GNU-C.cmake @@ -24,7 +24,7 @@ endif() if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.0) set(CMAKE_C_STANDARD_DEFAULT 11) -else() +elseif(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.4) set(CMAKE_C_STANDARD_DEFAULT 90) endif() diff --git a/Modules/Compiler/GNU-CXX.cmake b/Modules/Compiler/GNU-CXX.cmake index c471daf..86a31e4 100644 --- a/Modules/Compiler/GNU-CXX.cmake +++ b/Modules/Compiler/GNU-CXX.cmake @@ -34,7 +34,9 @@ elseif (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_gcc_features std_version list) diff --git a/Modules/Compiler/MSVC-CXX.cmake b/Modules/Compiler/MSVC-CXX.cmake index 962aaeb..82ce069 100644 --- a/Modules/Compiler/MSVC-CXX.cmake +++ b/Modules/Compiler/MSVC-CXX.cmake @@ -1,5 +1,8 @@ -# MSVC has no specific language level or flags to change it. -set(CMAKE_CXX_STANDARD_DEFAULT "") + +if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16.0) + # MSVC has no specific language level or flags to change it. + set(CMAKE_CXX_STANDARD_DEFAULT "") +endif() macro(cmake_record_cxx_compile_features) record_compiler_features(CXX "" CMAKE_CXX_COMPILE_FEATURES) diff --git a/Modules/Compiler/SunPro-CXX.cmake b/Modules/Compiler/SunPro-CXX.cmake index cb37713..c7bc734 100644 --- a/Modules/Compiler/SunPro-CXX.cmake +++ b/Modules/Compiler/SunPro-CXX.cmake @@ -37,7 +37,9 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=c++11") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_solaris_studio_features std_version list) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=572dbfc18ee29474590ca8170074190c074761f5 commit 572dbfc18ee29474590ca8170074190c074761f5 Author: Stephen Kelly AuthorDate: Wed Feb 4 22:03:49 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 22:03:49 2015 +0100 AppleClang: Remove redundant UNIX condition. diff --git a/Modules/Compiler/AppleClang-C.cmake b/Modules/Compiler/AppleClang-C.cmake index 16f420f..00d2633 100644 --- a/Modules/Compiler/AppleClang-C.cmake +++ b/Modules/Compiler/AppleClang-C.cmake @@ -20,7 +20,7 @@ macro(cmake_record_c_compile_features) endmacro() set(_result 0) - if (UNIX AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) + if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) _get_appleclang_features(${CMAKE_C11_STANDARD_COMPILE_OPTION} CMAKE_C11_COMPILE_FEATURES) if (_result EQUAL 0) _get_appleclang_features(${CMAKE_C99_STANDARD_COMPILE_OPTION} CMAKE_C99_COMPILE_FEATURES) diff --git a/Modules/Compiler/AppleClang-CXX.cmake b/Modules/Compiler/AppleClang-CXX.cmake index 978c382..6d58be3 100644 --- a/Modules/Compiler/AppleClang-CXX.cmake +++ b/Modules/Compiler/AppleClang-CXX.cmake @@ -27,7 +27,7 @@ macro(cmake_record_cxx_compile_features) endmacro() set(_result 0) - if (UNIX AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0) + if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0) set(_result 0) if(CMAKE_CXX14_STANDARD_COMPILE_OPTION) _get_appleclang_features(${CMAKE_CXX14_STANDARD_COMPILE_OPTION} CMAKE_CXX14_COMPILE_FEATURES) ----------------------------------------------------------------------- Summary of changes: Modules/Compiler/AppleClang-C.cmake | 6 ++++-- Modules/Compiler/AppleClang-CXX.cmake | 6 ++++-- Modules/Compiler/Clang-CXX.cmake | 4 +++- Modules/Compiler/GNU-C.cmake | 2 +- Modules/Compiler/GNU-CXX.cmake | 4 +++- Modules/Compiler/MSVC-CXX.cmake | 7 +++++-- Modules/Compiler/SunPro-CXX.cmake | 4 +++- 7 files changed, 23 insertions(+), 10 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 16:07:54 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 16:07:54 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2604-gfb35d8d Message-ID: <20150204210754.B8D2DAAF19@public.kitware.com> 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 fb35d8df9d7263cb417fb4037df768fa40a49ed9 (commit) via 219797e4befa19a79d2d94e0b5a2bbe75415606a (commit) from 3a3d9fb5810cd408a232df2fcb86599624eb216b (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=fb35d8df9d7263cb417fb4037df768fa40a49ed9 commit fb35d8df9d7263cb417fb4037df768fa40a49ed9 Merge: 3a3d9fb 219797e Author: Brad King AuthorDate: Wed Feb 4 16:07:54 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 16:07:54 2015 -0500 Merge topic 'doc-try_compile' into next 219797e4 Help: Revise try_compile and try_run documentation (#15358) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=219797e4befa19a79d2d94e0b5a2bbe75415606a commit 219797e4befa19a79d2d94e0b5a2bbe75415606a Author: Brad King AuthorDate: Wed Feb 4 16:06:13 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 16:06:13 2015 -0500 Help: Revise try_compile and try_run documentation (#15358) Rewrite the documentation using better reStructuredText markup constructs. Clarify interaction of options like LINK_LIBRARIES and CMAKE_FLAGS. diff --git a/Help/command/try_compile.rst b/Help/command/try_compile.rst index 224c67b..9a70885 100644 --- a/Help/command/try_compile.rst +++ b/Help/command/try_compile.rst @@ -1,72 +1,100 @@ try_compile ----------- +.. only:: html + + .. contents:: + Try building some code. +Try Compiling Whole Projects +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + :: try_compile(RESULT_VAR - [targetName] [CMAKE_FLAGS flags...] + [] [CMAKE_FLAGS ...] [OUTPUT_VARIABLE ]) -Try building a project. In this form, srcdir should contain a -complete CMake project with a CMakeLists.txt file and all sources. -The bindir and srcdir will not be deleted after this command is run. -Specify targetName to build a specific target instead of the 'all' or -'ALL_BUILD' target. +Try building a project. The success or failure of the ``try_compile``, +i.e. ``TRUE`` or ``FALSE`` respectively, is returned in ``RESULT_VAR``. + +In this form, ```` should contain a complete CMake project with a +``CMakeLists.txt`` file and all sources. The ```` and ```` +will not be deleted after this command is run. Specify ```` to +build a specific target instead of the ``all`` or ``ALL_BUILD`` target. See +below for the meaning of other options. + +Try Compiling Source Files +^^^^^^^^^^^^^^^^^^^^^^^^^^ :: try_compile(RESULT_VAR - [CMAKE_FLAGS flags...] - [COMPILE_DEFINITIONS flags...] - [LINK_LIBRARIES libs...] + [CMAKE_FLAGS ...] + [COMPILE_DEFINITIONS ...] + [LINK_LIBRARIES ...] [OUTPUT_VARIABLE ] [COPY_FILE [COPY_FILE_ERROR ]]) -Try building an executable from one or more source files. In this -form the user need only supply one or more source files that include a -definition for 'main'. CMake will create a CMakeLists.txt file to -build the source(s) as an executable. Specify COPY_FILE to get a copy -of the linked executable at the given fileName and optionally -COPY_FILE_ERROR to capture any error. - -In this version all files in bindir/CMakeFiles/CMakeTmp will be -cleaned automatically. For debugging, --debug-trycompile can be -passed to cmake to avoid this clean. However, multiple sequential -try_compile operations reuse this single output directory. If you use ---debug-trycompile, you can only debug one try_compile call at a time. -The recommended procedure is to protect all try_compile calls in your -project by ``if(NOT DEFINED RESULT_VAR)`` logic, configure with cmake -all the way through once, then delete the cache entry associated with -the try_compile call of interest, and then re-run cmake again with ---debug-trycompile. - -Some extra flags that can be included are, INCLUDE_DIRECTORIES, -LINK_DIRECTORIES, and LINK_LIBRARIES. COMPILE_DEFINITIONS are --Ddefinition that will be passed to the compile line. - -The srcfile signature also accepts a LINK_LIBRARIES argument which may -contain a list of libraries or IMPORTED targets which will be linked -to in the generated project. If LINK_LIBRARIES is specified as a -parameter to try_compile, then any LINK_LIBRARIES passed as -CMAKE_FLAGS will be ignored. +Try building an executable from one or more source files. The success or +failure of the ``try_compile``, i.e. ``TRUE`` or ``FALSE`` respectively, is +returned in ``RESULT_VAR``. -try_compile creates a CMakeList.txt file on the fly that looks like -this: +In this form the user need only supply one or more source files that include a +definition for ``main``. CMake will create a ``CMakeLists.txt`` file to build +the source(s) as an executable that looks something like this:: -:: - - add_definitions( ) + add_definitions() include_directories(${INCLUDE_DIRECTORIES}) link_directories(${LINK_DIRECTORIES}) - add_executable(cmTryCompileExec sources) + add_executable(cmTryCompileExec ...) target_link_libraries(cmTryCompileExec ${LINK_LIBRARIES}) -In both versions of the command, if OUTPUT_VARIABLE is specified, then -the output from the build process is stored in the given variable. -The success or failure of the try_compile, i.e. TRUE or FALSE -respectively, is returned in RESULT_VAR. CMAKE_FLAGS can be used to -pass -DVAR:TYPE=VALUE flags to the cmake that is run during the build. -Set variable CMAKE_TRY_COMPILE_CONFIGURATION to choose a build -configuration. +The options are: + +``CMAKE_FLAGS ...`` + Specify flags of the form ``-DVAR:TYPE=VALUE`` to be passed to + the ``cmake`` command-line used to drive the test build. + The above example shows how values for variables + ``INCLUDE_DIRECTORIES``, ``LINK_DIRECTORIES``, and ``LINK_LIBRARIES`` + are used. + +``COMPILE_DEFINITIONS ...`` + Specify ``-Ddefinition`` arguments to pass to ``add_definitions`` + in the generated test project. + +``COPY_FILE `` + Copy the linked executable to the given ````. + +``COPY_FILE_ERROR `` + Use after ``COPY_FILE`` to capture into variable ```` any error + message encountered while trying to copy the file. + +``LINK_LIBRARIES ...`` + Specify libraries to be linked in the generated project. + The list of libraries may refer to system libraries and to + :ref:`Imported Targets ` from the calling project. + + If this option is specified, any ``-DLINK_LIBRARIES=...`` value + given to the ``CMAKE_FLAGS`` option will be ignored. + +``OUTPUT_VARIABLE `` + Store the output from the build process the given variable. + +In this version all files in ``/CMakeFiles/CMakeTmp`` will be +cleaned automatically. For debugging, ``--debug-trycompile`` can be +passed to ``cmake`` to avoid this clean. However, multiple sequential +``try_compile`` operations reuse this single output directory. If you use +``--debug-trycompile``, you can only debug one ``try_compile`` call at a time. +The recommended procedure is to protect all ``try_compile`` calls in your +project by ``if(NOT DEFINED RESULT_VAR)`` logic, configure with cmake +all the way through once, then delete the cache entry associated with +the try_compile call of interest, and then re-run cmake again with +``--debug-trycompile``. + +Other Behavior Settings +^^^^^^^^^^^^^^^^^^^^^^^ + +Set the :variable:`CMAKE_TRY_COMPILE_CONFIGURATION` variable to choose +a build configuration. diff --git a/Help/command/try_run.rst b/Help/command/try_run.rst index b8ea0fe..43ee219 100644 --- a/Help/command/try_run.rst +++ b/Help/command/try_run.rst @@ -1,59 +1,97 @@ try_run ------- +.. only:: html + + .. contents:: + Try compiling and then running some code. +Try Compiling and Running Source Files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + :: try_run(RUN_RESULT_VAR COMPILE_RESULT_VAR - bindir srcfile [CMAKE_FLAGS ] - [COMPILE_DEFINITIONS ] - [LINK_LIBRARIES ] - [COMPILE_OUTPUT_VARIABLE comp] - [RUN_OUTPUT_VARIABLE run] - [OUTPUT_VARIABLE var] - [ARGS ...]) - -Try compiling a srcfile. Return TRUE or FALSE for success or failure -in COMPILE_RESULT_VAR. Then if the compile succeeded, run the -executable and return its exit code in RUN_RESULT_VAR. If the -executable was built, but failed to run, then RUN_RESULT_VAR will be -set to FAILED_TO_RUN. COMPILE_OUTPUT_VARIABLE specifies the variable -where the output from the compile step goes. RUN_OUTPUT_VARIABLE -specifies the variable where the output from the running executable -goes. - -The srcfile signature also accepts a LINK_LIBRARIES argument which may -contain a list of libraries or IMPORTED targets which will be linked -to in the generated project. If LINK_LIBRARIES is specified as a -parameter to try_run, then any LINK_LIBRARIES passed as -CMAKE_FLAGS will be ignored. - -For compatibility reasons OUTPUT_VARIABLE is still supported, which -gives you the output from the compile and run step combined. - -Cross compiling issues + bindir srcfile [CMAKE_FLAGS ...] + [COMPILE_DEFINITIONS ...] + [LINK_LIBRARIES ...] + [COMPILE_OUTPUT_VARIABLE ] + [RUN_OUTPUT_VARIABLE ] + [OUTPUT_VARIABLE ] + [ARGS ...]) + +Try compiling a ````. Returns ``TRUE`` or ``FALSE`` for success +or failure in ``COMPILE_RESULT_VAR``. If the compile succeeded, runs the +executable and returns its exit code in ``RUN_RESULT_VAR``. If the +executable was built, but failed to run, then ``RUN_RESULT_VAR`` will be +set to ``FAILED_TO_RUN``. See the :command:`try_compile` command for +information on how the test project is constructed to build the source file. + +The options are: + +``CMAKE_FLAGS ...`` + Specify flags of the form ``-DVAR:TYPE=VALUE`` to be passed to + the ``cmake`` command-line used to drive the test build. + The example in :command:`try_compile` shows how values for variables + ``INCLUDE_DIRECTORIES``, ``LINK_DIRECTORIES``, and ``LINK_LIBRARIES`` + are used. + +``COMPILE_DEFINITIONS ...`` + Specify ``-Ddefinition`` arguments to pass to ``add_definitions`` + in the generated test project. + +``COMPILE_OUTPUT_VARIABLE `` + Report the compile step build output in a given variable. + +``LINK_LIBRARIES ...`` + Specify libraries to be linked in the generated project. + The list of libraries may refer to system libraries and to + :ref:`Imported Targets ` from the calling project. + + If this option is specified, any ``-DLINK_LIBRARIES=...`` value + given to the ``CMAKE_FLAGS`` option will be ignored. + +``OUTPUT_VARIABLE `` + Report the compile build output and the output from running the executable + in the given variable. This option exists for legacy reasons. Prefer + ``COMPILE_OUTPUT_VARIABLE`` and ``RUN_OUTPUT_VARIABLE`` instead. + +``RUN_OUTPUT_VARIABLE `` + Report the output from running the executable in a given variable. + +Other Behavior Settings +^^^^^^^^^^^^^^^^^^^^^^^ + +Set the :variable:`CMAKE_TRY_COMPILE_CONFIGURATION` variable to choose +a build configuration. + +Behavior when Cross Compiling +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ When cross compiling, the executable compiled in the first step -usually cannot be run on the build host. try_run() checks the -CMAKE_CROSSCOMPILING variable to detect whether CMake is in -crosscompiling mode. If that's the case, it will still try to compile +usually cannot be run on the build host. The ``try_run`` command checks +the :variable:`CMAKE_CROSSCOMPILING` variable to detect whether CMake is in +cross-compiling mode. If that is the case, it will still try to compile the executable, but it will not try to run the executable. Instead it will create cache variables which must be filled by the user or by presetting them in some CMake script file to the values the executable would have produced if it had been run on its actual target platform. -These variables are RUN_RESULT_VAR (explanation see above) and if -RUN_OUTPUT_VARIABLE (or OUTPUT_VARIABLE) was used, an additional cache -variable RUN_RESULT_VAR__COMPILE_RESULT_VAR__TRYRUN_OUTPUT.This is -intended to hold stdout and stderr from the executable. - -In order to make cross compiling your project easier, use try_run only -if really required. If you use try_run, use RUN_OUTPUT_VARIABLE (or -OUTPUT_VARIABLE) only if really required. Using them will require -that when crosscompiling, the cache variables will have to be set -manually to the output of the executable. You can also "guard" the -calls to try_run with if(CMAKE_CROSSCOMPILING) and provide an -easy-to-preset alternative for this case. - -Set variable CMAKE_TRY_COMPILE_CONFIGURATION to choose a build -configuration. +These cache entries are: + +```` + Exit code if the executable were to be run on the target platform. + +``__TRYRUN_OUTPUT`` + Output from stdout and stderr if the executable were to be run on + the target platform. This is created only if the + ``RUN_OUTPUT_VARIABLE`` or ``OUTPUT_VARIABLE`` option was used. + +In order to make cross compiling your project easier, use ``try_run`` +only if really required. If you use ``try_run``, use the +``RUN_OUTPUT_VARIABLE`` or ``OUTPUT_VARIABLE`` options only if really +required. Using them will require that when cross-compiling, the cache +variables will have to be set manually to the output of the executable. +You can also "guard" the calls to ``try_run`` with an :command:`if` +block checking the :variable:`CMAKE_CROSSCOMPILING` variable and +provide an easy-to-preset alternative for this case. ----------------------------------------------------------------------- Summary of changes: Help/command/try_compile.rst | 126 +++++++++++++++++++++++++---------------- Help/command/try_run.rst | 128 +++++++++++++++++++++++++++--------------- 2 files changed, 160 insertions(+), 94 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 16:37:02 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 16:37:02 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2606-gf95cfd9 Message-ID: <20150204213702.614D6AAEA5@public.kitware.com> 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 f95cfd91ff382777936cce827596de63718fdbbe (commit) via 977eb5b472d036bfc38abcfdd8eb454a5f606022 (commit) from fb35d8df9d7263cb417fb4037df768fa40a49ed9 (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=f95cfd91ff382777936cce827596de63718fdbbe commit f95cfd91ff382777936cce827596de63718fdbbe Merge: fb35d8d 977eb5b Author: Brad King AuthorDate: Wed Feb 4 16:37:01 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 16:37:01 2015 -0500 Merge topic 'doc-3.2-relnotes' into next 977eb5b4 Help: Revise 3.2 relnotes on unicode http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=977eb5b472d036bfc38abcfdd8eb454a5f606022 commit 977eb5b472d036bfc38abcfdd8eb454a5f606022 Author: Brad King AuthorDate: Wed Feb 4 16:36:45 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 16:36:45 2015 -0500 Help: Revise 3.2 relnotes on unicode diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index fc3c1b3..f683438 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -13,13 +13,14 @@ New Features Syntax ------ -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. +* CMake learned to support unicode characters encoded as UTF-8 + on Windows. This was already supported on platforms whose + system APIs accept UTF-8 encoded strings. + Unicode characters may now be used in CMake code, paths to + source files, configured files such as ``.h.in`` files, and + other files read and written by CMake. Note that because CMake + interoperates with many other tools, there may still be some + limitations when using certain unicode characters. Commands -------- @@ -228,7 +229,6 @@ Deprecated and Removed Features compatible. If files were in a different encoding, including Latin 1, they will need to be converted. - * The implementation of CMake now relies on some C++ compiler features which are not supported by some older compilers. As a result, those old compilers can no longer be used to build CMake itself. CMake continues to be able to ----------------------------------------------------------------------- Summary of changes: Help/release/3.2.0.rst | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 16:43:48 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 16:43:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2611-g37e5f95 Message-ID: <20150204214348.45741A9FAE@public.kitware.com> 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 37e5f9557dc518b10eed9d8ff6b32ae76c78dd92 (commit) via d97ada67e5e2753216d6b2b8adb8275b79eb4f9c (commit) via 2ce10a997401f1d978f56f83f3c0baaa241f12dc (commit) via b23158a63b547abe2ad85f82b4c5109cf3db07d8 (commit) via 7ba8c31e4e0829433a4ee3a852fc6f2b396fcc6e (commit) from f95cfd91ff382777936cce827596de63718fdbbe (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=37e5f9557dc518b10eed9d8ff6b32ae76c78dd92 commit 37e5f9557dc518b10eed9d8ff6b32ae76c78dd92 Merge: f95cfd9 d97ada6 Author: Brad King AuthorDate: Wed Feb 4 16:43:47 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 16:43:47 2015 -0500 Merge topic 'doc-3.2-relnotes' into next d97ada67 Help: Add 3.2 release note for AUTORCC dependency tracking 2ce10a99 Help: Add 3.2 release notes for file(GENERATE) features b23158a6 Help: Organize and revise 3.2 release notes 7ba8c31e Help: Consolidate 3.2 release notes http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d97ada67e5e2753216d6b2b8adb8275b79eb4f9c commit d97ada67e5e2753216d6b2b8adb8275b79eb4f9c Author: Stephen Kelly AuthorDate: Wed Feb 4 21:45:25 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 16:42:15 2015 -0500 Help: Add 3.2 release note for AUTORCC dependency tracking diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 4e1cf47..f683438 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -209,6 +209,10 @@ Other * Microsoft Visual Studio (``MSVC``) for versions 2010 through 2015. * Oracle SolarisStudio (``SunPro``) version 12.4. +* The :ref:`Qt AUTORCC` feature now tracks files listed in ``.qrc`` files + as dependencies. If an input file to the ``rcc`` tool is changed, the tool + is automatically re-run. + New Diagnostics =============== http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2ce10a997401f1d978f56f83f3c0baaa241f12dc commit 2ce10a997401f1d978f56f83f3c0baaa241f12dc Author: Stephen Kelly AuthorDate: Wed Feb 4 21:44:11 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 16:41:59 2015 -0500 Help: Add 3.2 release notes for file(GENERATE) features diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index a04bee5..4e1cf47 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -62,6 +62,13 @@ Commands * The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` option just as :command:`try_compile` already does. +* The :command:`file(GENERATE)` command now generates the output file with + the same permissions as the input file if set. + +* The :command:`file(GENERATE)` command can now generate files which are + used as source files for buildsystem targets. Generated files + automatically get their :prop_sf:`GENERATED` property set to ``TRUE``. + Variables --------- http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b23158a63b547abe2ad85f82b4c5109cf3db07d8 commit b23158a63b547abe2ad85f82b4c5109cf3db07d8 Author: Brad King AuthorDate: Wed Feb 4 13:33:49 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 16:41:14 2015 -0500 Help: Organize and revise 3.2 release notes Add section headers similar to the 3.1 release notes and move each individual bullet into an appropriate section. Revise and consolidate some bullets covering related areas. Co-Author: Stephen Kelly diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 142d408..a04bee5 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -7,131 +7,106 @@ CMake 3.2.0 Release Notes Changes made since CMake 3.1.0 include the following. -* A new :command:`continue` command was added that can be called inside loop - contexts to end the current iteration and start the next one at the top of - the loop block. - -* A :module:`FindGSL` module was introduced to find the - GNU Scientific Library. - -* The :module:`FindIntl` module was added to find the Gettext ``libintl`` - library. - -* A :module:`FindJsonCpp` module was introduced to find the - JsonCpp package. - -* The :command:`ctest_coverage` learned to support Javascript coverage. - -* The :manual:`cmake(1)` ``-E tar`` command now supports creating - ``.xz``-compressed archives with the ``J`` flag. - -* On OS X with Makefile and Ninja generators, when a compiler is found - in ``/usr/bin`` it is now mapped to the corresponding compiler inside - the Xcode application folder, if any. This allows such build - trees to continue to work with their original compiler even when - ``xcode-select`` switches to a different Xcode installation. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on OS X. +New Features +============ -* The :command:`break` command now rejects calls outside of a loop - context or that pass arguments to the command. - See policy :policy:`CMP0055`. +Syntax +------ -* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last - regular expression. +* CMake learned to support unicode characters encoded as UTF-8 + on Windows. This was already supported on platforms whose + system APIs accept UTF-8 encoded strings. + Unicode characters may now be used in CMake code, paths to + source files, configured files such as ``.h.in`` files, and + other files read and written by CMake. Note that because CMake + interoperates with many other tools, there may still be some + limitations when using certain unicode characters. -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--files-from=`` option to specify file names using - lines in a file to overcome command-line length limits. +Commands +-------- -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--mtime=`` option to specify the modification time - recorded in tarball entries. +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``BYPRODUCTS`` option to specify files + produced as side effects of the custom commands. These are not + outputs because they do not always have to be newer than inputs. * The :command:`add_custom_command` and :command:`add_custom_target` commands learned a new ``USES_TERMINAL`` option to request that the command be given direct access to the terminal if possible. The :generator:`Ninja` generator will places such commands in the - ``console`` pool. Build targets provided by CMake that are meant - for individual interactive use, such as ``install``, are now + ``console`` :prop_gbl:`pool `. Build targets provided by CMake + that are meant for individual interactive use, such as ``install``, are now placed in this pool. -* The :module:`CPackRPM` module learned options to set per-component - descriptions and summaries. See the - :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and - :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. +* A new :command:`continue` command was added that can be called inside loop + contexts to end the current iteration and start the next one at the top of + the loop block. -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-install scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. +* The :command:`file(LOCK)` subcommand was created to allow CMake + processes to synchronize through file and directory locks. -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-uninstall scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. +* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, + UTF-32LE, UTF-32BE as ``ENCODING`` options. -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. +* The :command:`install(EXPORT)` command now works with an absolute + ``DESTINATION`` even if targets in the export set are installed + with a destination or :ref:`usage requirements ` + specified relative to the install prefix. The value of the + :variable:`CMAKE_INSTALL_PREFIX` variable is hard-coded into the installed + export file as the base for relative references. + +* The :command:`try_compile` command source file signature now honors + link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated + test project. See policy :policy:`CMP0056`. -* The :command:`ctest_coverage` learned to support Delphi coverage. +* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` + option just as :command:`try_compile` already does. -* On OS X, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The OS X native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. +Variables +--------- -* When CMake is built with OpenSSL on systems other than Windows - and OS X, commands supporting network communication via ``https``, - such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now search for OS-configured certificate - authorities in a few ``/etc`` paths to be trusted automatically. +* The :variable:`CMAKE_MATCH_COUNT` variable was introduced to record the + number of matches made in the last regular expression matched in an + :command:`if` command or a :command:`string` command. -* On Windows, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The Windows native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. +Properties +---------- -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``BYPRODUCTS`` option to specify files - produced as side effects of the custom commands. These are not - outputs because they do not always have to be newer than inputs. +* An :prop_tgt:`ANDROID_API_MIN` target property was introduced to + specify the minimum version to be targeted by the toolchain. + +* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify + additional shader flags to ``.hlsl`` files, for the Visual Studio + generators. + +Modules +------- + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. * The :module:`ExternalData` module learned to support :ref:`Custom Fetch Scripts `. This allows projects to specify custom ``.cmake`` scripts for fetching data objects during the build. -* The :module:`ExternalProject` module ``ExternalProject_Add`` function - learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache - values in the external project without setting them on future builds. - * The :module:`ExternalProject` module learned options to create independent external project step targets that do not depend on the builtin steps. * The :module:`ExternalProject` module :command:`ExternalProject_Add` - command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests - from the main build. - -* The :module:`ExternalProject` module ``ExternalProject_Add`` command - learned an ``UPDATE_DISCONNECTED`` option to avoid automatically - updating the source tree checkout from version control. + command learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to + initialize cache values in the external project without setting + them on future builds. -* The :manual:`Compile Features ` functionality - is now aware of features supported by Microsoft Visual Studio (``MSVC``). - -* The :command:`file(LOCK)` subcommand was created to allow CMake - processes to synchronize through file and directory locks. +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a new ``TEST_EXCLUDE_FROM_MAIN`` option to exclude + tests from the main build. -* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, - UTF-32LE, UTF-32BE as ``ENCODING`` options. +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a new ``UPDATE_DISCONNECTED`` option to avoid + automatically updating the source tree checkout from version control. * The :module:`FindCUDA` module learned about the ``cusolver`` library in CUDA 7.0. @@ -139,6 +114,15 @@ Changes made since CMake 3.1.0 include the following. * The :module:`FindGit` module learned to find the ``git`` command-line tool that comes with GitHub for Windows installed in user home directories. +* A :module:`FindGSL` module was introduced to find the + GNU Scientific Library. + +* A :module:`FindIntl` module was introduced to find the + Gettext ``libintl`` library. + +* A :module:`FindJsonCpp` module was introduced to find the + JsonCpp package. + * The :module:`FindLATEX` module learned to support components. * The :module:`FindMPI` module learned to find MS-MPI on Windows. @@ -154,18 +138,38 @@ Changes made since CMake 3.1.0 include the following. ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to link to one without the other. -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU 4.4 to 4.6 compilers. +* The :module:`WriteCompilerDetectionHeader` module learned to + create a define for portability of the ``cxx_thread_local`` feature. + The define expands to either the C++11 ``thread_local`` keyword, or a + pre-standardization compiler-specific equivalent, as appropriate. -* The :command:`install(EXPORT)` command now works with an absolute - ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. +* The :module:`WriteCompilerDetectionHeader` module learned to create + multiple output files per compiler and per language, instead of creating + one large file. -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compiler version 5.0. +CTest +----- + +* The :command:`ctest_coverage` command learned to support Delphi coverage. +* The :command:`ctest_coverage` command learned to support Javascript coverage. + +CPack +----- + +* The :module:`CPackRPM` module learned options to set per-component + descriptions and summaries. See the + :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and + :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-install scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-uninstall scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. * The :module:`CPackRPM` module learned a new :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to @@ -176,74 +180,88 @@ Changes made since CMake 3.1.0 include the following. :variable:`CPACK_RPM_RELOCATION_PATHS` variable to specify multiple relocation prefixes for a single rpm package. -* The :manual:`Compile Features ` functionality - is now aware of features supported by Oracle SolarisStudio (``SunPro``). +Other +----- -* The :command:`try_compile` command source file signature now honors - link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated - test project. See policy :policy:`CMP0056`. +* The :manual:`cmake(1)` ``-E tar`` command now supports creating + ``.xz``-compressed archives with the ``J`` flag. -* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` - option just as :command:`try_compile` already does. +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--files-from=`` option to specify file names using + lines in a file to overcome command-line length limits. -* The implementation of CMake relies on some C++ compiler features which are - not supported by some older compilers. As a result, those old compilers - can no longer be used to build CMake itself. CMake continues to be able to - generate Makefiles and project files for users of those old compilers - however. The compilers known to no longer be capable of building CMake - are: - - * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. - * GCC 2.95 - superceded by GCC 3 and newer compilers. - * Borland compilers - superceded by other Windows compilers. - * Compaq compilers - superceded by other compilers. - * Comeau compilers - superceded by other compilers. - * SGI compilers - IRIX was dropped as a host platform. - - When building using SolarisStudio 12, the default ``libCStd`` standard - library is not sufficient to build CMake. The SolarisStudio distribution - supports compiler options to use ``STLPort4`` or ``libstdc++``. An - appropriate option to select the standard library is now added - automatically when building CMake with SolarisStudio compilers. +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--mtime=`` option to specify the modification time + recorded in tarball entries. -* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to - specify the minimum version to be targeted by the toolchain. +* The :manual:`Compile Features ` functionality + is now aware of features supported by more compilers, including: -* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify - additional shader flags to ``.hlsl`` files, for the Visual Studio generators. + * Apple Clang (``AppleClang``) for Xcode versions 4.4 though 6.1. + * GNU compiler versions 4.4 through 5.0 on UNIX and Apple (``GNU``). + * Microsoft Visual Studio (``MSVC``) for versions 2010 through 2015. + * Oracle SolarisStudio (``SunPro``) version 12.4. -* The :module:`WriteCompilerDetectionHeader` module learned to - create a define for portability of the cxx_thread_local feature. The define - expands to either the C++11 ``thread_local`` keyword, or a - pre-standardization compiler-specific equivalent, as appropriate. +New Diagnostics +=============== -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. +* The :command:`break` command now rejects calls outside of a loop + context or that pass arguments to the command. + See policy :policy:`CMP0055`. - Files written in the :manual:`cmake-language(7)`, such as - ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be +Deprecated and Removed Features +=============================== + +* Files written in the :manual:`cmake-language(7)`, such as + ``CMakeLists.txt`` or ``*.cmake`` files, are now expected to be encoded as UTF-8. If files are already ASCII, they will be compatible. If files were in a different encoding, including Latin 1, they will need to be converted. - The Visual Studio generators now write solution and project +* The implementation of CMake now relies on some C++ compiler features which + are not supported by some older compilers. As a result, those old compilers + can no longer be used to build CMake itself. CMake continues to be able to + generate Makefiles and project files for users of those old compilers + however. Compilers known to no longer be capable of building CMake are: + + * Visual Studio 6 and 7.0 -- superseded by VisualStudio 7.1 and newer. + * GCC 2.95 -- superseded by GCC 3 and newer compilers. + * Borland compilers -- superseded by other Windows compilers. + * Compaq compilers -- superseded by other compilers. + * SGI compilers -- IRIX was dropped as a host platform. + +Other Changes +============= + +* On Windows and OS X, commands supporting network communication + via ``https``, such as :command:`file(DOWNLOAD)`, + :command:`file(UPLOAD)`, and :command:`ctest_submit`, now support + SSL/TLS even when CMake is not built against OpenSSL. + The Windows or OS X native SSL/TLS implementation is used by default. + OS-configured certificate authorities will be trusted automatically. + + On other platforms, when CMake is built with OpenSSL, these + commands now search for OS-configured certificate authorities + in a few ``/etc`` paths to be trusted automatically. + +* On OS X with Makefile and Ninja generators, when a compiler is found + in ``/usr/bin`` it is now mapped to the corresponding compiler inside + the Xcode application folder, if any. This allows such build + trees to continue to work with their original compiler even when + ``xcode-select`` switches to a different Xcode installation. + +* The Visual Studio generators now write solution and project files in UTF-8 instead of Windows-1252. Windows-1252 supported Latin 1 languages such as those found in North and South America and Western Europe. With UTF-8, additional languages are now supported. -* The :module:`WriteCompilerDetectionHeader` module learned to create - multiple output files per compiler and per language, instead of creating - one large file. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Apple Clang (``AppleClang``). - * The :generator:`Xcode` generator no longer requires a value for the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. It now locates ``xcodebuild`` when needed at build time. + +* When building CMake itself using SolarisStudio 12, the default ``libCStd`` + standard library is not sufficient to build CMake. The SolarisStudio + distribution supports compiler options to use ``STLPort4`` or ``libstdc++``. + An appropriate option to select the standard library is now added + automatically when building CMake with SolarisStudio compilers. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7ba8c31e4e0829433a4ee3a852fc6f2b396fcc6e commit 7ba8c31e4e0829433a4ee3a852fc6f2b396fcc6e Author: Brad King AuthorDate: Wed Feb 4 13:12:12 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 16:40:51 2015 -0500 Help: Consolidate 3.2 release notes Move all development release notes into a new version-specific document: tail -q -n +3 Help/release/dev/* > Help/release/3.2.0.rst git rm -- Help/release/dev/* except the sample topic: git checkout HEAD -- Help/release/dev/0-sample-topic.rst Reference the new document from the release notes index document. Add a title and intro sentence to the new document by hand. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst new file mode 100644 index 0000000..142d408 --- /dev/null +++ b/Help/release/3.2.0.rst @@ -0,0 +1,249 @@ +CMake 3.2.0 Release Notes +************************* + +.. only:: html + + .. contents:: + +Changes made since CMake 3.1.0 include the following. + +* A new :command:`continue` command was added that can be called inside loop + contexts to end the current iteration and start the next one at the top of + the loop block. + +* A :module:`FindGSL` module was introduced to find the + GNU Scientific Library. + +* The :module:`FindIntl` module was added to find the Gettext ``libintl`` + library. + +* A :module:`FindJsonCpp` module was introduced to find the + JsonCpp package. + +* The :command:`ctest_coverage` learned to support Javascript coverage. + +* The :manual:`cmake(1)` ``-E tar`` command now supports creating + ``.xz``-compressed archives with the ``J`` flag. + +* On OS X with Makefile and Ninja generators, when a compiler is found + in ``/usr/bin`` it is now mapped to the corresponding compiler inside + the Xcode application folder, if any. This allows such build + trees to continue to work with their original compiler even when + ``xcode-select`` switches to a different Xcode installation. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compilers on OS X. + +* The :command:`break` command now rejects calls outside of a loop + context or that pass arguments to the command. + See policy :policy:`CMP0055`. + +* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last + regular expression. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--files-from=`` option to specify file names using + lines in a file to overcome command-line length limits. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--mtime=`` option to specify the modification time + recorded in tarball entries. + +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``USES_TERMINAL`` option to request that + the command be given direct access to the terminal if possible. + The :generator:`Ninja` generator will places such commands in the + ``console`` pool. Build targets provided by CMake that are meant + for individual interactive use, such as ``install``, are now + placed in this pool. + +* The :module:`CPackRPM` module learned options to set per-component + descriptions and summaries. See the + :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and + :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-install scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-uninstall scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. + +* The :command:`ctest_coverage` learned to support Delphi coverage. + +* On OS X, commands supporting network communication, such as + :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now support SSL/TLS even when CMake + is not built against OpenSSL. The OS X native SSL/TLS + implementation is used by default. OS-configured certificate + authorities will be trusted automatically. + +* When CMake is built with OpenSSL on systems other than Windows + and OS X, commands supporting network communication via ``https``, + such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now search for OS-configured certificate + authorities in a few ``/etc`` paths to be trusted automatically. + +* On Windows, commands supporting network communication, such as + :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now support SSL/TLS even when CMake + is not built against OpenSSL. The Windows native SSL/TLS + implementation is used by default. OS-configured certificate + authorities will be trusted automatically. + +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``BYPRODUCTS`` option to specify files + produced as side effects of the custom commands. These are not + outputs because they do not always have to be newer than inputs. + +* The :module:`ExternalData` module learned to support + :ref:`Custom Fetch Scripts `. + This allows projects to specify custom ``.cmake`` scripts for + fetching data objects during the build. + +* The :module:`ExternalProject` module ``ExternalProject_Add`` function + learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache + values in the external project without setting them on future builds. + +* The :module:`ExternalProject` module learned options to create + independent external project step targets that do not depend + on the builtin steps. + +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests + from the main build. + +* The :module:`ExternalProject` module ``ExternalProject_Add`` command + learned an ``UPDATE_DISCONNECTED`` option to avoid automatically + updating the source tree checkout from version control. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Microsoft Visual Studio (``MSVC``). + +* The :command:`file(LOCK)` subcommand was created to allow CMake + processes to synchronize through file and directory locks. + +* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, + UTF-32LE, UTF-32BE as ``ENCODING`` options. + +* The :module:`FindCUDA` module learned about the ``cusolver`` + library in CUDA 7.0. + +* The :module:`FindGit` module learned to find the ``git`` command-line tool + that comes with GitHub for Windows installed in user home directories. + +* The :module:`FindLATEX` module learned to support components. + +* The :module:`FindMPI` module learned to find MS-MPI on Windows. + +* The :module:`FindOpenGL` module no longer explicitly searches + for any dependency on X11 libraries with the :module:`FindX11` + module. Such dependencies should not need to be explicit. + Applications using X11 APIs themselves should find and link + to X11 libraries explicitly. + +* The :module:`FindOpenSSL` module now reports ``crypto`` and ``ssl`` + libraries separately in ``OPENSSL_CRYPTO_LIBRARY`` and + ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to + link to one without the other. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU 4.4 to 4.6 compilers. + +* The :command:`install(EXPORT)` command now works with an absolute + ``DESTINATION`` even if targets in the export set are installed + with a destination or usage requirements specified relative to the + install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` + variable is hard-coded into the installed export file as the base + for relative references. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compiler version 5.0. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to + specify a component-specific value to use instead of + :variable:`CPACK_PACKAGING_INSTALL_PREFIX`. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM_RELOCATION_PATHS` variable to + specify multiple relocation prefixes for a single rpm package. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Oracle SolarisStudio (``SunPro``). + +* The :command:`try_compile` command source file signature now honors + link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated + test project. See policy :policy:`CMP0056`. + +* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` + option just as :command:`try_compile` already does. + +* The implementation of CMake relies on some C++ compiler features which are + not supported by some older compilers. As a result, those old compilers + can no longer be used to build CMake itself. CMake continues to be able to + generate Makefiles and project files for users of those old compilers + however. The compilers known to no longer be capable of building CMake + are: + + * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. + * GCC 2.95 - superceded by GCC 3 and newer compilers. + * Borland compilers - superceded by other Windows compilers. + * Compaq compilers - superceded by other compilers. + * Comeau compilers - superceded by other compilers. + * SGI compilers - IRIX was dropped as a host platform. + + When building using SolarisStudio 12, the default ``libCStd`` standard + library is not sufficient to build CMake. The SolarisStudio distribution + supports compiler options to use ``STLPort4`` or ``libstdc++``. An + appropriate option to select the standard library is now added + automatically when building CMake with SolarisStudio compilers. + +* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to + specify the minimum version to be targeted by the toolchain. + +* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify + additional shader flags to ``.hlsl`` files, for the Visual Studio generators. + +* The :module:`WriteCompilerDetectionHeader` module learned to + create a define for portability of the cxx_thread_local feature. The define + expands to either the C++11 ``thread_local`` keyword, or a + pre-standardization compiler-specific equivalent, as appropriate. + +* On Windows, CMake learned to support international characters. + This allows use of characters from multiple (spoken) languages + in CMake code, paths to source files, configured files such as + ``.h.in`` files, and other files read and written by CMake. + Because CMake interoperates with many other tools, there may + still be some limitations when using certain international + characters. + + Files written in the :manual:`cmake-language(7)`, such as + ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be + encoded as UTF-8. If files are already ASCII, they will be + compatible. If files were in a different encoding, including + Latin 1, they will need to be converted. + + The Visual Studio generators now write solution and project + files in UTF-8 instead of Windows-1252. Windows-1252 supported + Latin 1 languages such as those found in North and South America + and Western Europe. With UTF-8, additional languages are now + supported. + +* The :module:`WriteCompilerDetectionHeader` module learned to create + multiple output files per compiler and per language, instead of creating + one large file. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Apple Clang (``AppleClang``). + +* The :generator:`Xcode` generator no longer requires a value for + the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. + It now locates ``xcodebuild`` when needed at build time. diff --git a/Help/release/dev/Apple-GNU-compiler-features.rst b/Help/release/dev/Apple-GNU-compiler-features.rst deleted file mode 100644 index 40c3712..0000000 --- a/Help/release/dev/Apple-GNU-compiler-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -Apple-GNU-compiler-features ---------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on OS X. diff --git a/Help/release/dev/Apple-compiler-selection.rst b/Help/release/dev/Apple-compiler-selection.rst deleted file mode 100644 index 5ff5653..0000000 --- a/Help/release/dev/Apple-compiler-selection.rst +++ /dev/null @@ -1,8 +0,0 @@ -Apple-compiler-selection ------------------------- - -* On OS X with Makefile and Ninja generators, when a compiler is found - in ``/usr/bin`` it is now mapped to the corresponding compiler inside - the Xcode application folder, if any. This allows such build - trees to continue to work with their original compiler even when - ``xcode-select`` switches to a different Xcode installation. diff --git a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst b/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst deleted file mode 100644 index afa0a52..0000000 --- a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst +++ /dev/null @@ -1,6 +0,0 @@ -CTestCoverageCollectGCOV-refinements ------------------------------------- - -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. diff --git a/Help/release/dev/ExternalData-custom-download.rst b/Help/release/dev/ExternalData-custom-download.rst deleted file mode 100644 index c40f4f7..0000000 --- a/Help/release/dev/ExternalData-custom-download.rst +++ /dev/null @@ -1,7 +0,0 @@ -ExternalData-custom-download ----------------------------- - -* The :module:`ExternalData` module learned to support - :ref:`Custom Fetch Scripts `. - This allows projects to specify custom ``.cmake`` scripts for - fetching data objects during the build. diff --git a/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst b/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst deleted file mode 100644 index 1838ab6..0000000 --- a/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_CMAKE_CACHE_DEFAULT_ARGS ----------------------------------------- - -* The :module:`ExternalProject` module ``ExternalProject_Add`` function - learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache - values in the external project without setting them on future builds. diff --git a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst b/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst deleted file mode 100644 index dfbf108..0000000 --- a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_TEST_EXCLUDE_FROM_MAIN --------------------------------------- - -* The :module:`ExternalProject` module :command:`ExternalProject_Add` - command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests - from the main build. diff --git a/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst b/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst deleted file mode 100644 index bed4a89..0000000 --- a/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_UPDATE_DISCONNECTED ------------------------------------ - -* The :module:`ExternalProject` module ``ExternalProject_Add`` command - learned an ``UPDATE_DISCONNECTED`` option to avoid automatically - updating the source tree checkout from version control. diff --git a/Help/release/dev/ExternalProject_independent-step-targets.rst b/Help/release/dev/ExternalProject_independent-step-targets.rst deleted file mode 100644 index 02e8db8..0000000 --- a/Help/release/dev/ExternalProject_independent-step-targets.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_independent-step-targets ----------------------------------------- - -* The :module:`ExternalProject` module learned options to create - independent external project step targets that do not depend - on the builtin steps. diff --git a/Help/release/dev/FindCUDA-cusolver.rst b/Help/release/dev/FindCUDA-cusolver.rst deleted file mode 100644 index 7a61e78..0000000 --- a/Help/release/dev/FindCUDA-cusolver.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindCUDA-cusolver ------------------ - -* The :module:`FindCUDA` module learned about the ``cusolver`` - library in CUDA 7.0. diff --git a/Help/release/dev/FindGit-local-Github.rst b/Help/release/dev/FindGit-local-Github.rst deleted file mode 100644 index 3523e86..0000000 --- a/Help/release/dev/FindGit-local-Github.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindGit-local-Github --------------------- - -* The :module:`FindGit` module learned to find the ``git`` command-line tool - that comes with GitHub for Windows installed in user home directories. diff --git a/Help/release/dev/FindLATEX-components.rst b/Help/release/dev/FindLATEX-components.rst deleted file mode 100644 index d161c1f..0000000 --- a/Help/release/dev/FindLATEX-components.rst +++ /dev/null @@ -1,4 +0,0 @@ -FindLATEX-components --------------------- - -* The :module:`FindLATEX` module learned to support components. diff --git a/Help/release/dev/FindOpenGL-no-X11.rst b/Help/release/dev/FindOpenGL-no-X11.rst deleted file mode 100644 index dacf165..0000000 --- a/Help/release/dev/FindOpenGL-no-X11.rst +++ /dev/null @@ -1,8 +0,0 @@ -FindOpenGL-no-X11 ------------------ - -* The :module:`FindOpenGL` module no longer explicitly searches - for any dependency on X11 libraries with the :module:`FindX11` - module. Such dependencies should not need to be explicit. - Applications using X11 APIs themselves should find and link - to X11 libraries explicitly. diff --git a/Help/release/dev/FindOpenSSL-separate-libs.rst b/Help/release/dev/FindOpenSSL-separate-libs.rst deleted file mode 100644 index 96e3961..0000000 --- a/Help/release/dev/FindOpenSSL-separate-libs.rst +++ /dev/null @@ -1,7 +0,0 @@ -FindOpenSSL-separate-libs -------------------------- - -* The :module:`FindOpenSSL` module now reports ``crypto`` and ``ssl`` - libraries separately in ``OPENSSL_CRYPTO_LIBRARY`` and - ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to - link to one without the other. diff --git a/Help/release/dev/GNU-4.4-compile-features.rst b/Help/release/dev/GNU-4.4-compile-features.rst deleted file mode 100644 index d5c1356..0000000 --- a/Help/release/dev/GNU-4.4-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -GNU-4.4-compile-features ------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU 4.4 to 4.6 compilers. diff --git a/Help/release/dev/SolarisStudio-compile-features.rst b/Help/release/dev/SolarisStudio-compile-features.rst deleted file mode 100644 index 83110cd..0000000 --- a/Help/release/dev/SolarisStudio-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -SolarisStudio-compile-features ------------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Oracle SolarisStudio (``SunPro``). diff --git a/Help/release/dev/WCDH-thread_local.rst b/Help/release/dev/WCDH-thread_local.rst deleted file mode 100644 index 44516a7..0000000 --- a/Help/release/dev/WCDH-thread_local.rst +++ /dev/null @@ -1,7 +0,0 @@ -WriteCompilerDetectionHeader thread_local portability ------------------------------------------------------ - -* The :module:`WriteCompilerDetectionHeader` module learned to - create a define for portability of the cxx_thread_local feature. The define - expands to either the C++11 ``thread_local`` keyword, or a - pre-standardization compiler-specific equivalent, as appropriate. diff --git a/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst b/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst deleted file mode 100644 index a8665da..0000000 --- a/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst +++ /dev/null @@ -1,6 +0,0 @@ -WriteCompilerDetectionHeader-multi-file ---------------------------------------- - -* The :module:`WriteCompilerDetectionHeader` module learned to create - multiple output files per compiler and per language, instead of creating - one large file. diff --git a/Help/release/dev/Xcode-clang-compile-features.rst b/Help/release/dev/Xcode-clang-compile-features.rst deleted file mode 100644 index d93475f..0000000 --- a/Help/release/dev/Xcode-clang-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -Xcode-clang-compile-features ----------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Apple Clang (``AppleClang``). diff --git a/Help/release/dev/add-FindGSL.rst b/Help/release/dev/add-FindGSL.rst deleted file mode 100644 index 47a0a25..0000000 --- a/Help/release/dev/add-FindGSL.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindGSL ------------ - -* A :module:`FindGSL` module was introduced to find the - GNU Scientific Library. diff --git a/Help/release/dev/add-FindIntl.rst b/Help/release/dev/add-FindIntl.rst deleted file mode 100644 index ac048c9..0000000 --- a/Help/release/dev/add-FindIntl.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindIntl ------------- - -* The :module:`FindIntl` module was added to find the Gettext ``libintl`` - library. diff --git a/Help/release/dev/add-FindJsonCpp.rst b/Help/release/dev/add-FindJsonCpp.rst deleted file mode 100644 index 5d1cb18..0000000 --- a/Help/release/dev/add-FindJsonCpp.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindJsonCpp ---------------- - -* A :module:`FindJsonCpp` module was introduced to find the - JsonCpp package. diff --git a/Help/release/dev/add-continue-command.rst b/Help/release/dev/add-continue-command.rst deleted file mode 100644 index 4995a8e..0000000 --- a/Help/release/dev/add-continue-command.rst +++ /dev/null @@ -1,6 +0,0 @@ -add-continue-command --------------------- - -* A new :command:`continue` command was added that can be called inside loop - contexts to end the current iteration and start the next one at the top of - the loop block. diff --git a/Help/release/dev/add-xz-support.rst b/Help/release/dev/add-xz-support.rst deleted file mode 100644 index 9bdf528..0000000 --- a/Help/release/dev/add-xz-support.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-xz-support --------------- - -* The :manual:`cmake(1)` ``-E tar`` command now supports creating - ``.xz``-compressed archives with the ``J`` flag. diff --git a/Help/release/dev/add_javascript_coverage_parser.rst b/Help/release/dev/add_javascript_coverage_parser.rst deleted file mode 100644 index 0d068ee..0000000 --- a/Help/release/dev/add_javascript_coverage_parser.rst +++ /dev/null @@ -1,4 +0,0 @@ -add_javascript_coverage_parser ------------------------------- - -* The :command:`ctest_coverage` learned to support Javascript coverage. diff --git a/Help/release/dev/break-command-strictness.rst b/Help/release/dev/break-command-strictness.rst deleted file mode 100644 index 0723774..0000000 --- a/Help/release/dev/break-command-strictness.rst +++ /dev/null @@ -1,6 +0,0 @@ -break-command-strictness ------------------------- - -* The :command:`break` command now rejects calls outside of a loop - context or that pass arguments to the command. - See policy :policy:`CMP0055`. diff --git a/Help/release/dev/cached-regex-clear-fixed.rst b/Help/release/dev/cached-regex-clear-fixed.rst deleted file mode 100644 index fbf08cc..0000000 --- a/Help/release/dev/cached-regex-clear-fixed.rst +++ /dev/null @@ -1,5 +0,0 @@ -cached-regex-clear-fixed ------------------------- - -* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last - regular expression. diff --git a/Help/release/dev/cmake-E-tar-files-from.rst b/Help/release/dev/cmake-E-tar-files-from.rst deleted file mode 100644 index f6087ff..0000000 --- a/Help/release/dev/cmake-E-tar-files-from.rst +++ /dev/null @@ -1,6 +0,0 @@ -cmake-E-tar-files-from ----------------------- - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--files-from=`` option to specify file names using - lines in a file to overcome command-line length limits. diff --git a/Help/release/dev/cmake-E-tar-mtime.rst b/Help/release/dev/cmake-E-tar-mtime.rst deleted file mode 100644 index 6496577..0000000 --- a/Help/release/dev/cmake-E-tar-mtime.rst +++ /dev/null @@ -1,6 +0,0 @@ -cmake-E-tar-mtime ------------------ - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--mtime=`` option to specify the modification time - recorded in tarball entries. diff --git a/Help/release/dev/console-pool.rst b/Help/release/dev/console-pool.rst deleted file mode 100644 index 1d9bdb8..0000000 --- a/Help/release/dev/console-pool.rst +++ /dev/null @@ -1,10 +0,0 @@ -console-pool ------------- - -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``USES_TERMINAL`` option to request that - the command be given direct access to the terminal if possible. - The :generator:`Ninja` generator will places such commands in the - ``console`` pool. Build targets provided by CMake that are meant - for individual interactive use, such as ``install``, are now - placed in this pool. diff --git a/Help/release/dev/cpack-rpm-component-descriptions.rst b/Help/release/dev/cpack-rpm-component-descriptions.rst deleted file mode 100644 index 769a912..0000000 --- a/Help/release/dev/cpack-rpm-component-descriptions.rst +++ /dev/null @@ -1,7 +0,0 @@ -cpack-rpm-component-descriptions --------------------------------- - -* The :module:`CPackRPM` module learned options to set per-component - descriptions and summaries. See the - :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and - :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. diff --git a/Help/release/dev/cpack-rpm-pre-post-install.rst b/Help/release/dev/cpack-rpm-pre-post-install.rst deleted file mode 100644 index 0909d94..0000000 --- a/Help/release/dev/cpack-rpm-pre-post-install.rst +++ /dev/null @@ -1,12 +0,0 @@ -cpack-rpm-pre-post-install --------------------------- - -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-install scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. - -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-uninstall scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. diff --git a/Help/release/dev/ctest-delphi-coverage.rst b/Help/release/dev/ctest-delphi-coverage.rst deleted file mode 100644 index efa97c9..0000000 --- a/Help/release/dev/ctest-delphi-coverage.rst +++ /dev/null @@ -1,4 +0,0 @@ -ctest-delphi-coverage ---------------------- - -* The :command:`ctest_coverage` learned to support Delphi coverage. diff --git a/Help/release/dev/curl-darwinssl.rst b/Help/release/dev/curl-darwinssl.rst deleted file mode 100644 index 3571bd1..0000000 --- a/Help/release/dev/curl-darwinssl.rst +++ /dev/null @@ -1,9 +0,0 @@ -curl-darwinssl --------------- - -* On OS X, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The OS X native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. diff --git a/Help/release/dev/curl-default-cainfo.rst b/Help/release/dev/curl-default-cainfo.rst deleted file mode 100644 index ed45d36..0000000 --- a/Help/release/dev/curl-default-cainfo.rst +++ /dev/null @@ -1,8 +0,0 @@ -curl-default-cainfo -------------------- - -* When CMake is built with OpenSSL on systems other than Windows - and OS X, commands supporting network communication via ``https``, - such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now search for OS-configured certificate - authorities in a few ``/etc`` paths to be trusted automatically. diff --git a/Help/release/dev/curl-winssl.rst b/Help/release/dev/curl-winssl.rst deleted file mode 100644 index 9a28f4f..0000000 --- a/Help/release/dev/curl-winssl.rst +++ /dev/null @@ -1,9 +0,0 @@ -curl-winssl ------------ - -* On Windows, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The Windows native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. diff --git a/Help/release/dev/custom-command-byproducts.rst b/Help/release/dev/custom-command-byproducts.rst deleted file mode 100644 index dc85fdb..0000000 --- a/Help/release/dev/custom-command-byproducts.rst +++ /dev/null @@ -1,7 +0,0 @@ -custom-command-byproducts -------------------------- - -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``BYPRODUCTS`` option to specify files - produced as side effects of the custom commands. These are not - outputs because they do not always have to be newer than inputs. diff --git a/Help/release/dev/feature-record-msvc.rst b/Help/release/dev/feature-record-msvc.rst deleted file mode 100644 index a8c9fd1..0000000 --- a/Help/release/dev/feature-record-msvc.rst +++ /dev/null @@ -1,5 +0,0 @@ -feature-record-msvc -------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Microsoft Visual Studio (``MSVC``). diff --git a/Help/release/dev/file-LOCK-command.rst b/Help/release/dev/file-LOCK-command.rst deleted file mode 100644 index 4b11e9e..0000000 --- a/Help/release/dev/file-LOCK-command.rst +++ /dev/null @@ -1,5 +0,0 @@ -file-LOCK-command ------------------ - -* The :command:`file(LOCK)` subcommand was created to allow CMake - processes to synchronize through file and directory locks. diff --git a/Help/release/dev/file-strings-utf-16.rst b/Help/release/dev/file-strings-utf-16.rst deleted file mode 100644 index f40b63e..0000000 --- a/Help/release/dev/file-strings-utf-16.rst +++ /dev/null @@ -1,5 +0,0 @@ -file-strings-utf-16 -------------------- - -* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, - UTF-32LE, UTF-32BE as ``ENCODING`` options. diff --git a/Help/release/dev/find-msmpi.rst b/Help/release/dev/find-msmpi.rst deleted file mode 100644 index 6ece5c8..0000000 --- a/Help/release/dev/find-msmpi.rst +++ /dev/null @@ -1,4 +0,0 @@ -find-msmpi ----------- - -* The :module:`FindMPI` module learned to find MS-MPI on Windows. diff --git a/Help/release/dev/install-EXPORT-absolute-prefix.rst b/Help/release/dev/install-EXPORT-absolute-prefix.rst deleted file mode 100644 index 1b2a01c..0000000 --- a/Help/release/dev/install-EXPORT-absolute-prefix.rst +++ /dev/null @@ -1,9 +0,0 @@ -install-EXPORT-absolute-prefix ------------------------------- - -* The :command:`install(EXPORT)` command now works with an absolute - ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. diff --git a/Help/release/dev/record-GNU-5-features.rst b/Help/release/dev/record-GNU-5-features.rst deleted file mode 100644 index 0da9e75..0000000 --- a/Help/release/dev/record-GNU-5-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -record-GNU-5-features ---------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compiler version 5.0. diff --git a/Help/release/dev/rpm_multi_prefix.rst b/Help/release/dev/rpm_multi_prefix.rst deleted file mode 100644 index 0329592..0000000 --- a/Help/release/dev/rpm_multi_prefix.rst +++ /dev/null @@ -1,11 +0,0 @@ -rpm_multi_prefix ----------------- - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to - specify a component-specific value to use instead of - :variable:`CPACK_PACKAGING_INSTALL_PREFIX`. - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM_RELOCATION_PATHS` variable to - specify multiple relocation prefixes for a single rpm package. diff --git a/Help/release/dev/try-run-link-libraries.rst b/Help/release/dev/try-run-link-libraries.rst deleted file mode 100644 index 4f20cbd..0000000 --- a/Help/release/dev/try-run-link-libraries.rst +++ /dev/null @@ -1,5 +0,0 @@ -try-run-link-libraries ----------------------- - -* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` - option just as :command:`try_compile` already does. diff --git a/Help/release/dev/try_compile-link-flags.rst b/Help/release/dev/try_compile-link-flags.rst deleted file mode 100644 index d995e0b..0000000 --- a/Help/release/dev/try_compile-link-flags.rst +++ /dev/null @@ -1,6 +0,0 @@ -try_compile-link-flags ----------------------- - -* The :command:`try_compile` command source file signature now honors - link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated - test project. See policy :policy:`CMP0056`. diff --git a/Help/release/dev/unsupported-compilers.rst b/Help/release/dev/unsupported-compilers.rst deleted file mode 100644 index 1f3e8c1..0000000 --- a/Help/release/dev/unsupported-compilers.rst +++ /dev/null @@ -1,22 +0,0 @@ -unsupported-compilers ---------------------- - -* The implementation of CMake relies on some C++ compiler features which are - not supported by some older compilers. As a result, those old compilers - can no longer be used to build CMake itself. CMake continues to be able to - generate Makefiles and project files for users of those old compilers - however. The compilers known to no longer be capable of building CMake - are: - - * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. - * GCC 2.95 - superceded by GCC 3 and newer compilers. - * Borland compilers - superceded by other Windows compilers. - * Compaq compilers - superceded by other compilers. - * Comeau compilers - superceded by other compilers. - * SGI compilers - IRIX was dropped as a host platform. - - When building using SolarisStudio 12, the default ``libCStd`` standard - library is not sufficient to build CMake. The SolarisStudio distribution - supports compiler options to use ``STLPort4`` or ``libstdc++``. An - appropriate option to select the standard library is now added - automatically when building CMake with SolarisStudio compilers. diff --git a/Help/release/dev/vs-nsight-tegra-min-api.rst b/Help/release/dev/vs-nsight-tegra-min-api.rst deleted file mode 100644 index f8fa056..0000000 --- a/Help/release/dev/vs-nsight-tegra-min-api.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs-nsight-tegra-min-api ------------------------ - -* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to - specify the minimum version to be targeted by the toolchain. diff --git a/Help/release/dev/vs-shader-flags.rst b/Help/release/dev/vs-shader-flags.rst deleted file mode 100644 index 0d3f6cc..0000000 --- a/Help/release/dev/vs-shader-flags.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs-shader-flags ---------------- - -* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify - additional shader flags to ``.hlsl`` files, for the Visual Studio generators. diff --git a/Help/release/dev/windows-utf-8.rst b/Help/release/dev/windows-utf-8.rst deleted file mode 100644 index 64cd616..0000000 --- a/Help/release/dev/windows-utf-8.rst +++ /dev/null @@ -1,22 +0,0 @@ -windows-utf-8 -------------- - -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. - - Files written in the :manual:`cmake-language(7)`, such as - ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be - encoded as UTF-8. If files are already ASCII, they will be - compatible. If files were in a different encoding, including - Latin 1, they will need to be converted. - - The Visual Studio generators now write solution and project - files in UTF-8 instead of Windows-1252. Windows-1252 supported - Latin 1 languages such as those found in North and South America - and Western Europe. With UTF-8, additional languages are now - supported. diff --git a/Help/release/dev/xcode-revise-make-program.rst b/Help/release/dev/xcode-revise-make-program.rst deleted file mode 100644 index f50cf44..0000000 --- a/Help/release/dev/xcode-revise-make-program.rst +++ /dev/null @@ -1,6 +0,0 @@ -xcode-revise-make-program -------------------------- - -* The :generator:`Xcode` generator no longer requires a value for - the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. - It now locates ``xcodebuild`` when needed at build time. diff --git a/Help/release/index.rst b/Help/release/index.rst index abc19b8..990accf 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -13,5 +13,6 @@ Releases .. toctree:: :maxdepth: 1 + 3.2.0 <3.2.0> 3.1.0 <3.1.0> 3.0.0 <3.0.0> ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 4 17:30:51 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 4 Feb 2015 17:30:51 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2613-gd411243 Message-ID: <20150204223051.4D97CAABBB@public.kitware.com> 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 d41124347b64a473eb1a732fb9690a9712474444 (commit) via 0fd9256c91fed57453b298e19be624c70273b101 (commit) from 37e5f9557dc518b10eed9d8ff6b32ae76c78dd92 (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=d41124347b64a473eb1a732fb9690a9712474444 commit d41124347b64a473eb1a732fb9690a9712474444 Merge: 37e5f95 0fd9256 Author: Stephen Kelly AuthorDate: Wed Feb 4 17:30:50 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 17:30:50 2015 -0500 Merge topic 'fix-C-standard-features' into next 0fd9256c Features: Add dialect compile flags only if default is known. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0fd9256c91fed57453b298e19be624c70273b101 commit 0fd9256c91fed57453b298e19be624c70273b101 Author: Stephen Kelly AuthorDate: Wed Feb 4 23:26:11 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 4 23:27:45 2015 +0100 Features: Add dialect compile flags only if default is known. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 298d547..e3bac9e 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2209,7 +2209,7 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, } const char* defaultStd = this->Makefile->GetDefinition("CMAKE_" + lang + "_STANDARD_DEFAULT"); - if (defaultStd && !*defaultStd) + if (!defaultStd || !*defaultStd) { // This compiler has no notion of language standard levels. return; ----------------------------------------------------------------------- Summary of changes: Source/cmLocalGenerator.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 18:27:24 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 18:27:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2615-g467b715 Message-ID: <20150204232724.8D7DEAA374@public.kitware.com> 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 467b7158cb60adca53fbeac2dfe2f5699cba7fb1 (commit) via 9e8ab436e1482b8aadc00951da55fca0e5e485af (commit) from d41124347b64a473eb1a732fb9690a9712474444 (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=467b7158cb60adca53fbeac2dfe2f5699cba7fb1 commit 467b7158cb60adca53fbeac2dfe2f5699cba7fb1 Merge: d411243 9e8ab43 Author: Brad King AuthorDate: Wed Feb 4 18:27:22 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 18:27:22 2015 -0500 Merge topic 'fix-C-standard-features' into next 9e8ab436 fixup! Features: Add dialect compile flags only if default is known. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9e8ab436e1482b8aadc00951da55fca0e5e485af commit 9e8ab436e1482b8aadc00951da55fca0e5e485af Author: Brad King AuthorDate: Wed Feb 4 18:16:46 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 18:22:58 2015 -0500 fixup! Features: Add dialect compile flags only if default is known. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index e3bac9e..400415b 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2276,15 +2276,15 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, std::find(stds.begin(), stds.end(), standard); assert(stdIt != stds.end()); - std::vector::const_iterator defaultStdIt; - if (defaultStd) - { - defaultStdIt = std::find(stds.begin(), stds.end(), defaultStd); - assert(defaultStdIt != stds.end()); - } - else - { - defaultStdIt = stds.end() - 1; + std::vector::const_iterator defaultStdIt = + std::find(stds.begin(), stds.end(), defaultStd); + if (defaultStdIt == stds.end()) + { + std::string e = + "CMAKE_" + lang + "_STANDARD_DEFAULT is set to invalid value '" + + std::string(defaultStd) + "'"; + this->Makefile->IssueMessage(cmake::INTERNAL_ERROR, e); + return; } // Greater or equal because the standards are stored in ----------------------------------------------------------------------- Summary of changes: Source/cmLocalGenerator.cxx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 4 18:40:14 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 4 Feb 2015 18:40:14 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2621-g18e30fb Message-ID: <20150204234015.6C38421F8@public.kitware.com> 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 18e30fbaeb6a2c6a7ce66d8748f68ebaacca667a (commit) via fb3487a9975ed321b48fad5c71dd655d66b68087 (commit) via 6027798a30eae02175ce4ad13e1439f4383b6cd3 (commit) via 9d767810e1e54eb9233854f0dbf1345a0b5be60f (commit) via 72537e4436a17535af5424628adef3b614a61679 (commit) via 82c9d6868b87a964214a468cae816642950e70b6 (commit) from 467b7158cb60adca53fbeac2dfe2f5699cba7fb1 (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=18e30fbaeb6a2c6a7ce66d8748f68ebaacca667a commit 18e30fbaeb6a2c6a7ce66d8748f68ebaacca667a Merge: 467b715 fb3487a Author: Brad King AuthorDate: Wed Feb 4 18:40:13 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 4 18:40:13 2015 -0500 Merge topic 'fix-C-standard-features' into next fb3487a9 Features: Fix C90 feature detection. 6027798a Features: Allow setting standard dialect below the default. 9d767810 Features: Populate CMAKE__STANDARD_DEFAULT only for supported compilers. 72537e44 Features: Add dialect compile flags only if default is known. 82c9d686 AppleClang: Remove redundant UNIX condition. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fb3487a9975ed321b48fad5c71dd655d66b68087 commit fb3487a9975ed321b48fad5c71dd655d66b68087 Author: Stephen Kelly AuthorDate: Tue Feb 3 21:47:45 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 18:38:21 2015 -0500 Features: Fix C90 feature detection. This bug caused c_function_prototypes to not be recorded at configure time when compiling with -std=gnu99 or similar. In the case of feature recording, that was not a problem, because the logic in CMakeDetermineCompileFeatures.cmake currently assumes that a feature present for an earlier standard is present for a later standard. However, the detection strings are also used in WriteCompilerDetectionHeader, so the feature macro has been defined to '0' when using a later language dialect. Fix that by not checking the existence of the __STDC_VERSION__ macro at all when detecting C90 features. diff --git a/Modules/Compiler/AppleClang-C-FeatureTests.cmake b/Modules/Compiler/AppleClang-C-FeatureTests.cmake index 6f3d6a7..e80b526 100644 --- a/Modules/Compiler/AppleClang-C-FeatureTests.cmake +++ b/Modules/Compiler/AppleClang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(AppleClang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __ set(_cmake_feature_test_c_restrict "${AppleClang_C99}") set(_cmake_feature_test_c_variadic_macros "${AppleClang_C99}") -set(AppleClang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(AppleClang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${AppleClang_C90}") diff --git a/Modules/Compiler/Clang-C-FeatureTests.cmake b/Modules/Compiler/Clang-C-FeatureTests.cmake index 2d8673d..99c2252 100644 --- a/Modules/Compiler/Clang-C-FeatureTests.cmake +++ b/Modules/Compiler/Clang-C-FeatureTests.cmake @@ -7,5 +7,5 @@ set(Clang_C99 "${_cmake_oldestSupported} && defined(__STDC_VERSION__) && __STDC_ set(_cmake_feature_test_c_restrict "${Clang_C99}") set(_cmake_feature_test_c_variadic_macros "${Clang_C99}") -set(Clang_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(Clang_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${Clang_C90}") diff --git a/Modules/Compiler/GNU-C-FeatureTests.cmake b/Modules/Compiler/GNU-C-FeatureTests.cmake index d8e456c..b3fe33f 100644 --- a/Modules/Compiler/GNU-C-FeatureTests.cmake +++ b/Modules/Compiler/GNU-C-FeatureTests.cmake @@ -13,5 +13,5 @@ set(GNU44_C99 "(__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSIO set(_cmake_feature_test_c_restrict "${GNU44_C99}") set(_cmake_feature_test_c_variadic_macros "${GNU44_C99}") -set(GNU_C90 "${_cmake_oldestSupported} && !defined(__STDC_VERSION__)") +set(GNU_C90 "${_cmake_oldestSupported}") set(_cmake_feature_test_c_function_prototypes "${GNU_C90}") diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt index 38c44c8..3ba1e0a 100644 --- a/Tests/CompileFeatures/CMakeLists.txt +++ b/Tests/CompileFeatures/CMakeLists.txt @@ -164,6 +164,38 @@ if (CMAKE_C_COMPILE_FEATURES) ) endif() endif() + + add_executable(CompileFeaturesGenex_C genex_test.c) + set_property(TARGET CompileFeaturesGenex_C PROPERTY C_STANDARD 11) + + if (CMAKE_C_COMPILER_ID STREQUAL "GNU") + if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.6) + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + else() + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=0 + ) + endif() + elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + list(APPEND expected_defs + EXPECT_C_STATIC_ASSERT=1 + ) + endif() + + list(APPEND expected_defs + EXPECT_C_FUNCTION_PROTOTYPES=1 + EXPECT_C_RESTRICT=1 + ) + + target_compile_definitions(CompileFeaturesGenex_C PRIVATE + HAVE_C_FUNCTION_PROTOTYPES=$ + HAVE_C_RESTRICT=$ + HAVE_C_STATIC_ASSERT=$ + ${expected_defs} + ) endif() if (CMAKE_CXX_COMPILE_FEATURES) diff --git a/Tests/CompileFeatures/genex_test.c b/Tests/CompileFeatures/genex_test.c new file mode 100644 index 0000000..b1215bd --- /dev/null +++ b/Tests/CompileFeatures/genex_test.c @@ -0,0 +1,38 @@ +#ifndef EXPECT_C_STATIC_ASSERT +# error EXPECT_C_STATIC_ASSERT not defined +#endif +#ifndef EXPECT_C_FUNCTION_PROTOTYPES +# error EXPECT_C_FUNCTION_PROTOTYPES not defined +#endif +#ifndef EXPECT_C_RESTRICT +# error EXPECT_C_RESTRICT not defined +#endif + +#if !EXPECT_C_STATIC_ASSERT +#if EXPECT_C_STATIC_ASSERT +#error "Expect c_static_assert feature" +#endif +#else +#if !EXPECT_C_STATIC_ASSERT +#error "Expect no c_static_assert feature" +#endif +#endif + +#if !EXPECT_C_FUNCTION_PROTOTYPES +# error Expect c_function_prototypes support +#endif + +#if !EXPECT_C_RESTRICT +# if EXPECT_C_RESTRICT +# error Expect c_restrict support +# endif +#else +# if !EXPECT_C_RESTRICT +# error Expect no c_restrict support +# endif +#endif + +int main() +{ + +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt index e70a977..c538280 100644 --- a/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt +++ b/Tests/Module/WriteCompilerDetectionHeader/CMakeLists.txt @@ -84,6 +84,15 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU" add_executable(C_undefined c_undefined.c) set_property(TARGET C_undefined PROPERTY C_STANDARD 90) target_compile_options(C_undefined PRIVATE -Werror=undef) + + add_executable(WriteCompilerDetectionHeader_C main.c) + set_property(TARGET WriteCompilerDetectionHeader_C PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + + add_executable(WriteCompilerDetectionHeader_C_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C_multi PROPERTY C_STANDARD 90) + set_defines(WriteCompilerDetectionHeader_C_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES" "EXPECTED_COMPILER_C_RESTRICT") + target_include_directories(WriteCompilerDetectionHeader_C_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) endif() add_executable(WriteCompilerDetectionHeader main.cpp) @@ -130,3 +139,16 @@ add_executable(multi_files_11 multi_files.cpp) set_property(TARGET multi_files_11 PROPERTY CXX_STANDARD 11) target_include_directories(multi_files_11 PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) set_defines(multi_files_11 "${true_defs}" "${false_defs}") + +if (CMAKE_C_COMPILER_ID STREQUAL "GNU" + OR CMAKE_C_COMPILER_ID STREQUAL "Clang" + OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") + add_executable(WriteCompilerDetectionHeader_C11 main.c) + set_property(TARGET WriteCompilerDetectionHeader_C11 PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11 "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + + add_executable(WriteCompilerDetectionHeader_C11_multi main_multi.c) + set_property(TARGET WriteCompilerDetectionHeader_C11_multi PROPERTY C_STANDARD 11) + set_defines(WriteCompilerDetectionHeader_C11_multi "EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES;EXPECTED_COMPILER_C_RESTRICT" "") + target_include_directories(WriteCompilerDetectionHeader_C11_multi PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/compiler_multi_files) +endif() diff --git a/Tests/Module/WriteCompilerDetectionHeader/main.c b/Tests/Module/WriteCompilerDetectionHeader/main.c new file mode 100644 index 0000000..9023b0f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main.c @@ -0,0 +1,29 @@ + +#include "test_compiler_detection.h" + +#if !defined(TEST_COMPILER_C_FUNCTION_PROTOTYPES) || !TEST_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected TEST_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(TEST_COMPILER_C_RESTRICT) || !TEST_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected TEST_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no TEST_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef TEST_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} diff --git a/Tests/Module/WriteCompilerDetectionHeader/main_multi.c b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c new file mode 100644 index 0000000..6f4573f --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main_multi.c @@ -0,0 +1,29 @@ + +#include "multi_file_compiler_detection.h" + +#if !defined(MULTI_COMPILER_C_FUNCTION_PROTOTYPES) || !MULTI_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected MULTI_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +# error Expected EXPECTED_COMPILER_C_FUNCTION_PROTOTYPES +#endif + +#if !defined(MULTI_COMPILER_C_RESTRICT) || !MULTI_COMPILER_C_RESTRICT +# if EXPECTED_COMPILER_C_RESTRICT +# error Expected MULTI_COMPILER_C_RESTRICT +# endif +#else +# if !EXPECTED_COMPILER_C_RESTRICT +# error Expect no MULTI_COMPILER_C_RESTRICT +# endif +#endif + +#ifdef MULTI_COMPILER_CXX_STATIC_ASSERT +#error Expect no CXX features defined +#endif + +int main() +{ + return 0; +} http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6027798a30eae02175ce4ad13e1439f4383b6cd3 commit 6027798a30eae02175ce4ad13e1439f4383b6cd3 Author: Stephen Kelly AuthorDate: Wed Feb 4 19:14:00 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 18:36:36 2015 -0500 Features: Allow setting standard dialect below the default. If the requested standard dialect is older than the default dialect then we must use a flag because we cannot decay to a newer standard. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 81e37f6..400415b 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2287,7 +2287,21 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, return; } - for ( ; stdIt <= defaultStdIt; ++stdIt) + // Greater or equal because the standards are stored in + // backward chronological order. + if (stdIt >= defaultStdIt) + { + std::string option_flag = + "CMAKE_" + lang + *stdIt + + "_" + type + "_COMPILE_OPTION"; + + const char *opt = + target->GetMakefile()->GetRequiredDefinition(option_flag); + this->AppendFlagEscape(flags, opt); + return; + } + + for ( ; stdIt < defaultStdIt; ++stdIt) { std::string option_flag = "CMAKE_" + lang + *stdIt http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9d767810e1e54eb9233854f0dbf1345a0b5be60f commit 9d767810e1e54eb9233854f0dbf1345a0b5be60f Author: Stephen Kelly AuthorDate: Wed Feb 4 22:04:18 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 18:29:53 2015 -0500 Features: Populate CMAKE__STANDARD_DEFAULT only for supported compilers. If no compiler feature information is known for a given compiler version, do not set a language standard default either. The two settings must be recorded consistently. diff --git a/Modules/Compiler/AppleClang-C.cmake b/Modules/Compiler/AppleClang-C.cmake index 00d2633..10454f6 100644 --- a/Modules/Compiler/AppleClang-C.cmake +++ b/Modules/Compiler/AppleClang-C.cmake @@ -12,7 +12,9 @@ if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11") endif() -set(CMAKE_C_STANDARD_DEFAULT 99) +if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) + set(CMAKE_C_STANDARD_DEFAULT 99) +endif() macro(cmake_record_c_compile_features) macro(_get_appleclang_features std_version list) diff --git a/Modules/Compiler/AppleClang-CXX.cmake b/Modules/Compiler/AppleClang-CXX.cmake index 6d58be3..5194da4 100644 --- a/Modules/Compiler/AppleClang-CXX.cmake +++ b/Modules/Compiler/AppleClang-CXX.cmake @@ -19,7 +19,9 @@ if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.1) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_appleclang_features std_version list) diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake index e07eace..84b2c74 100644 --- a/Modules/Compiler/Clang-CXX.cmake +++ b/Modules/Compiler/Clang-CXX.cmake @@ -31,7 +31,9 @@ elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if(UNIX AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_clang_features std_version list) diff --git a/Modules/Compiler/GNU-C.cmake b/Modules/Compiler/GNU-C.cmake index fa97a94..89704e6 100644 --- a/Modules/Compiler/GNU-C.cmake +++ b/Modules/Compiler/GNU-C.cmake @@ -24,7 +24,7 @@ endif() if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.0) set(CMAKE_C_STANDARD_DEFAULT 11) -else() +elseif(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.4) set(CMAKE_C_STANDARD_DEFAULT 90) endif() diff --git a/Modules/Compiler/GNU-CXX.cmake b/Modules/Compiler/GNU-CXX.cmake index c471daf..86a31e4 100644 --- a/Modules/Compiler/GNU-CXX.cmake +++ b/Modules/Compiler/GNU-CXX.cmake @@ -34,7 +34,9 @@ elseif (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8) set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_gcc_features std_version list) diff --git a/Modules/Compiler/MSVC-CXX.cmake b/Modules/Compiler/MSVC-CXX.cmake index 962aaeb..82ce069 100644 --- a/Modules/Compiler/MSVC-CXX.cmake +++ b/Modules/Compiler/MSVC-CXX.cmake @@ -1,5 +1,8 @@ -# MSVC has no specific language level or flags to change it. -set(CMAKE_CXX_STANDARD_DEFAULT "") + +if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16.0) + # MSVC has no specific language level or flags to change it. + set(CMAKE_CXX_STANDARD_DEFAULT "") +endif() macro(cmake_record_cxx_compile_features) record_compiler_features(CXX "" CMAKE_CXX_COMPILE_FEATURES) diff --git a/Modules/Compiler/SunPro-CXX.cmake b/Modules/Compiler/SunPro-CXX.cmake index cb37713..c7bc734 100644 --- a/Modules/Compiler/SunPro-CXX.cmake +++ b/Modules/Compiler/SunPro-CXX.cmake @@ -37,7 +37,9 @@ if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=c++11") endif() -set(CMAKE_CXX_STANDARD_DEFAULT 98) +if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) + set(CMAKE_CXX_STANDARD_DEFAULT 98) +endif() macro(cmake_record_cxx_compile_features) macro(_get_solaris_studio_features std_version list) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=72537e4436a17535af5424628adef3b614a61679 commit 72537e4436a17535af5424628adef3b614a61679 Author: Stephen Kelly AuthorDate: Wed Feb 4 23:26:11 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 18:28:07 2015 -0500 Features: Add dialect compile flags only if default is known. The CMAKE__STANDARD_DEFAULT variable indicates whether the compiler has any notion of standard levels and that CMake knows about them. If no language standard levels are available, skip all logic to attempt to add a flag for the level. Also fail with an internal error if a bad default value is set. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index af4c950..81e37f6 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2209,7 +2209,7 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, } const char* defaultStd = this->Makefile->GetDefinition("CMAKE_" + lang + "_STANDARD_DEFAULT"); - if (defaultStd && !*defaultStd) + if (!defaultStd || !*defaultStd) { // This compiler has no notion of language standard levels. return; @@ -2276,15 +2276,15 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target, std::find(stds.begin(), stds.end(), standard); assert(stdIt != stds.end()); - std::vector::const_iterator defaultStdIt; - if (defaultStd) + std::vector::const_iterator defaultStdIt = + std::find(stds.begin(), stds.end(), defaultStd); + if (defaultStdIt == stds.end()) { - defaultStdIt = std::find(stds.begin(), stds.end(), defaultStd); - assert(defaultStdIt != stds.end()); - } - else - { - defaultStdIt = stds.end() - 1; + std::string e = + "CMAKE_" + lang + "_STANDARD_DEFAULT is set to invalid value '" + + std::string(defaultStd) + "'"; + this->Makefile->IssueMessage(cmake::INTERNAL_ERROR, e); + return; } for ( ; stdIt <= defaultStdIt; ++stdIt) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=82c9d6868b87a964214a468cae816642950e70b6 commit 82c9d6868b87a964214a468cae816642950e70b6 Author: Stephen Kelly AuthorDate: Wed Feb 4 22:03:49 2015 +0100 Commit: Brad King CommitDate: Wed Feb 4 18:28:06 2015 -0500 AppleClang: Remove redundant UNIX condition. diff --git a/Modules/Compiler/AppleClang-C.cmake b/Modules/Compiler/AppleClang-C.cmake index 16f420f..00d2633 100644 --- a/Modules/Compiler/AppleClang-C.cmake +++ b/Modules/Compiler/AppleClang-C.cmake @@ -20,7 +20,7 @@ macro(cmake_record_c_compile_features) endmacro() set(_result 0) - if (UNIX AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) + if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) _get_appleclang_features(${CMAKE_C11_STANDARD_COMPILE_OPTION} CMAKE_C11_COMPILE_FEATURES) if (_result EQUAL 0) _get_appleclang_features(${CMAKE_C99_STANDARD_COMPILE_OPTION} CMAKE_C99_COMPILE_FEATURES) diff --git a/Modules/Compiler/AppleClang-CXX.cmake b/Modules/Compiler/AppleClang-CXX.cmake index 978c382..6d58be3 100644 --- a/Modules/Compiler/AppleClang-CXX.cmake +++ b/Modules/Compiler/AppleClang-CXX.cmake @@ -27,7 +27,7 @@ macro(cmake_record_cxx_compile_features) endmacro() set(_result 0) - if (UNIX AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0) + if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.0) set(_result 0) if(CMAKE_CXX14_STANDARD_COMPILE_OPTION) _get_appleclang_features(${CMAKE_CXX14_STANDARD_COMPILE_OPTION} CMAKE_CXX14_COMPILE_FEATURES) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Thu Feb 5 00:01:16 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Thu, 5 Feb 2015 00:01:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1010-gebe1f4f Message-ID: <20150205050116.A6A35AABA4@public.kitware.com> 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 ebe1f4f896a18dc09bda431233a5cfeee5b2327b (commit) from eef9a476179dd91c69d30f937e742ea484436fc6 (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=ebe1f4f896a18dc09bda431233a5cfeee5b2327b commit ebe1f4f896a18dc09bda431233a5cfeee5b2327b Author: Kitware Robot AuthorDate: Thu Feb 5 00:01:15 2015 -0500 Commit: Kitware Robot CommitDate: Thu Feb 5 00:01:15 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 8722425..a9b0511 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 20150204) +set(CMake_VERSION_PATCH 20150205) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 08:42:44 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 08:42:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2624-gb901131 Message-ID: <20150205134244.CCB554983@public.kitware.com> 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 b901131640c66afdfc10f0b9d0f8bd3a59976daf (commit) via f5d4c0dbf8e2d5182e458504a3fc882e9b83230b (commit) via 103f8137d247fe790caed9b062e199d119e60392 (commit) from 18e30fbaeb6a2c6a7ce66d8748f68ebaacca667a (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=b901131640c66afdfc10f0b9d0f8bd3a59976daf commit b901131640c66afdfc10f0b9d0f8bd3a59976daf Merge: 18e30fb f5d4c0d Author: Brad King AuthorDate: Thu Feb 5 08:42:42 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 08:42:42 2015 -0500 Merge topic 'doc-3.2-relnotes' into next f5d4c0db fixup! Help: Organize and revise 3.2 release notes 103f8137 Help: Add link target to cmake-language.7 encoding section http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f5d4c0dbf8e2d5182e458504a3fc882e9b83230b commit f5d4c0dbf8e2d5182e458504a3fc882e9b83230b Author: Brad King AuthorDate: Wed Feb 4 18:58:48 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 18:58:48 2015 -0500 fixup! Help: Organize and revise 3.2 release notes diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index f683438..5b12163 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -13,7 +13,8 @@ New Features Syntax ------ -* CMake learned to support unicode characters encoded as UTF-8 +* CMake learned to support unicode characters + :ref:`encoded as UTF-8 ` on Windows. This was already supported on platforms whose system APIs accept UTF-8 encoded strings. Unicode characters may now be used in CMake code, paths to @@ -89,10 +90,6 @@ Properties Modules ------- -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. - * The :module:`ExternalData` module learned to support :ref:`Custom Fetch Scripts `. This allows projects to specify custom ``.cmake`` scripts for @@ -158,8 +155,13 @@ CTest ----- * The :command:`ctest_coverage` command learned to support Delphi coverage. + * The :command:`ctest_coverage` command learned to support Javascript coverage. +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. + CPack ----- http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=103f8137d247fe790caed9b062e199d119e60392 commit 103f8137d247fe790caed9b062e199d119e60392 Author: Brad King AuthorDate: Wed Feb 4 18:58:05 2015 -0500 Commit: Brad King CommitDate: Wed Feb 4 18:58:05 2015 -0500 Help: Add link target to cmake-language.7 encoding section diff --git a/Help/manual/cmake-language.7.rst b/Help/manual/cmake-language.7.rst index 5ec5858..3e0297c 100644 --- a/Help/manual/cmake-language.7.rst +++ b/Help/manual/cmake-language.7.rst @@ -57,6 +57,8 @@ variable. Syntax ====== +.. _`CMake Language Encoding`: + Encoding -------- ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-language.7.rst | 2 ++ Help/release/3.2.0.rst | 12 +++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 08:44:11 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 08:44:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2630-g831d032 Message-ID: <20150205134411.6EDBB514E@public.kitware.com> 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 831d032017740493b3319e18d7cbf627e3f77702 (commit) via d81bbc3fcee81bf0538c139637e0344c9fcad40a (commit) via 0f38d9c2ad53631185da9aa7d0f50b5816272a55 (commit) via 0f580e8e67fd307c21924dd732570937a0db25e2 (commit) via e08a78dc2cf04682010a3d4496b4c454271f194a (commit) via 3a4381b6605f593abc9d9364f5ffa3fc9a209854 (commit) from b901131640c66afdfc10f0b9d0f8bd3a59976daf (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=831d032017740493b3319e18d7cbf627e3f77702 commit 831d032017740493b3319e18d7cbf627e3f77702 Merge: b901131 d81bbc3 Author: Brad King AuthorDate: Thu Feb 5 08:44:09 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 08:44:09 2015 -0500 Merge topic 'doc-3.2-relnotes' into next d81bbc3f Help: Add 3.2 release note for AUTORCC dependency tracking 0f38d9c2 Help: Add 3.2 release notes for file(GENERATE) features 0f580e8e Help: Organize and revise 3.2 release notes e08a78dc Help: Consolidate 3.2 release notes 3a4381b6 Help: Add link target to cmake-language.7 encoding section http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d81bbc3fcee81bf0538c139637e0344c9fcad40a commit d81bbc3fcee81bf0538c139637e0344c9fcad40a Author: Stephen Kelly AuthorDate: Wed Feb 4 21:45:25 2015 +0100 Commit: Brad King CommitDate: Thu Feb 5 08:43:23 2015 -0500 Help: Add 3.2 release note for AUTORCC dependency tracking diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index d1be27e..5b12163 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -211,6 +211,10 @@ Other * Microsoft Visual Studio (``MSVC``) for versions 2010 through 2015. * Oracle SolarisStudio (``SunPro``) version 12.4. +* The :ref:`Qt AUTORCC` feature now tracks files listed in ``.qrc`` files + as dependencies. If an input file to the ``rcc`` tool is changed, the tool + is automatically re-run. + New Diagnostics =============== http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0f38d9c2ad53631185da9aa7d0f50b5816272a55 commit 0f38d9c2ad53631185da9aa7d0f50b5816272a55 Author: Stephen Kelly AuthorDate: Wed Feb 4 21:44:11 2015 +0100 Commit: Brad King CommitDate: Thu Feb 5 08:43:23 2015 -0500 Help: Add 3.2 release notes for file(GENERATE) features diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index c6a8add..d1be27e 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -63,6 +63,13 @@ Commands * The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` option just as :command:`try_compile` already does. +* The :command:`file(GENERATE)` command now generates the output file with + the same permissions as the input file if set. + +* The :command:`file(GENERATE)` command can now generate files which are + used as source files for buildsystem targets. Generated files + automatically get their :prop_sf:`GENERATED` property set to ``TRUE``. + Variables --------- http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0f580e8e67fd307c21924dd732570937a0db25e2 commit 0f580e8e67fd307c21924dd732570937a0db25e2 Author: Brad King AuthorDate: Wed Feb 4 13:33:49 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 08:43:22 2015 -0500 Help: Organize and revise 3.2 release notes Add section headers similar to the 3.1 release notes and move each individual bullet into an appropriate section. Revise and consolidate some bullets covering related areas. Co-Author: Stephen Kelly diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst index 142d408..c6a8add 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.0.rst @@ -7,131 +7,103 @@ CMake 3.2.0 Release Notes Changes made since CMake 3.1.0 include the following. -* A new :command:`continue` command was added that can be called inside loop - contexts to end the current iteration and start the next one at the top of - the loop block. - -* A :module:`FindGSL` module was introduced to find the - GNU Scientific Library. - -* The :module:`FindIntl` module was added to find the Gettext ``libintl`` - library. - -* A :module:`FindJsonCpp` module was introduced to find the - JsonCpp package. - -* The :command:`ctest_coverage` learned to support Javascript coverage. - -* The :manual:`cmake(1)` ``-E tar`` command now supports creating - ``.xz``-compressed archives with the ``J`` flag. - -* On OS X with Makefile and Ninja generators, when a compiler is found - in ``/usr/bin`` it is now mapped to the corresponding compiler inside - the Xcode application folder, if any. This allows such build - trees to continue to work with their original compiler even when - ``xcode-select`` switches to a different Xcode installation. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on OS X. +New Features +============ -* The :command:`break` command now rejects calls outside of a loop - context or that pass arguments to the command. - See policy :policy:`CMP0055`. +Syntax +------ -* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last - regular expression. +* CMake learned to support unicode characters + :ref:`encoded as UTF-8 ` + on Windows. This was already supported on platforms whose + system APIs accept UTF-8 encoded strings. + Unicode characters may now be used in CMake code, paths to + source files, configured files such as ``.h.in`` files, and + other files read and written by CMake. Note that because CMake + interoperates with many other tools, there may still be some + limitations when using certain unicode characters. -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--files-from=`` option to specify file names using - lines in a file to overcome command-line length limits. +Commands +-------- -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--mtime=`` option to specify the modification time - recorded in tarball entries. +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``BYPRODUCTS`` option to specify files + produced as side effects of the custom commands. These are not + outputs because they do not always have to be newer than inputs. * The :command:`add_custom_command` and :command:`add_custom_target` commands learned a new ``USES_TERMINAL`` option to request that the command be given direct access to the terminal if possible. The :generator:`Ninja` generator will places such commands in the - ``console`` pool. Build targets provided by CMake that are meant - for individual interactive use, such as ``install``, are now + ``console`` :prop_gbl:`pool `. Build targets provided by CMake + that are meant for individual interactive use, such as ``install``, are now placed in this pool. -* The :module:`CPackRPM` module learned options to set per-component - descriptions and summaries. See the - :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and - :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. +* A new :command:`continue` command was added that can be called inside loop + contexts to end the current iteration and start the next one at the top of + the loop block. -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-install scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. +* The :command:`file(LOCK)` subcommand was created to allow CMake + processes to synchronize through file and directory locks. -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-uninstall scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. +* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, + UTF-32LE, UTF-32BE as ``ENCODING`` options. -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. +* The :command:`install(EXPORT)` command now works with an absolute + ``DESTINATION`` even if targets in the export set are installed + with a destination or :ref:`usage requirements ` + specified relative to the install prefix. The value of the + :variable:`CMAKE_INSTALL_PREFIX` variable is hard-coded into the installed + export file as the base for relative references. + +* The :command:`try_compile` command source file signature now honors + link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated + test project. See policy :policy:`CMP0056`. -* The :command:`ctest_coverage` learned to support Delphi coverage. +* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` + option just as :command:`try_compile` already does. -* On OS X, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The OS X native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. +Variables +--------- -* When CMake is built with OpenSSL on systems other than Windows - and OS X, commands supporting network communication via ``https``, - such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now search for OS-configured certificate - authorities in a few ``/etc`` paths to be trusted automatically. +* The :variable:`CMAKE_MATCH_COUNT` variable was introduced to record the + number of matches made in the last regular expression matched in an + :command:`if` command or a :command:`string` command. -* On Windows, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The Windows native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. +Properties +---------- -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``BYPRODUCTS`` option to specify files - produced as side effects of the custom commands. These are not - outputs because they do not always have to be newer than inputs. +* An :prop_tgt:`ANDROID_API_MIN` target property was introduced to + specify the minimum version to be targeted by the toolchain. + +* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify + additional shader flags to ``.hlsl`` files, for the Visual Studio + generators. + +Modules +------- * The :module:`ExternalData` module learned to support :ref:`Custom Fetch Scripts `. This allows projects to specify custom ``.cmake`` scripts for fetching data objects during the build. -* The :module:`ExternalProject` module ``ExternalProject_Add`` function - learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache - values in the external project without setting them on future builds. - * The :module:`ExternalProject` module learned options to create independent external project step targets that do not depend on the builtin steps. * The :module:`ExternalProject` module :command:`ExternalProject_Add` - command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests - from the main build. + command learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to + initialize cache values in the external project without setting + them on future builds. -* The :module:`ExternalProject` module ``ExternalProject_Add`` command - learned an ``UPDATE_DISCONNECTED`` option to avoid automatically - updating the source tree checkout from version control. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Microsoft Visual Studio (``MSVC``). - -* The :command:`file(LOCK)` subcommand was created to allow CMake - processes to synchronize through file and directory locks. +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a new ``TEST_EXCLUDE_FROM_MAIN`` option to exclude + tests from the main build. -* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, - UTF-32LE, UTF-32BE as ``ENCODING`` options. +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a new ``UPDATE_DISCONNECTED`` option to avoid + automatically updating the source tree checkout from version control. * The :module:`FindCUDA` module learned about the ``cusolver`` library in CUDA 7.0. @@ -139,6 +111,15 @@ Changes made since CMake 3.1.0 include the following. * The :module:`FindGit` module learned to find the ``git`` command-line tool that comes with GitHub for Windows installed in user home directories. +* A :module:`FindGSL` module was introduced to find the + GNU Scientific Library. + +* A :module:`FindIntl` module was introduced to find the + Gettext ``libintl`` library. + +* A :module:`FindJsonCpp` module was introduced to find the + JsonCpp package. + * The :module:`FindLATEX` module learned to support components. * The :module:`FindMPI` module learned to find MS-MPI on Windows. @@ -154,18 +135,43 @@ Changes made since CMake 3.1.0 include the following. ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to link to one without the other. -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU 4.4 to 4.6 compilers. +* The :module:`WriteCompilerDetectionHeader` module learned to + create a define for portability of the ``cxx_thread_local`` feature. + The define expands to either the C++11 ``thread_local`` keyword, or a + pre-standardization compiler-specific equivalent, as appropriate. -* The :command:`install(EXPORT)` command now works with an absolute - ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. +* The :module:`WriteCompilerDetectionHeader` module learned to create + multiple output files per compiler and per language, instead of creating + one large file. -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compiler version 5.0. +CTest +----- + +* The :command:`ctest_coverage` command learned to support Delphi coverage. + +* The :command:`ctest_coverage` command learned to support Javascript coverage. + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. + +CPack +----- + +* The :module:`CPackRPM` module learned options to set per-component + descriptions and summaries. See the + :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and + :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-install scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-uninstall scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. * The :module:`CPackRPM` module learned a new :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to @@ -176,74 +182,88 @@ Changes made since CMake 3.1.0 include the following. :variable:`CPACK_RPM_RELOCATION_PATHS` variable to specify multiple relocation prefixes for a single rpm package. -* The :manual:`Compile Features ` functionality - is now aware of features supported by Oracle SolarisStudio (``SunPro``). +Other +----- -* The :command:`try_compile` command source file signature now honors - link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated - test project. See policy :policy:`CMP0056`. +* The :manual:`cmake(1)` ``-E tar`` command now supports creating + ``.xz``-compressed archives with the ``J`` flag. -* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` - option just as :command:`try_compile` already does. +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--files-from=`` option to specify file names using + lines in a file to overcome command-line length limits. -* The implementation of CMake relies on some C++ compiler features which are - not supported by some older compilers. As a result, those old compilers - can no longer be used to build CMake itself. CMake continues to be able to - generate Makefiles and project files for users of those old compilers - however. The compilers known to no longer be capable of building CMake - are: - - * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. - * GCC 2.95 - superceded by GCC 3 and newer compilers. - * Borland compilers - superceded by other Windows compilers. - * Compaq compilers - superceded by other compilers. - * Comeau compilers - superceded by other compilers. - * SGI compilers - IRIX was dropped as a host platform. - - When building using SolarisStudio 12, the default ``libCStd`` standard - library is not sufficient to build CMake. The SolarisStudio distribution - supports compiler options to use ``STLPort4`` or ``libstdc++``. An - appropriate option to select the standard library is now added - automatically when building CMake with SolarisStudio compilers. +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--mtime=`` option to specify the modification time + recorded in tarball entries. -* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to - specify the minimum version to be targeted by the toolchain. +* The :manual:`Compile Features ` functionality + is now aware of features supported by more compilers, including: -* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify - additional shader flags to ``.hlsl`` files, for the Visual Studio generators. + * Apple Clang (``AppleClang``) for Xcode versions 4.4 though 6.1. + * GNU compiler versions 4.4 through 5.0 on UNIX and Apple (``GNU``). + * Microsoft Visual Studio (``MSVC``) for versions 2010 through 2015. + * Oracle SolarisStudio (``SunPro``) version 12.4. -* The :module:`WriteCompilerDetectionHeader` module learned to - create a define for portability of the cxx_thread_local feature. The define - expands to either the C++11 ``thread_local`` keyword, or a - pre-standardization compiler-specific equivalent, as appropriate. +New Diagnostics +=============== + +* The :command:`break` command now rejects calls outside of a loop + context or that pass arguments to the command. + See policy :policy:`CMP0055`. -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. +Deprecated and Removed Features +=============================== - Files written in the :manual:`cmake-language(7)`, such as - ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be +* Files written in the :manual:`cmake-language(7)`, such as + ``CMakeLists.txt`` or ``*.cmake`` files, are now expected to be encoded as UTF-8. If files are already ASCII, they will be compatible. If files were in a different encoding, including Latin 1, they will need to be converted. - The Visual Studio generators now write solution and project +* The implementation of CMake now relies on some C++ compiler features which + are not supported by some older compilers. As a result, those old compilers + can no longer be used to build CMake itself. CMake continues to be able to + generate Makefiles and project files for users of those old compilers + however. Compilers known to no longer be capable of building CMake are: + + * Visual Studio 6 and 7.0 -- superseded by VisualStudio 7.1 and newer. + * GCC 2.95 -- superseded by GCC 3 and newer compilers. + * Borland compilers -- superseded by other Windows compilers. + * Compaq compilers -- superseded by other compilers. + * SGI compilers -- IRIX was dropped as a host platform. + +Other Changes +============= + +* On Windows and OS X, commands supporting network communication + via ``https``, such as :command:`file(DOWNLOAD)`, + :command:`file(UPLOAD)`, and :command:`ctest_submit`, now support + SSL/TLS even when CMake is not built against OpenSSL. + The Windows or OS X native SSL/TLS implementation is used by default. + OS-configured certificate authorities will be trusted automatically. + + On other platforms, when CMake is built with OpenSSL, these + commands now search for OS-configured certificate authorities + in a few ``/etc`` paths to be trusted automatically. + +* On OS X with Makefile and Ninja generators, when a compiler is found + in ``/usr/bin`` it is now mapped to the corresponding compiler inside + the Xcode application folder, if any. This allows such build + trees to continue to work with their original compiler even when + ``xcode-select`` switches to a different Xcode installation. + +* The Visual Studio generators now write solution and project files in UTF-8 instead of Windows-1252. Windows-1252 supported Latin 1 languages such as those found in North and South America and Western Europe. With UTF-8, additional languages are now supported. -* The :module:`WriteCompilerDetectionHeader` module learned to create - multiple output files per compiler and per language, instead of creating - one large file. - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Apple Clang (``AppleClang``). - * The :generator:`Xcode` generator no longer requires a value for the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. It now locates ``xcodebuild`` when needed at build time. + +* When building CMake itself using SolarisStudio 12, the default ``libCStd`` + standard library is not sufficient to build CMake. The SolarisStudio + distribution supports compiler options to use ``STLPort4`` or ``libstdc++``. + An appropriate option to select the standard library is now added + automatically when building CMake with SolarisStudio compilers. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e08a78dc2cf04682010a3d4496b4c454271f194a commit e08a78dc2cf04682010a3d4496b4c454271f194a Author: Brad King AuthorDate: Wed Feb 4 13:12:12 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 08:43:22 2015 -0500 Help: Consolidate 3.2 release notes Move all development release notes into a new version-specific document: tail -q -n +3 Help/release/dev/* > Help/release/3.2.0.rst git rm -- Help/release/dev/* except the sample topic: git checkout HEAD -- Help/release/dev/0-sample-topic.rst Reference the new document from the release notes index document. Add a title and intro sentence to the new document by hand. diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.0.rst new file mode 100644 index 0000000..142d408 --- /dev/null +++ b/Help/release/3.2.0.rst @@ -0,0 +1,249 @@ +CMake 3.2.0 Release Notes +************************* + +.. only:: html + + .. contents:: + +Changes made since CMake 3.1.0 include the following. + +* A new :command:`continue` command was added that can be called inside loop + contexts to end the current iteration and start the next one at the top of + the loop block. + +* A :module:`FindGSL` module was introduced to find the + GNU Scientific Library. + +* The :module:`FindIntl` module was added to find the Gettext ``libintl`` + library. + +* A :module:`FindJsonCpp` module was introduced to find the + JsonCpp package. + +* The :command:`ctest_coverage` learned to support Javascript coverage. + +* The :manual:`cmake(1)` ``-E tar`` command now supports creating + ``.xz``-compressed archives with the ``J`` flag. + +* On OS X with Makefile and Ninja generators, when a compiler is found + in ``/usr/bin`` it is now mapped to the corresponding compiler inside + the Xcode application folder, if any. This allows such build + trees to continue to work with their original compiler even when + ``xcode-select`` switches to a different Xcode installation. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compilers on OS X. + +* The :command:`break` command now rejects calls outside of a loop + context or that pass arguments to the command. + See policy :policy:`CMP0055`. + +* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last + regular expression. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--files-from=`` option to specify file names using + lines in a file to overcome command-line length limits. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--mtime=`` option to specify the modification time + recorded in tarball entries. + +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``USES_TERMINAL`` option to request that + the command be given direct access to the terminal if possible. + The :generator:`Ninja` generator will places such commands in the + ``console`` pool. Build targets provided by CMake that are meant + for individual interactive use, such as ``install``, are now + placed in this pool. + +* The :module:`CPackRPM` module learned options to set per-component + descriptions and summaries. See the + :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and + :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-install scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. + +* The :module:`CPackRPM` module learned options to specify + requirements for pre- and post-uninstall scripts. See the + :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and + :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. + +* The :module:`CTestCoverageCollectGCOV` module was introduced as an + alternative to the :command:`ctest_coverage` command for collecting + ``gcov`` results for submission to CDash. + +* The :command:`ctest_coverage` learned to support Delphi coverage. + +* On OS X, commands supporting network communication, such as + :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now support SSL/TLS even when CMake + is not built against OpenSSL. The OS X native SSL/TLS + implementation is used by default. OS-configured certificate + authorities will be trusted automatically. + +* When CMake is built with OpenSSL on systems other than Windows + and OS X, commands supporting network communication via ``https``, + such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now search for OS-configured certificate + authorities in a few ``/etc`` paths to be trusted automatically. + +* On Windows, commands supporting network communication, such as + :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and + :command:`ctest_submit`, now support SSL/TLS even when CMake + is not built against OpenSSL. The Windows native SSL/TLS + implementation is used by default. OS-configured certificate + authorities will be trusted automatically. + +* The :command:`add_custom_command` and :command:`add_custom_target` + commands learned a new ``BYPRODUCTS`` option to specify files + produced as side effects of the custom commands. These are not + outputs because they do not always have to be newer than inputs. + +* The :module:`ExternalData` module learned to support + :ref:`Custom Fetch Scripts `. + This allows projects to specify custom ``.cmake`` scripts for + fetching data objects during the build. + +* The :module:`ExternalProject` module ``ExternalProject_Add`` function + learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache + values in the external project without setting them on future builds. + +* The :module:`ExternalProject` module learned options to create + independent external project step targets that do not depend + on the builtin steps. + +* The :module:`ExternalProject` module :command:`ExternalProject_Add` + command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests + from the main build. + +* The :module:`ExternalProject` module ``ExternalProject_Add`` command + learned an ``UPDATE_DISCONNECTED`` option to avoid automatically + updating the source tree checkout from version control. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Microsoft Visual Studio (``MSVC``). + +* The :command:`file(LOCK)` subcommand was created to allow CMake + processes to synchronize through file and directory locks. + +* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, + UTF-32LE, UTF-32BE as ``ENCODING`` options. + +* The :module:`FindCUDA` module learned about the ``cusolver`` + library in CUDA 7.0. + +* The :module:`FindGit` module learned to find the ``git`` command-line tool + that comes with GitHub for Windows installed in user home directories. + +* The :module:`FindLATEX` module learned to support components. + +* The :module:`FindMPI` module learned to find MS-MPI on Windows. + +* The :module:`FindOpenGL` module no longer explicitly searches + for any dependency on X11 libraries with the :module:`FindX11` + module. Such dependencies should not need to be explicit. + Applications using X11 APIs themselves should find and link + to X11 libraries explicitly. + +* The :module:`FindOpenSSL` module now reports ``crypto`` and ``ssl`` + libraries separately in ``OPENSSL_CRYPTO_LIBRARY`` and + ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to + link to one without the other. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU 4.4 to 4.6 compilers. + +* The :command:`install(EXPORT)` command now works with an absolute + ``DESTINATION`` even if targets in the export set are installed + with a destination or usage requirements specified relative to the + install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` + variable is hard-coded into the installed export file as the base + for relative references. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compiler version 5.0. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to + specify a component-specific value to use instead of + :variable:`CPACK_PACKAGING_INSTALL_PREFIX`. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM_RELOCATION_PATHS` variable to + specify multiple relocation prefixes for a single rpm package. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Oracle SolarisStudio (``SunPro``). + +* The :command:`try_compile` command source file signature now honors + link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated + test project. See policy :policy:`CMP0056`. + +* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` + option just as :command:`try_compile` already does. + +* The implementation of CMake relies on some C++ compiler features which are + not supported by some older compilers. As a result, those old compilers + can no longer be used to build CMake itself. CMake continues to be able to + generate Makefiles and project files for users of those old compilers + however. The compilers known to no longer be capable of building CMake + are: + + * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. + * GCC 2.95 - superceded by GCC 3 and newer compilers. + * Borland compilers - superceded by other Windows compilers. + * Compaq compilers - superceded by other compilers. + * Comeau compilers - superceded by other compilers. + * SGI compilers - IRIX was dropped as a host platform. + + When building using SolarisStudio 12, the default ``libCStd`` standard + library is not sufficient to build CMake. The SolarisStudio distribution + supports compiler options to use ``STLPort4`` or ``libstdc++``. An + appropriate option to select the standard library is now added + automatically when building CMake with SolarisStudio compilers. + +* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to + specify the minimum version to be targeted by the toolchain. + +* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify + additional shader flags to ``.hlsl`` files, for the Visual Studio generators. + +* The :module:`WriteCompilerDetectionHeader` module learned to + create a define for portability of the cxx_thread_local feature. The define + expands to either the C++11 ``thread_local`` keyword, or a + pre-standardization compiler-specific equivalent, as appropriate. + +* On Windows, CMake learned to support international characters. + This allows use of characters from multiple (spoken) languages + in CMake code, paths to source files, configured files such as + ``.h.in`` files, and other files read and written by CMake. + Because CMake interoperates with many other tools, there may + still be some limitations when using certain international + characters. + + Files written in the :manual:`cmake-language(7)`, such as + ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be + encoded as UTF-8. If files are already ASCII, they will be + compatible. If files were in a different encoding, including + Latin 1, they will need to be converted. + + The Visual Studio generators now write solution and project + files in UTF-8 instead of Windows-1252. Windows-1252 supported + Latin 1 languages such as those found in North and South America + and Western Europe. With UTF-8, additional languages are now + supported. + +* The :module:`WriteCompilerDetectionHeader` module learned to create + multiple output files per compiler and per language, instead of creating + one large file. + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Apple Clang (``AppleClang``). + +* The :generator:`Xcode` generator no longer requires a value for + the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. + It now locates ``xcodebuild`` when needed at build time. diff --git a/Help/release/dev/Apple-GNU-compiler-features.rst b/Help/release/dev/Apple-GNU-compiler-features.rst deleted file mode 100644 index 40c3712..0000000 --- a/Help/release/dev/Apple-GNU-compiler-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -Apple-GNU-compiler-features ---------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on OS X. diff --git a/Help/release/dev/Apple-compiler-selection.rst b/Help/release/dev/Apple-compiler-selection.rst deleted file mode 100644 index 5ff5653..0000000 --- a/Help/release/dev/Apple-compiler-selection.rst +++ /dev/null @@ -1,8 +0,0 @@ -Apple-compiler-selection ------------------------- - -* On OS X with Makefile and Ninja generators, when a compiler is found - in ``/usr/bin`` it is now mapped to the corresponding compiler inside - the Xcode application folder, if any. This allows such build - trees to continue to work with their original compiler even when - ``xcode-select`` switches to a different Xcode installation. diff --git a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst b/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst deleted file mode 100644 index afa0a52..0000000 --- a/Help/release/dev/CTestCoverageCollectGCOV-refinements.rst +++ /dev/null @@ -1,6 +0,0 @@ -CTestCoverageCollectGCOV-refinements ------------------------------------- - -* The :module:`CTestCoverageCollectGCOV` module was introduced as an - alternative to the :command:`ctest_coverage` command for collecting - ``gcov`` results for submission to CDash. diff --git a/Help/release/dev/ExternalData-custom-download.rst b/Help/release/dev/ExternalData-custom-download.rst deleted file mode 100644 index c40f4f7..0000000 --- a/Help/release/dev/ExternalData-custom-download.rst +++ /dev/null @@ -1,7 +0,0 @@ -ExternalData-custom-download ----------------------------- - -* The :module:`ExternalData` module learned to support - :ref:`Custom Fetch Scripts `. - This allows projects to specify custom ``.cmake`` scripts for - fetching data objects during the build. diff --git a/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst b/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst deleted file mode 100644 index 1838ab6..0000000 --- a/Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_CMAKE_CACHE_DEFAULT_ARGS ----------------------------------------- - -* The :module:`ExternalProject` module ``ExternalProject_Add`` function - learned a new ``CMAKE_CACHE_DEFAULT_ARGS`` option to initialize cache - values in the external project without setting them on future builds. diff --git a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst b/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst deleted file mode 100644 index dfbf108..0000000 --- a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_TEST_EXCLUDE_FROM_MAIN --------------------------------------- - -* The :module:`ExternalProject` module :command:`ExternalProject_Add` - command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests - from the main build. diff --git a/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst b/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst deleted file mode 100644 index bed4a89..0000000 --- a/Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_UPDATE_DISCONNECTED ------------------------------------ - -* The :module:`ExternalProject` module ``ExternalProject_Add`` command - learned an ``UPDATE_DISCONNECTED`` option to avoid automatically - updating the source tree checkout from version control. diff --git a/Help/release/dev/ExternalProject_independent-step-targets.rst b/Help/release/dev/ExternalProject_independent-step-targets.rst deleted file mode 100644 index 02e8db8..0000000 --- a/Help/release/dev/ExternalProject_independent-step-targets.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject_independent-step-targets ----------------------------------------- - -* The :module:`ExternalProject` module learned options to create - independent external project step targets that do not depend - on the builtin steps. diff --git a/Help/release/dev/FindCUDA-cusolver.rst b/Help/release/dev/FindCUDA-cusolver.rst deleted file mode 100644 index 7a61e78..0000000 --- a/Help/release/dev/FindCUDA-cusolver.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindCUDA-cusolver ------------------ - -* The :module:`FindCUDA` module learned about the ``cusolver`` - library in CUDA 7.0. diff --git a/Help/release/dev/FindGit-local-Github.rst b/Help/release/dev/FindGit-local-Github.rst deleted file mode 100644 index 3523e86..0000000 --- a/Help/release/dev/FindGit-local-Github.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindGit-local-Github --------------------- - -* The :module:`FindGit` module learned to find the ``git`` command-line tool - that comes with GitHub for Windows installed in user home directories. diff --git a/Help/release/dev/FindLATEX-components.rst b/Help/release/dev/FindLATEX-components.rst deleted file mode 100644 index d161c1f..0000000 --- a/Help/release/dev/FindLATEX-components.rst +++ /dev/null @@ -1,4 +0,0 @@ -FindLATEX-components --------------------- - -* The :module:`FindLATEX` module learned to support components. diff --git a/Help/release/dev/FindOpenGL-no-X11.rst b/Help/release/dev/FindOpenGL-no-X11.rst deleted file mode 100644 index dacf165..0000000 --- a/Help/release/dev/FindOpenGL-no-X11.rst +++ /dev/null @@ -1,8 +0,0 @@ -FindOpenGL-no-X11 ------------------ - -* The :module:`FindOpenGL` module no longer explicitly searches - for any dependency on X11 libraries with the :module:`FindX11` - module. Such dependencies should not need to be explicit. - Applications using X11 APIs themselves should find and link - to X11 libraries explicitly. diff --git a/Help/release/dev/FindOpenSSL-separate-libs.rst b/Help/release/dev/FindOpenSSL-separate-libs.rst deleted file mode 100644 index 96e3961..0000000 --- a/Help/release/dev/FindOpenSSL-separate-libs.rst +++ /dev/null @@ -1,7 +0,0 @@ -FindOpenSSL-separate-libs -------------------------- - -* The :module:`FindOpenSSL` module now reports ``crypto`` and ``ssl`` - libraries separately in ``OPENSSL_CRYPTO_LIBRARY`` and - ``OPENSSL_SSL_LIBRARY``, respectively, to allow applications to - link to one without the other. diff --git a/Help/release/dev/GNU-4.4-compile-features.rst b/Help/release/dev/GNU-4.4-compile-features.rst deleted file mode 100644 index d5c1356..0000000 --- a/Help/release/dev/GNU-4.4-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -GNU-4.4-compile-features ------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU 4.4 to 4.6 compilers. diff --git a/Help/release/dev/SolarisStudio-compile-features.rst b/Help/release/dev/SolarisStudio-compile-features.rst deleted file mode 100644 index 83110cd..0000000 --- a/Help/release/dev/SolarisStudio-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -SolarisStudio-compile-features ------------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Oracle SolarisStudio (``SunPro``). diff --git a/Help/release/dev/WCDH-thread_local.rst b/Help/release/dev/WCDH-thread_local.rst deleted file mode 100644 index 44516a7..0000000 --- a/Help/release/dev/WCDH-thread_local.rst +++ /dev/null @@ -1,7 +0,0 @@ -WriteCompilerDetectionHeader thread_local portability ------------------------------------------------------ - -* The :module:`WriteCompilerDetectionHeader` module learned to - create a define for portability of the cxx_thread_local feature. The define - expands to either the C++11 ``thread_local`` keyword, or a - pre-standardization compiler-specific equivalent, as appropriate. diff --git a/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst b/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst deleted file mode 100644 index a8665da..0000000 --- a/Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst +++ /dev/null @@ -1,6 +0,0 @@ -WriteCompilerDetectionHeader-multi-file ---------------------------------------- - -* The :module:`WriteCompilerDetectionHeader` module learned to create - multiple output files per compiler and per language, instead of creating - one large file. diff --git a/Help/release/dev/Xcode-clang-compile-features.rst b/Help/release/dev/Xcode-clang-compile-features.rst deleted file mode 100644 index d93475f..0000000 --- a/Help/release/dev/Xcode-clang-compile-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -Xcode-clang-compile-features ----------------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Apple Clang (``AppleClang``). diff --git a/Help/release/dev/add-FindGSL.rst b/Help/release/dev/add-FindGSL.rst deleted file mode 100644 index 47a0a25..0000000 --- a/Help/release/dev/add-FindGSL.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindGSL ------------ - -* A :module:`FindGSL` module was introduced to find the - GNU Scientific Library. diff --git a/Help/release/dev/add-FindIntl.rst b/Help/release/dev/add-FindIntl.rst deleted file mode 100644 index ac048c9..0000000 --- a/Help/release/dev/add-FindIntl.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindIntl ------------- - -* The :module:`FindIntl` module was added to find the Gettext ``libintl`` - library. diff --git a/Help/release/dev/add-FindJsonCpp.rst b/Help/release/dev/add-FindJsonCpp.rst deleted file mode 100644 index 5d1cb18..0000000 --- a/Help/release/dev/add-FindJsonCpp.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-FindJsonCpp ---------------- - -* A :module:`FindJsonCpp` module was introduced to find the - JsonCpp package. diff --git a/Help/release/dev/add-continue-command.rst b/Help/release/dev/add-continue-command.rst deleted file mode 100644 index 4995a8e..0000000 --- a/Help/release/dev/add-continue-command.rst +++ /dev/null @@ -1,6 +0,0 @@ -add-continue-command --------------------- - -* A new :command:`continue` command was added that can be called inside loop - contexts to end the current iteration and start the next one at the top of - the loop block. diff --git a/Help/release/dev/add-xz-support.rst b/Help/release/dev/add-xz-support.rst deleted file mode 100644 index 9bdf528..0000000 --- a/Help/release/dev/add-xz-support.rst +++ /dev/null @@ -1,5 +0,0 @@ -add-xz-support --------------- - -* The :manual:`cmake(1)` ``-E tar`` command now supports creating - ``.xz``-compressed archives with the ``J`` flag. diff --git a/Help/release/dev/add_javascript_coverage_parser.rst b/Help/release/dev/add_javascript_coverage_parser.rst deleted file mode 100644 index 0d068ee..0000000 --- a/Help/release/dev/add_javascript_coverage_parser.rst +++ /dev/null @@ -1,4 +0,0 @@ -add_javascript_coverage_parser ------------------------------- - -* The :command:`ctest_coverage` learned to support Javascript coverage. diff --git a/Help/release/dev/break-command-strictness.rst b/Help/release/dev/break-command-strictness.rst deleted file mode 100644 index 0723774..0000000 --- a/Help/release/dev/break-command-strictness.rst +++ /dev/null @@ -1,6 +0,0 @@ -break-command-strictness ------------------------- - -* The :command:`break` command now rejects calls outside of a loop - context or that pass arguments to the command. - See policy :policy:`CMP0055`. diff --git a/Help/release/dev/cached-regex-clear-fixed.rst b/Help/release/dev/cached-regex-clear-fixed.rst deleted file mode 100644 index fbf08cc..0000000 --- a/Help/release/dev/cached-regex-clear-fixed.rst +++ /dev/null @@ -1,5 +0,0 @@ -cached-regex-clear-fixed ------------------------- - -* Add :variable:`CMAKE_MATCH_COUNT` for the number of matches made in the last - regular expression. diff --git a/Help/release/dev/cmake-E-tar-files-from.rst b/Help/release/dev/cmake-E-tar-files-from.rst deleted file mode 100644 index f6087ff..0000000 --- a/Help/release/dev/cmake-E-tar-files-from.rst +++ /dev/null @@ -1,6 +0,0 @@ -cmake-E-tar-files-from ----------------------- - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--files-from=`` option to specify file names using - lines in a file to overcome command-line length limits. diff --git a/Help/release/dev/cmake-E-tar-mtime.rst b/Help/release/dev/cmake-E-tar-mtime.rst deleted file mode 100644 index 6496577..0000000 --- a/Help/release/dev/cmake-E-tar-mtime.rst +++ /dev/null @@ -1,6 +0,0 @@ -cmake-E-tar-mtime ------------------ - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--mtime=`` option to specify the modification time - recorded in tarball entries. diff --git a/Help/release/dev/console-pool.rst b/Help/release/dev/console-pool.rst deleted file mode 100644 index 1d9bdb8..0000000 --- a/Help/release/dev/console-pool.rst +++ /dev/null @@ -1,10 +0,0 @@ -console-pool ------------- - -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``USES_TERMINAL`` option to request that - the command be given direct access to the terminal if possible. - The :generator:`Ninja` generator will places such commands in the - ``console`` pool. Build targets provided by CMake that are meant - for individual interactive use, such as ``install``, are now - placed in this pool. diff --git a/Help/release/dev/cpack-rpm-component-descriptions.rst b/Help/release/dev/cpack-rpm-component-descriptions.rst deleted file mode 100644 index 769a912..0000000 --- a/Help/release/dev/cpack-rpm-component-descriptions.rst +++ /dev/null @@ -1,7 +0,0 @@ -cpack-rpm-component-descriptions --------------------------------- - -* The :module:`CPackRPM` module learned options to set per-component - descriptions and summaries. See the - :variable:`CPACK_RPM__PACKAGE_DESCRIPTION` and - :variable:`CPACK_RPM__PACKAGE_SUMMARY` variables. diff --git a/Help/release/dev/cpack-rpm-pre-post-install.rst b/Help/release/dev/cpack-rpm-pre-post-install.rst deleted file mode 100644 index 0909d94..0000000 --- a/Help/release/dev/cpack-rpm-pre-post-install.rst +++ /dev/null @@ -1,12 +0,0 @@ -cpack-rpm-pre-post-install --------------------------- - -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-install scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PRE` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POST` variables. - -* The :module:`CPackRPM` module learned options to specify - requirements for pre- and post-uninstall scripts. See the - :variable:`CPACK_RPM_PACKAGE_REQUIRES_PREUN` and - :variable:`CPACK_RPM_PACKAGE_REQUIRES_POSTUN` variables. diff --git a/Help/release/dev/ctest-delphi-coverage.rst b/Help/release/dev/ctest-delphi-coverage.rst deleted file mode 100644 index efa97c9..0000000 --- a/Help/release/dev/ctest-delphi-coverage.rst +++ /dev/null @@ -1,4 +0,0 @@ -ctest-delphi-coverage ---------------------- - -* The :command:`ctest_coverage` learned to support Delphi coverage. diff --git a/Help/release/dev/curl-darwinssl.rst b/Help/release/dev/curl-darwinssl.rst deleted file mode 100644 index 3571bd1..0000000 --- a/Help/release/dev/curl-darwinssl.rst +++ /dev/null @@ -1,9 +0,0 @@ -curl-darwinssl --------------- - -* On OS X, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The OS X native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. diff --git a/Help/release/dev/curl-default-cainfo.rst b/Help/release/dev/curl-default-cainfo.rst deleted file mode 100644 index ed45d36..0000000 --- a/Help/release/dev/curl-default-cainfo.rst +++ /dev/null @@ -1,8 +0,0 @@ -curl-default-cainfo -------------------- - -* When CMake is built with OpenSSL on systems other than Windows - and OS X, commands supporting network communication via ``https``, - such as :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now search for OS-configured certificate - authorities in a few ``/etc`` paths to be trusted automatically. diff --git a/Help/release/dev/curl-winssl.rst b/Help/release/dev/curl-winssl.rst deleted file mode 100644 index 9a28f4f..0000000 --- a/Help/release/dev/curl-winssl.rst +++ /dev/null @@ -1,9 +0,0 @@ -curl-winssl ------------ - -* On Windows, commands supporting network communication, such as - :command:`file(DOWNLOAD)`, :command:`file(UPLOAD)`, and - :command:`ctest_submit`, now support SSL/TLS even when CMake - is not built against OpenSSL. The Windows native SSL/TLS - implementation is used by default. OS-configured certificate - authorities will be trusted automatically. diff --git a/Help/release/dev/custom-command-byproducts.rst b/Help/release/dev/custom-command-byproducts.rst deleted file mode 100644 index dc85fdb..0000000 --- a/Help/release/dev/custom-command-byproducts.rst +++ /dev/null @@ -1,7 +0,0 @@ -custom-command-byproducts -------------------------- - -* The :command:`add_custom_command` and :command:`add_custom_target` - commands learned a new ``BYPRODUCTS`` option to specify files - produced as side effects of the custom commands. These are not - outputs because they do not always have to be newer than inputs. diff --git a/Help/release/dev/feature-record-msvc.rst b/Help/release/dev/feature-record-msvc.rst deleted file mode 100644 index a8c9fd1..0000000 --- a/Help/release/dev/feature-record-msvc.rst +++ /dev/null @@ -1,5 +0,0 @@ -feature-record-msvc -------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by Microsoft Visual Studio (``MSVC``). diff --git a/Help/release/dev/file-LOCK-command.rst b/Help/release/dev/file-LOCK-command.rst deleted file mode 100644 index 4b11e9e..0000000 --- a/Help/release/dev/file-LOCK-command.rst +++ /dev/null @@ -1,5 +0,0 @@ -file-LOCK-command ------------------ - -* The :command:`file(LOCK)` subcommand was created to allow CMake - processes to synchronize through file and directory locks. diff --git a/Help/release/dev/file-strings-utf-16.rst b/Help/release/dev/file-strings-utf-16.rst deleted file mode 100644 index f40b63e..0000000 --- a/Help/release/dev/file-strings-utf-16.rst +++ /dev/null @@ -1,5 +0,0 @@ -file-strings-utf-16 -------------------- - -* The :command:`file(STRINGS)` now supports UTF-16LE, UTF-16BE, - UTF-32LE, UTF-32BE as ``ENCODING`` options. diff --git a/Help/release/dev/find-msmpi.rst b/Help/release/dev/find-msmpi.rst deleted file mode 100644 index 6ece5c8..0000000 --- a/Help/release/dev/find-msmpi.rst +++ /dev/null @@ -1,4 +0,0 @@ -find-msmpi ----------- - -* The :module:`FindMPI` module learned to find MS-MPI on Windows. diff --git a/Help/release/dev/install-EXPORT-absolute-prefix.rst b/Help/release/dev/install-EXPORT-absolute-prefix.rst deleted file mode 100644 index 1b2a01c..0000000 --- a/Help/release/dev/install-EXPORT-absolute-prefix.rst +++ /dev/null @@ -1,9 +0,0 @@ -install-EXPORT-absolute-prefix ------------------------------- - -* The :command:`install(EXPORT)` command now works with an absolute - ``DESTINATION`` even if targets in the export set are installed - with a destination or usage requirements specified relative to the - install prefix. The value of the :variable:`CMAKE_INSTALL_PREFIX` - variable is hard-coded into the installed export file as the base - for relative references. diff --git a/Help/release/dev/record-GNU-5-features.rst b/Help/release/dev/record-GNU-5-features.rst deleted file mode 100644 index 0da9e75..0000000 --- a/Help/release/dev/record-GNU-5-features.rst +++ /dev/null @@ -1,5 +0,0 @@ -record-GNU-5-features ---------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compiler version 5.0. diff --git a/Help/release/dev/rpm_multi_prefix.rst b/Help/release/dev/rpm_multi_prefix.rst deleted file mode 100644 index 0329592..0000000 --- a/Help/release/dev/rpm_multi_prefix.rst +++ /dev/null @@ -1,11 +0,0 @@ -rpm_multi_prefix ----------------- - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM__PACKAGE_PREFIX` variable to - specify a component-specific value to use instead of - :variable:`CPACK_PACKAGING_INSTALL_PREFIX`. - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM_RELOCATION_PATHS` variable to - specify multiple relocation prefixes for a single rpm package. diff --git a/Help/release/dev/try-run-link-libraries.rst b/Help/release/dev/try-run-link-libraries.rst deleted file mode 100644 index 4f20cbd..0000000 --- a/Help/release/dev/try-run-link-libraries.rst +++ /dev/null @@ -1,5 +0,0 @@ -try-run-link-libraries ----------------------- - -* The :command:`try_run` command learned to honor the ``LINK_LIBRARIES`` - option just as :command:`try_compile` already does. diff --git a/Help/release/dev/try_compile-link-flags.rst b/Help/release/dev/try_compile-link-flags.rst deleted file mode 100644 index d995e0b..0000000 --- a/Help/release/dev/try_compile-link-flags.rst +++ /dev/null @@ -1,6 +0,0 @@ -try_compile-link-flags ----------------------- - -* The :command:`try_compile` command source file signature now honors - link flags (e.g. :variable:`CMAKE_EXE_LINKER_FLAGS`) in the generated - test project. See policy :policy:`CMP0056`. diff --git a/Help/release/dev/unsupported-compilers.rst b/Help/release/dev/unsupported-compilers.rst deleted file mode 100644 index 1f3e8c1..0000000 --- a/Help/release/dev/unsupported-compilers.rst +++ /dev/null @@ -1,22 +0,0 @@ -unsupported-compilers ---------------------- - -* The implementation of CMake relies on some C++ compiler features which are - not supported by some older compilers. As a result, those old compilers - can no longer be used to build CMake itself. CMake continues to be able to - generate Makefiles and project files for users of those old compilers - however. The compilers known to no longer be capable of building CMake - are: - - * MSVC 6 and 7.0 - superceded by VisualStudio 7.1 and newer compilers. - * GCC 2.95 - superceded by GCC 3 and newer compilers. - * Borland compilers - superceded by other Windows compilers. - * Compaq compilers - superceded by other compilers. - * Comeau compilers - superceded by other compilers. - * SGI compilers - IRIX was dropped as a host platform. - - When building using SolarisStudio 12, the default ``libCStd`` standard - library is not sufficient to build CMake. The SolarisStudio distribution - supports compiler options to use ``STLPort4`` or ``libstdc++``. An - appropriate option to select the standard library is now added - automatically when building CMake with SolarisStudio compilers. diff --git a/Help/release/dev/vs-nsight-tegra-min-api.rst b/Help/release/dev/vs-nsight-tegra-min-api.rst deleted file mode 100644 index f8fa056..0000000 --- a/Help/release/dev/vs-nsight-tegra-min-api.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs-nsight-tegra-min-api ------------------------ - -* A :prop_tgt:`ANDROID_API_MIN` target property was introduced to - specify the minimum version to be targeted by the toolchain. diff --git a/Help/release/dev/vs-shader-flags.rst b/Help/release/dev/vs-shader-flags.rst deleted file mode 100644 index 0d3f6cc..0000000 --- a/Help/release/dev/vs-shader-flags.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs-shader-flags ---------------- - -* A :prop_sf:`VS_SHADER_FLAGS` source file property was added to specify - additional shader flags to ``.hlsl`` files, for the Visual Studio generators. diff --git a/Help/release/dev/windows-utf-8.rst b/Help/release/dev/windows-utf-8.rst deleted file mode 100644 index 64cd616..0000000 --- a/Help/release/dev/windows-utf-8.rst +++ /dev/null @@ -1,22 +0,0 @@ -windows-utf-8 -------------- - -* On Windows, CMake learned to support international characters. - This allows use of characters from multiple (spoken) languages - in CMake code, paths to source files, configured files such as - ``.h.in`` files, and other files read and written by CMake. - Because CMake interoperates with many other tools, there may - still be some limitations when using certain international - characters. - - Files written in the :manual:`cmake-language(7)`, such as - ``CMakeLists.txt`` or ``*.cmake`` files, are expected to be - encoded as UTF-8. If files are already ASCII, they will be - compatible. If files were in a different encoding, including - Latin 1, they will need to be converted. - - The Visual Studio generators now write solution and project - files in UTF-8 instead of Windows-1252. Windows-1252 supported - Latin 1 languages such as those found in North and South America - and Western Europe. With UTF-8, additional languages are now - supported. diff --git a/Help/release/dev/xcode-revise-make-program.rst b/Help/release/dev/xcode-revise-make-program.rst deleted file mode 100644 index f50cf44..0000000 --- a/Help/release/dev/xcode-revise-make-program.rst +++ /dev/null @@ -1,6 +0,0 @@ -xcode-revise-make-program -------------------------- - -* The :generator:`Xcode` generator no longer requires a value for - the :variable:`CMAKE_MAKE_PROGRAM` variable to be located up front. - It now locates ``xcodebuild`` when needed at build time. diff --git a/Help/release/index.rst b/Help/release/index.rst index abc19b8..990accf 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -13,5 +13,6 @@ Releases .. toctree:: :maxdepth: 1 + 3.2.0 <3.2.0> 3.1.0 <3.1.0> 3.0.0 <3.0.0> http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3a4381b6605f593abc9d9364f5ffa3fc9a209854 commit 3a4381b6605f593abc9d9364f5ffa3fc9a209854 Author: Brad King AuthorDate: Wed Feb 4 18:58:05 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 08:43:21 2015 -0500 Help: Add link target to cmake-language.7 encoding section diff --git a/Help/manual/cmake-language.7.rst b/Help/manual/cmake-language.7.rst index 5ec5858..3e0297c 100644 --- a/Help/manual/cmake-language.7.rst +++ b/Help/manual/cmake-language.7.rst @@ -57,6 +57,8 @@ variable. Syntax ====== +.. _`CMake Language Encoding`: + Encoding -------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:09:12 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:09:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.1-1012-gf55a2b2 Message-ID: <20150205140912.33630789@public.kitware.com> 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 f55a2b2ac208969fea684664c812a368137aac8d (commit) via 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 (commit) from ebe1f4f896a18dc09bda431233a5cfeee5b2327b (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:09:12 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:09:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.1-2634-gdfb837f Message-ID: <20150205140912.5D53613C9@public.kitware.com> 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 dfb837f667f05c8904fb50d7b132d46c9e8692c0 (commit) via f55a2b2ac208969fea684664c812a368137aac8d (commit) via 618454549067c02ebfaa8b2fe4640e8016e853bd (commit) via ebe1f4f896a18dc09bda431233a5cfeee5b2327b (commit) from 831d032017740493b3319e18d7cbf627e3f77702 (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=dfb837f667f05c8904fb50d7b132d46c9e8692c0 commit dfb837f667f05c8904fb50d7b132d46c9e8692c0 Merge: 6184545 f55a2b2 Author: Brad King AuthorDate: Thu Feb 5 09:08:50 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 09:08:50 2015 -0500 Merge branch 'master' into next http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=618454549067c02ebfaa8b2fe4640e8016e853bd commit 618454549067c02ebfaa8b2fe4640e8016e853bd Merge: 831d032 ebe1f4f Author: Brad King AuthorDate: Thu Feb 5 09:08:21 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 09:08:21 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:09:12 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:09:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.1.1-19-g44100ad Message-ID: <20150205140912.849501D7E@public.kitware.com> 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, release has been updated via 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 (commit) from e6afd9500d0d00855ef0144a1e7c913a8bf4927d (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:13:49 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:13:49 -0500 (EST) Subject: [Cmake-commits] CMake annotated tag, v3.1.2, created. v3.1.2 Message-ID: <20150205141350.86763AA02C@public.kitware.com> 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 annotated tag, v3.1.2 has been created at 469a5fcee6d83124d6ce7428a975aa8d3f8a8c2c (tag) tagging 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 (commit) replaces v3.1.1 tagged by Brad King on Thu Feb 5 09:11:22 2015 -0500 - Log ----------------------------------------------------------------- CMake 3.1.2 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJU03oKAAoJEOyP7zp7+07aBB4QAMNzbPId7Bg4URBspdFwgyx9 8aS8fsy3xIuPg/dum6HBjgN/04cMthJZ5syiy/7sH/ujowX1QCkGE4KTUmXRxUNK Wth34dyZeyS8Djwc6rHuS8z4EPrrtbZpK+c/t0JGOvIzHCjFc+Y3+SGiSBTgCN0L 42OX8lBvaPS+Lf0D47rcC+mvuBIvPuN/96/1i+SRYb6uQNv1ilcQpXZui02k0qfz gNMMVQhzbhOf45h8tT2fn3IjnjeMrPAze+OQamT8Xmpdmr9oXVkQ32itbnHAoMaX dfWZgWuM6U5G8pyPv8vbVgRZ3X/MmfQlecO73yD0vxnZMDHOmYOZe4DzmAA2C+i4 NfZeN3qTVCZNg/igjAKSuq6/+ZEsjHLlD3r+fDH0BZZ0snCR6syikesAu+h/bYi/ 8l1MXYiVWT65MYBhkXWq5g3Ztylxeynr/oLObA2SfmOGYJqSyAL9q3Fb6THrWnkN 0yCXndr9bBocc091/dHDiC9QRLl8sMjGRbzHG/8tFeWxSl7cKvMG+e0Vl8IPZq5f yjZPGdmlvfB/oAX/DD9/gsE8S8PD+giRKdsjijXmSzl00i/nGZnSOuggK1B18ta2 RHAit513/oEOGPK87x7K060Fb79HpAfzRq6w1S7S5XNJNnXUxAtlfukMNKGBd/im f+Oy9QbtRLifVCq5jh/y =6x40 -----END PGP SIGNATURE----- Ben Boeckel (1): install: Fix regression in default configuration selection Bill Hoffman (1): CPack: Fix packaging of source tarballs with symbolic links Brad King (14): Merge branch 'FeatureSummary-fix-doc-typo' into release KWSys Directory: Check opendir return value before using it (#15367) Merge branch 'backport-kwsys-directory-check-opendir' into release Help: Clarify status of link_libraries command Merge branch 'doc-link_libraries-note' into release Merge branch 'OpenSSL_102' into release Normalize OBJECT_DEPENDS paths to match custom commands (#15366) Merge branch 'fix-OBJECT_DEPENDS-after-path-normalization' into release Merge branch 'ctest-update-gmake-error-match' into release Merge branch 'backport-fix-cpack-symlink-create-dir' into release-3.1 Merge branch 'fix-default-install-config' into release-3.1 MSVC: Fix initialization of RelWithDebInfo shared library link flags (#15385) Merge branch 'fix-msvc-linker-flags-typo' into release-3.1 CMake 3.1.2 Christoph Gr?ninger (1): FeatureSummary: Fix bracket in documentation. Guillaume Belz (1): FindOpenSSL: fix detection of OpenSSL 1.0.2 Marco Nolden (1): ctest_build: Update GNU make error message matching (#15379) ----------------------------------------------------------------------- hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:25:11 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:25:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-995-g5c29e88 Message-ID: <20150205142511.C6374A9FB0@public.kitware.com> 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 5c29e8897223928855eb6af4d95b063565f11202 (commit) via ecaee7caca4e3d4528e643736c0620e785e84153 (commit) from f55a2b2ac208969fea684664c812a368137aac8d (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=5c29e8897223928855eb6af4d95b063565f11202 commit 5c29e8897223928855eb6af4d95b063565f11202 Merge: f55a2b2 ecaee7c Author: Brad King AuthorDate: Thu Feb 5 09:25:10 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:25:10 2015 -0500 Merge topic 'cpack-nsis-win64' ecaee7ca CPack: Fix NSIS default 64-bit Windows install directory (#14211) ----------------------------------------------------------------------- Summary of changes: Modules/CPack.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:25:13 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:25:13 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-997-g0ae11b1 Message-ID: <20150205142513.E36D7AAC2F@public.kitware.com> 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 0ae11b1fb0925a172adcc7cc3c9b804e2ece9ba7 (commit) via 219797e4befa19a79d2d94e0b5a2bbe75415606a (commit) from 5c29e8897223928855eb6af4d95b063565f11202 (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=0ae11b1fb0925a172adcc7cc3c9b804e2ece9ba7 commit 0ae11b1fb0925a172adcc7cc3c9b804e2ece9ba7 Merge: 5c29e88 219797e Author: Brad King AuthorDate: Thu Feb 5 09:25:12 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:25:12 2015 -0500 Merge topic 'doc-try_compile' 219797e4 Help: Revise try_compile and try_run documentation (#15358) ----------------------------------------------------------------------- Summary of changes: Help/command/try_compile.rst | 126 +++++++++++++++++++++++++---------------- Help/command/try_run.rst | 128 +++++++++++++++++++++++++++--------------- 2 files changed, 160 insertions(+), 94 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:25:16 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:25:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1003-g9042c87 Message-ID: <20150205142516.2C471AAC70@public.kitware.com> 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 9042c875dcbd0f4b7150e9050b60fb0d40365e45 (commit) via fb3487a9975ed321b48fad5c71dd655d66b68087 (commit) via 6027798a30eae02175ce4ad13e1439f4383b6cd3 (commit) via 9d767810e1e54eb9233854f0dbf1345a0b5be60f (commit) via 72537e4436a17535af5424628adef3b614a61679 (commit) via 82c9d6868b87a964214a468cae816642950e70b6 (commit) from 0ae11b1fb0925a172adcc7cc3c9b804e2ece9ba7 (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=9042c875dcbd0f4b7150e9050b60fb0d40365e45 commit 9042c875dcbd0f4b7150e9050b60fb0d40365e45 Merge: 0ae11b1 fb3487a Author: Brad King AuthorDate: Thu Feb 5 09:25:14 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:25:14 2015 -0500 Merge topic 'fix-C-standard-features' fb3487a9 Features: Fix C90 feature detection. 6027798a Features: Allow setting standard dialect below the default. 9d767810 Features: Populate CMAKE__STANDARD_DEFAULT only for supported compilers. 72537e44 Features: Add dialect compile flags only if default is known. 82c9d686 AppleClang: Remove redundant UNIX condition. ----------------------------------------------------------------------- Summary of changes: Modules/Compiler/AppleClang-C-FeatureTests.cmake | 2 +- Modules/Compiler/AppleClang-C.cmake | 6 ++-- Modules/Compiler/AppleClang-CXX.cmake | 6 ++-- Modules/Compiler/Clang-C-FeatureTests.cmake | 2 +- Modules/Compiler/Clang-CXX.cmake | 4 ++- Modules/Compiler/GNU-C-FeatureTests.cmake | 2 +- Modules/Compiler/GNU-C.cmake | 2 +- Modules/Compiler/GNU-CXX.cmake | 4 ++- Modules/Compiler/MSVC-CXX.cmake | 7 ++-- Modules/Compiler/SunPro-CXX.cmake | 4 ++- Source/cmLocalGenerator.cxx | 30 +++++++++++----- Tests/CompileFeatures/CMakeLists.txt | 32 +++++++++++++++++ Tests/CompileFeatures/genex_test.c | 38 ++++++++++++++++++++ .../WriteCompilerDetectionHeader/CMakeLists.txt | 22 ++++++++++++ Tests/Module/WriteCompilerDetectionHeader/main.c | 29 +++++++++++++++ .../WriteCompilerDetectionHeader/main_multi.c | 29 +++++++++++++++ 16 files changed, 198 insertions(+), 21 deletions(-) create mode 100644 Tests/CompileFeatures/genex_test.c create mode 100644 Tests/Module/WriteCompilerDetectionHeader/main.c create mode 100644 Tests/Module/WriteCompilerDetectionHeader/main_multi.c hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:25:17 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:25:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1006-g02d0318 Message-ID: <20150205142518.01F3BAAC72@public.kitware.com> 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 02d031827d824e15e902b95f833b77ca7379bde4 (commit) via f9839c491ef926b71487345fdcc7054324587168 (commit) via 44d6f3ce0839ba0407dc095d1edc1f30e732b719 (commit) from 9042c875dcbd0f4b7150e9050b60fb0d40365e45 (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=02d031827d824e15e902b95f833b77ca7379bde4 commit 02d031827d824e15e902b95f833b77ca7379bde4 Merge: 9042c87 f9839c4 Author: Brad King AuthorDate: Thu Feb 5 09:25:16 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:25:16 2015 -0500 Merge topic 'update-docs' f9839c49 Help: Document build targets automatically added to console pool. 44d6f3ce Help: Add some cross-linking. ----------------------------------------------------------------------- Summary of changes: Help/command/add_custom_command.rst | 2 +- Help/command/add_custom_target.rst | 2 +- Help/manual/cmake-packages.7.rst | 2 +- Help/prop_gbl/JOB_POOLS.rst | 3 +++ 4 files changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:25:19 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:25:19 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1012-gf9e05ea Message-ID: <20150205142519.D83BCAAC7A@public.kitware.com> 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 f9e05ea0d47eedda997d024f3ce7bf1be4f812d3 (commit) via d81bbc3fcee81bf0538c139637e0344c9fcad40a (commit) via 0f38d9c2ad53631185da9aa7d0f50b5816272a55 (commit) via 0f580e8e67fd307c21924dd732570937a0db25e2 (commit) via e08a78dc2cf04682010a3d4496b4c454271f194a (commit) via 3a4381b6605f593abc9d9364f5ffa3fc9a209854 (commit) from 02d031827d824e15e902b95f833b77ca7379bde4 (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=f9e05ea0d47eedda997d024f3ce7bf1be4f812d3 commit f9e05ea0d47eedda997d024f3ce7bf1be4f812d3 Merge: 02d0318 d81bbc3 Author: Brad King AuthorDate: Thu Feb 5 09:25:18 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:25:18 2015 -0500 Merge topic 'doc-3.2-relnotes' d81bbc3f Help: Add 3.2 release note for AUTORCC dependency tracking 0f38d9c2 Help: Add 3.2 release notes for file(GENERATE) features 0f580e8e Help: Organize and revise 3.2 release notes e08a78dc Help: Consolidate 3.2 release notes 3a4381b6 Help: Add link target to cmake-language.7 encoding section ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-language.7.rst | 2 + Help/release/3.2.0.rst | 280 ++++++++++++++++++++ Help/release/dev/Apple-GNU-compiler-features.rst | 5 - Help/release/dev/Apple-compiler-selection.rst | 8 - .../dev/CTestCoverageCollectGCOV-refinements.rst | 6 - Help/release/dev/ExternalData-custom-download.rst | 7 - .../ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst | 6 - .../dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst | 6 - .../dev/ExternalProject_UPDATE_DISCONNECTED.rst | 6 - .../ExternalProject_independent-step-targets.rst | 6 - Help/release/dev/FindCUDA-cusolver.rst | 5 - Help/release/dev/FindGit-local-Github.rst | 5 - Help/release/dev/FindLATEX-components.rst | 4 - Help/release/dev/FindOpenGL-no-X11.rst | 8 - Help/release/dev/FindOpenSSL-separate-libs.rst | 7 - Help/release/dev/GNU-4.4-compile-features.rst | 5 - .../release/dev/SolarisStudio-compile-features.rst | 5 - Help/release/dev/WCDH-thread_local.rst | 7 - ...riteCompilerDetectionHeader-multi-file-lang.rst | 6 - Help/release/dev/Xcode-clang-compile-features.rst | 5 - Help/release/dev/add-FindGSL.rst | 5 - Help/release/dev/add-FindIntl.rst | 5 - Help/release/dev/add-FindJsonCpp.rst | 5 - Help/release/dev/add-continue-command.rst | 6 - Help/release/dev/add-xz-support.rst | 5 - .../release/dev/add_javascript_coverage_parser.rst | 4 - Help/release/dev/break-command-strictness.rst | 6 - Help/release/dev/cached-regex-clear-fixed.rst | 5 - Help/release/dev/cmake-E-tar-files-from.rst | 6 - Help/release/dev/cmake-E-tar-mtime.rst | 6 - Help/release/dev/console-pool.rst | 10 - .../dev/cpack-rpm-component-descriptions.rst | 7 - Help/release/dev/cpack-rpm-pre-post-install.rst | 12 - Help/release/dev/ctest-delphi-coverage.rst | 4 - Help/release/dev/curl-darwinssl.rst | 9 - Help/release/dev/curl-default-cainfo.rst | 8 - Help/release/dev/curl-winssl.rst | 9 - Help/release/dev/custom-command-byproducts.rst | 7 - Help/release/dev/feature-record-msvc.rst | 5 - Help/release/dev/file-LOCK-command.rst | 5 - Help/release/dev/file-strings-utf-16.rst | 5 - Help/release/dev/find-msmpi.rst | 4 - .../release/dev/install-EXPORT-absolute-prefix.rst | 9 - Help/release/dev/record-GNU-5-features.rst | 5 - Help/release/dev/rpm_multi_prefix.rst | 11 - Help/release/dev/try-run-link-libraries.rst | 5 - Help/release/dev/try_compile-link-flags.rst | 6 - Help/release/dev/unsupported-compilers.rst | 22 -- Help/release/dev/vs-nsight-tegra-min-api.rst | 5 - Help/release/dev/vs-shader-flags.rst | 5 - Help/release/dev/windows-utf-8.rst | 22 -- Help/release/dev/xcode-revise-make-program.rst | 6 - Help/release/index.rst | 1 + 53 files changed, 283 insertions(+), 341 deletions(-) create mode 100644 Help/release/3.2.0.rst delete mode 100644 Help/release/dev/Apple-GNU-compiler-features.rst delete mode 100644 Help/release/dev/Apple-compiler-selection.rst delete mode 100644 Help/release/dev/CTestCoverageCollectGCOV-refinements.rst delete mode 100644 Help/release/dev/ExternalData-custom-download.rst delete mode 100644 Help/release/dev/ExternalProject_CMAKE_CACHE_DEFAULT_ARGS.rst delete mode 100644 Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst delete mode 100644 Help/release/dev/ExternalProject_UPDATE_DISCONNECTED.rst delete mode 100644 Help/release/dev/ExternalProject_independent-step-targets.rst delete mode 100644 Help/release/dev/FindCUDA-cusolver.rst delete mode 100644 Help/release/dev/FindGit-local-Github.rst delete mode 100644 Help/release/dev/FindLATEX-components.rst delete mode 100644 Help/release/dev/FindOpenGL-no-X11.rst delete mode 100644 Help/release/dev/FindOpenSSL-separate-libs.rst delete mode 100644 Help/release/dev/GNU-4.4-compile-features.rst delete mode 100644 Help/release/dev/SolarisStudio-compile-features.rst delete mode 100644 Help/release/dev/WCDH-thread_local.rst delete mode 100644 Help/release/dev/WriteCompilerDetectionHeader-multi-file-lang.rst delete mode 100644 Help/release/dev/Xcode-clang-compile-features.rst delete mode 100644 Help/release/dev/add-FindGSL.rst delete mode 100644 Help/release/dev/add-FindIntl.rst delete mode 100644 Help/release/dev/add-FindJsonCpp.rst delete mode 100644 Help/release/dev/add-continue-command.rst delete mode 100644 Help/release/dev/add-xz-support.rst delete mode 100644 Help/release/dev/add_javascript_coverage_parser.rst delete mode 100644 Help/release/dev/break-command-strictness.rst delete mode 100644 Help/release/dev/cached-regex-clear-fixed.rst delete mode 100644 Help/release/dev/cmake-E-tar-files-from.rst delete mode 100644 Help/release/dev/cmake-E-tar-mtime.rst delete mode 100644 Help/release/dev/console-pool.rst delete mode 100644 Help/release/dev/cpack-rpm-component-descriptions.rst delete mode 100644 Help/release/dev/cpack-rpm-pre-post-install.rst delete mode 100644 Help/release/dev/ctest-delphi-coverage.rst delete mode 100644 Help/release/dev/curl-darwinssl.rst delete mode 100644 Help/release/dev/curl-default-cainfo.rst delete mode 100644 Help/release/dev/curl-winssl.rst delete mode 100644 Help/release/dev/custom-command-byproducts.rst delete mode 100644 Help/release/dev/feature-record-msvc.rst delete mode 100644 Help/release/dev/file-LOCK-command.rst delete mode 100644 Help/release/dev/file-strings-utf-16.rst delete mode 100644 Help/release/dev/find-msmpi.rst delete mode 100644 Help/release/dev/install-EXPORT-absolute-prefix.rst delete mode 100644 Help/release/dev/record-GNU-5-features.rst delete mode 100644 Help/release/dev/rpm_multi_prefix.rst delete mode 100644 Help/release/dev/try-run-link-libraries.rst delete mode 100644 Help/release/dev/try_compile-link-flags.rst delete mode 100644 Help/release/dev/unsupported-compilers.rst delete mode 100644 Help/release/dev/vs-nsight-tegra-min-api.rst delete mode 100644 Help/release/dev/vs-shader-flags.rst delete mode 100644 Help/release/dev/windows-utf-8.rst delete mode 100644 Help/release/dev/xcode-revise-make-program.rst hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:25:37 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:25:37 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-2621-gede8021 Message-ID: <20150205142537.06D52AAC70@public.kitware.com> 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 ede80217e61c49e2d13ffebf9e9b7fb3335ada3f (commit) via f9e05ea0d47eedda997d024f3ce7bf1be4f812d3 (commit) via 02d031827d824e15e902b95f833b77ca7379bde4 (commit) via 9042c875dcbd0f4b7150e9050b60fb0d40365e45 (commit) via 0ae11b1fb0925a172adcc7cc3c9b804e2ece9ba7 (commit) via 5c29e8897223928855eb6af4d95b063565f11202 (commit) from dfb837f667f05c8904fb50d7b132d46c9e8692c0 (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=ede80217e61c49e2d13ffebf9e9b7fb3335ada3f commit ede80217e61c49e2d13ffebf9e9b7fb3335ada3f Merge: dfb837f f9e05ea Author: Brad King AuthorDate: Thu Feb 5 09:25:28 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 09:25:28 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:52:00 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:52:00 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-2623-gfd640be Message-ID: <20150205145200.A4E82AAA0C@public.kitware.com> 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 fd640beba027d3c44bbfcf25e0595f5bd1bafae0 (commit) via af8d1c17e663cf424ce4b5af9351849651bd6fd0 (commit) from ede80217e61c49e2d13ffebf9e9b7fb3335ada3f (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=fd640beba027d3c44bbfcf25e0595f5bd1bafae0 commit fd640beba027d3c44bbfcf25e0595f5bd1bafae0 Merge: ede8021 af8d1c1 Author: Brad King AuthorDate: Thu Feb 5 09:51:59 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:51:59 2015 -0500 Merge topic 'rename-release-notes' into next af8d1c17 Help: Rename 3.x.0 release notes to 3.x http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=af8d1c17e663cf424ce4b5af9351849651bd6fd0 commit af8d1c17e663cf424ce4b5af9351849651bd6fd0 Author: Brad King AuthorDate: Thu Feb 5 09:47:52 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 09:50:56 2015 -0500 Help: Rename 3.x.0 release notes to 3.x In commit v3.0.0-rc1~9 (Help: Rename 3.0 release notes to 3.0.0, 2014-02-19) we anticipated the possibility of bugfix-only release notes. However, in practice we have no release notes for bug fix releases because we do not cover bug fixes in release notes at all, only new features. Instead we've been updating the feature-level release notes document in bug fix releases, treating errors in the document as bugs. It makes more sense to maintain release notes at the feature-release level, so rename the documents accordingly. Also update the document titles and intro text to refer only to feature versions and not bugfix versions. diff --git a/Help/release/3.0.0.rst b/Help/release/3.0.rst similarity index 99% rename from Help/release/3.0.0.rst rename to Help/release/3.0.rst index e92c293..d02f940 100644 --- a/Help/release/3.0.0.rst +++ b/Help/release/3.0.rst @@ -1,11 +1,11 @@ -CMake 3.0.0 Release Notes -************************* +CMake 3.0 Release Notes +*********************** .. only:: html .. contents:: -Changes made since CMake 2.8.12.2 include the following. +Changes made since CMake 2.8.12 include the following. Documentation Changes ===================== diff --git a/Help/release/3.1.0.rst b/Help/release/3.1.rst similarity index 99% rename from Help/release/3.1.0.rst rename to Help/release/3.1.rst index 97a63f9..dca42cd 100644 --- a/Help/release/3.1.0.rst +++ b/Help/release/3.1.rst @@ -1,11 +1,11 @@ -CMake 3.1.0 Release Notes -************************* +CMake 3.1 Release Notes +*********************** .. only:: html .. contents:: -Changes made since CMake 3.0.0 include the following. +Changes made since CMake 3.0 include the following. Documentation Changes ===================== diff --git a/Help/release/3.2.0.rst b/Help/release/3.2.rst similarity index 99% rename from Help/release/3.2.0.rst rename to Help/release/3.2.rst index 5b12163..ddc3d86 100644 --- a/Help/release/3.2.0.rst +++ b/Help/release/3.2.rst @@ -1,11 +1,11 @@ -CMake 3.2.0 Release Notes -************************* +CMake 3.2 Release Notes +*********************** .. only:: html .. contents:: -Changes made since CMake 3.1.0 include the following. +Changes made since CMake 3.1 include the following. New Features ============ diff --git a/Help/release/index.rst b/Help/release/index.rst index 990accf..45d0a69 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -13,6 +13,6 @@ Releases .. toctree:: :maxdepth: 1 - 3.2.0 <3.2.0> - 3.1.0 <3.1.0> - 3.0.0 <3.0.0> + 3.2 <3.2> + 3.1 <3.1> + 3.0 <3.0> ----------------------------------------------------------------------- Summary of changes: Help/release/{3.0.0.rst => 3.0.rst} | 6 +++--- Help/release/{3.1.0.rst => 3.1.rst} | 6 +++--- Help/release/{3.2.0.rst => 3.2.rst} | 6 +++--- Help/release/index.rst | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) rename Help/release/{3.0.0.rst => 3.0.rst} (99%) rename Help/release/{3.1.0.rst => 3.1.rst} (99%) rename Help/release/{3.2.0.rst => 3.2.rst} (99%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:52:06 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:52:06 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1014-g78c4418 Message-ID: <20150205145206.88252AAA45@public.kitware.com> 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 78c4418fa0a08b63a944ac66821e8bd95fdd73e0 (commit) via af8d1c17e663cf424ce4b5af9351849651bd6fd0 (commit) from f9e05ea0d47eedda997d024f3ce7bf1be4f812d3 (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=78c4418fa0a08b63a944ac66821e8bd95fdd73e0 commit 78c4418fa0a08b63a944ac66821e8bd95fdd73e0 Merge: f9e05ea af8d1c1 Author: Brad King AuthorDate: Thu Feb 5 09:52:05 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 09:52:05 2015 -0500 Merge topic 'rename-release-notes' af8d1c17 Help: Rename 3.x.0 release notes to 3.x ----------------------------------------------------------------------- Summary of changes: Help/release/{3.0.0.rst => 3.0.rst} | 6 +++--- Help/release/{3.1.0.rst => 3.1.rst} | 6 +++--- Help/release/{3.2.0.rst => 3.2.rst} | 6 +++--- Help/release/index.rst | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) rename Help/release/{3.0.0.rst => 3.0.rst} (99%) rename Help/release/{3.1.0.rst => 3.1.rst} (99%) rename Help/release/{3.2.0.rst => 3.2.rst} (99%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 09:52:19 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 09:52:19 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-2625-gbbeb310 Message-ID: <20150205145219.BCBCDAAA54@public.kitware.com> 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 bbeb31062cc15744783b3fc303d5ba29f9be67d9 (commit) via 78c4418fa0a08b63a944ac66821e8bd95fdd73e0 (commit) from fd640beba027d3c44bbfcf25e0595f5bd1bafae0 (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=bbeb31062cc15744783b3fc303d5ba29f9be67d9 commit bbeb31062cc15744783b3fc303d5ba29f9be67d9 Merge: fd640be 78c4418 Author: Brad King AuthorDate: Thu Feb 5 09:52:12 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 09:52:12 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From cmake-commits at cmake.org Thu Feb 5 10:05:29 2015 From: cmake-commits at cmake.org (cmake-commits at cmake.org) Date: Thu, 5 Feb 2015 10:05:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1018-g098160d Message-ID: <20150205150529.851F7AAD6D@public.kitware.com> 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 098160d5f2a1aa35d2f14c585dd87cefd8f56f41 (commit) via 9da936e49d5d5eb3b60b2697eb99f2e4ed9809aa (commit) via cb01f1517051b577d571e8fd21d210ef303f56c9 (commit) via 1ac598f53b74009bf161387894796199348747ce (commit) from 78c4418fa0a08b63a944ac66821e8bd95fdd73e0 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Utilities/Release/upload_release.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From cmake-commits at cmake.org Thu Feb 5 10:05:33 2015 From: cmake-commits at cmake.org (cmake-commits at cmake.org) Date: Thu, 5 Feb 2015 10:05:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1019-g15d314c Message-ID: <20150205150533.18750AAD6E@public.kitware.com> 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 discards bbeb31062cc15744783b3fc303d5ba29f9be67d9 (commit) discards fd640beba027d3c44bbfcf25e0595f5bd1bafae0 (commit) discards ede80217e61c49e2d13ffebf9e9b7fb3335ada3f (commit) discards dfb837f667f05c8904fb50d7b132d46c9e8692c0 (commit) discards 618454549067c02ebfaa8b2fe4640e8016e853bd (commit) discards 831d032017740493b3319e18d7cbf627e3f77702 (commit) discards b901131640c66afdfc10f0b9d0f8bd3a59976daf (commit) discards f5d4c0dbf8e2d5182e458504a3fc882e9b83230b (commit) discards 103f8137d247fe790caed9b062e199d119e60392 (commit) discards 18e30fbaeb6a2c6a7ce66d8748f68ebaacca667a (commit) discards 467b7158cb60adca53fbeac2dfe2f5699cba7fb1 (commit) discards 9e8ab436e1482b8aadc00951da55fca0e5e485af (commit) discards d41124347b64a473eb1a732fb9690a9712474444 (commit) discards 0fd9256c91fed57453b298e19be624c70273b101 (commit) discards 37e5f9557dc518b10eed9d8ff6b32ae76c78dd92 (commit) discards d97ada67e5e2753216d6b2b8adb8275b79eb4f9c (commit) discards 2ce10a997401f1d978f56f83f3c0baaa241f12dc (commit) discards b23158a63b547abe2ad85f82b4c5109cf3db07d8 (commit) discards 7ba8c31e4e0829433a4ee3a852fc6f2b396fcc6e (commit) discards f95cfd91ff382777936cce827596de63718fdbbe (commit) discards 977eb5b472d036bfc38abcfdd8eb454a5f606022 (commit) discards fb35d8df9d7263cb417fb4037df768fa40a49ed9 (commit) discards 3a3d9fb5810cd408a232df2fcb86599624eb216b (commit) discards 43cdef5bbde4616bce8be3144d0cdfa005cece03 (commit) discards 572dbfc18ee29474590ca8170074190c074761f5 (commit) discards 20dca828e47efc9d01f6f7ead0a0691a142f3175 (commit) discards cd7e6690f95e3fb6c61bf2c0fdbd12880f55bb66 (commit) discards e49ac7e1faccdbcffa88127a92d7184832fbc383 (commit) discards 5e2569af959073ff3b91a5ee2a5325ad8c854744 (commit) discards 6ed3d551f7caf18b50a4ce6c82323e3cdddd5c62 (commit) discards 415151c383e74402d8922cbc1fc2ed8ee7040f0c (commit) discards 950f8fe104ee7f45fb1cd2a240bc80ede115e6ad (commit) discards 6894b2511b2517091d3383b5a6313467919f1847 (commit) discards 2bbbf99d7bd27844dcf157f72bd05eb7d20ce888 (commit) discards ba1989e5609850771ea4291c85fcd0a0620b3c68 (commit) discards 9122ca6f7ebaf47cb3d1e27859a5b19f7f84940e (commit) discards 3e56e295bc901ff7af64463e2b91cdbcd960d950 (commit) discards 60ed7bbb83e8e585865cfca49cf1f26ea0c58295 (commit) discards a64323966805fe0089763f39c92e75529aeffd13 (commit) discards f54e479a42f74753a9052fe0eb822d407d5f2a76 (commit) discards 12f30fde379d3bfe6c6302c5d50915a413f2c5af (commit) discards 7b53ca2bfc5b2afb722b7438084c1536c31cc789 (commit) discards 294d9ad1248020d3ea8e9c5a04dfd7fb6d89bdcb (commit) discards 1c5fef6fdc772db6d0f603da9eb44831103aa27f (commit) discards a6db7d2d48faf5a7455b2cca6e310e24fed6e85a (commit) discards 8beff487b2f22cb03b78fcc1f6375a63ce04420e (commit) discards 5c23ef334f3c5132f24d96dee23bf1a8430951f3 (commit) discards b7225ddb44bf375df320a3c9096ab8dac965c3a8 (commit) discards 117176317359cbdaa09afad7168f1d6c923c56b5 (commit) discards 9fad1bd5aef1d7c46dff587febd66808781e88ad (commit) discards dc5bd78ae99b4851dbc505ec5a47622c7045ff9e (commit) discards 584ba3fe68d49dcb7d0d4d5d826f883548a24e5d (commit) discards ff758672b69e0992e4bf7a7c9d031b3ce4bb5d20 (commit) discards 8e8031933929b12fac8b167b542526af045a415a (commit) discards 062cb2f5d0c7ab90f04805207bf4bef6469764d3 (commit) discards 0539d927c370a25e09b59e8fb90e382cae13a224 (commit) discards 23fca4c96912b9a4bd012000f2af6851eb0b02a2 (commit) discards 70fd484a81d55b9177b48f460f4d37d12089d0b2 (commit) discards d7b3f1d19326bb0221562d6b4e1006eb40251650 (commit) discards 98e6914a157b219ef6b5b70c3ba699a3402e633f (commit) discards f0e2fdd201e3b7b466efb0710d0cbad317bbc8bd (commit) discards fb828b44ebfd0f9a2c74d16efd15d4cc0716cb60 (commit) discards 2b24a1129330027717429d0a2be1ce7d7bd4202a (commit) discards 4c98de33d71fece4333607225ab030c1c7eee76c (commit) discards 951b4a382df85ca097859fdfb81bb3a6b886a0b9 (commit) discards 143e6f73a66c7d942c428269c39b6b994d67aa3b (commit) discards e53a6242b570d8dbaeef136a5683f2138860f213 (commit) discards 4da6ab0834bac654df245e87ff832afafe8d29f2 (commit) discards 59a2f4390a0866d719c9c5a03aba28089cfd6d37 (commit) discards d4e0eee7698f4edda7f91bb7a8d0f5589feea7fd (commit) discards 01cd4d7da617553f3f0322c1ab6bb2304e652855 (commit) discards dd8fccdc0f0e64c45f7098da497262454678721f (commit) discards 569a549c79b6d8bd349727ad274881f15cdef7c2 (commit) discards 95935743d9fbad24925ca9f96b5090786caa3cde (commit) discards e2daec33c651b05933c1b2af000349a9c89e982c (commit) discards f52c5a45dd025d8c30c7505e36b03226e3e0a43a (commit) discards 86c4b287dcaec066926c5a637a090857659f6f93 (commit) discards b08ceba40b1c6e3276155c21aa6517f5934be688 (commit) discards 5076bed36e119e91b303f328bf6f5e18d3957b8f (commit) discards e0ca5c27ed79a417523904c9571f199439a45b3b (commit) discards b3362a20f5eabd0f373154332612907e5aa1f48a (commit) discards d23ac474f4eecc9b2df70a6205299927253e42fe (commit) discards aa26ab1623e5b412167dbb7e45f065cf78cd148f (commit) discards e19b6e6bc235a94290eb574043488876197fce1a (commit) discards 942da844ab9c47660a7353980a52932c37f40ac9 (commit) discards 12992551e8100fe99d47e71445af53c2cc06e445 (commit) discards 0a278bea71a2927874c95d44710424b87bf7a72d (commit) discards dc6c46b115f19ac02db22d072c07da2df423cd36 (commit) discards a3892efa66657d873c3bf46ddb9fea0db287508a (commit) discards 3b12ad4612252eae973f1490328ef916b3cb1fc5 (commit) discards 2d55dfd99c3613f0ba915fe958dac77e7b8b997b (commit) discards f6c9f327a3903ec8f7f2b3e301cc97e012472d94 (commit) discards b54ed1b543f429180945adaabebd5a9f35028391 (commit) discards ecc6b91f96be110aed26e2030b599817639d2106 (commit) discards 9c0c1ad7924eb773671b605ae3df83b440d3dece (commit) discards 83b9ceed00b610060a12818150cdf3b4be7c42c0 (commit) discards 9f66c5ec71327920974cbb146459852343469e40 (commit) discards 2982298c9ce6cbd7402cc7a189c3382b1743ea51 (commit) discards 52b89b09713f03fcf81202a5065b2bf146e42cb2 (commit) discards faeef8432b3bcf7623846de2b1715de3b2acdb13 (commit) discards 8037aa78c90c3a356a15efe102b1ee7cfcba3d34 (commit) discards 35165bdcdac5a6450b8123a9eaf925f94ad90448 (commit) discards d283f43620dc720d7fbac6095464f9b59c606911 (commit) discards ddc640dc0c8be52607d79328ce68d13aa2625ecc (commit) discards 8a0fca5f026b7c0a42564cc666a182784890b807 (commit) discards fc681b4a0e88f65a7875f70a287511f402f307a0 (commit) discards 9eaeba8f0bcff213de7a42eebe1c9a46ffe78e65 (commit) discards f3f323044344e250f9235ed820f3b28c5b2b3dde (commit) discards d9a5a1f7e5bdb5960d153a00595a237e4f69e97b (commit) discards 1e10b57a9c49cdace423970d14514b3462ce61f4 (commit) discards fcfce76d09ba7d5337ed8e198b9998d7d2f6f5fc (commit) discards 2596f95e7338ab22695fed24c26157de5ad76f2d (commit) discards 8157b25c9bc92c415f486bb6107d8592571a4954 (commit) discards e61e74513542c2d0a6229b6b4bb4b014a6032de5 (commit) discards 190bc8ed4589ee89c3405f8e44c2f7e9fe2ed2de (commit) discards befffb975434b159e82b6c750ede0762a1951672 (commit) discards 01bbd07b7c6ae9709dd874e93a96ba26f161b773 (commit) discards e4969c1d6db8765a0a430ab0172e35042821df4d (commit) discards facb1be1b508efc97430a9c2b1523d3a387e8cc5 (commit) discards f4961f916a2d5e323c58c11e8dd3267444f1e8aa (commit) discards db4f91629fc1ad0519713f3af9999ae84cb27b49 (commit) discards 4931de8c2666436802ed96a31a8b76f01042b0f2 (commit) discards 440242818dd9fc99c5034af5c299dab063c62c8d (commit) discards c4ddc92f912576e1499478abcf178b351b9e07f8 (commit) discards f311a36cf47cf16d704427d59a31f597097d8a24 (commit) discards a0577e5891d64235e211ff38fd4def0b01865cde (commit) discards 55ec478171d30dbb8c3f6bfaed8131a8ada29bba (commit) discards af570233d5fe47ee49e67e8e3c8554ad4065830c (commit) discards d9eebde0b025a6b93950e1c197b0f5a50deffa1a (commit) discards 6682a9b18838c15070d7aed2be0dc9364910575c (commit) discards 319326525a7ecfae55fed4f3e5ce2b2dad2449be (commit) discards ba1bdf72bc7fb34ac897056d5ec0c94e80bac393 (commit) discards d84329c78b043ec77dbfe8130a737e7bddaaab3d (commit) discards 9d274b4f3ffba3ad339522375180d2bf568d016c (commit) discards 86945954ccf2d3649180c3bd6ea9faedb3a02ddf (commit) discards baf5bfb5725d77368e4b33ffabb9ea8958e8c89a (commit) discards eada43bb220f5f3953874606eb97ba33217091e4 (commit) discards 5348b1f86b070d6c4f4402aa09d2bc9c606908ba (commit) discards 6eca2590558ae1ad4de989718a496a2f68ab68d4 (commit) discards 5257503e78c4d779e41f93643677ae89b1d16022 (commit) discards 7f8ae89fd03bf2d31a52a1e9665791e5934b0657 (commit) discards 15bc8492469ca587ad24840f73eeb094a779bd9c (commit) discards 9bae20cd9565fa3f5b2197d20316d79239f14848 (commit) discards a30dc4776c1c853e26cbb4a819b2471f7b1242e0 (commit) discards 37a16068b3fae9304bcc471b6361297ee4c1c534 (commit) discards 0fa3dd31464cbccc9bc401eabdfb75d94b5579bd (commit) discards 94193f7375b8e3490a71cc8baf0ca42e3e070afe (commit) discards 27da8cf2d3ddf34acd9eeccf630d83ccbf89cd38 (commit) discards 081c724ccb82ed1bae3f629f4b6f0b3afc79fdfc (commit) discards 13530ca17efc81a393effa80efc527eeca28cbe4 (commit) discards 8dced126375dba8ba8a4d8718331c77898e0da68 (commit) discards 6b9bd82789d918843753e30fd798af89b85c6453 (commit) discards a64545de6ce4da2f2dc50deecc632ccf8e2d4ef8 (commit) discards 4457266e0b54b8b0bbe65bb58637b53e4e03a0c2 (commit) discards ba9bd140a68861152734e2371b20793393b4a534 (commit) discards 8c27ca48d548abad83d2eae3816e6ef9af8d63bf (commit) discards 86a7940fe1fc85caec68f51599a4ec403534e3ad (commit) discards d39e049069f3214ec70117a5f865ff9968914b33 (commit) discards 5da1636116edaeda9bf32cd67de2bdfa543e743f (commit) discards f4d53ea06e2b1890ed7736f0cf90339e7f2efc84 (commit) discards 3c5ce70fa8c1b4f7e27045a37a4bf9478e466751 (commit) discards 050dc316b6668708811311225ad923dc24e77950 (commit) discards d3e921ef87838fff6b8778966fc2fc530638a831 (commit) discards 3837f15096592ee85e4a459b11fccf0722a7318f (commit) discards da9cd65f4013ae4ebf7f215594cb5424d79a22d1 (commit) discards ea7edc917464acae53dcf6a82a03abdfa18fd9b2 (commit) discards 5f57e8282cb1aec7d34f7ab42cdd6f1fb0fe36b7 (commit) discards ef8dcd30a0d2c3fd43105bdc598ced2115157cd4 (commit) discards a8197c1a4affcaf6021bef8323381d05d155258d (commit) discards 0db065f14a128556135b29fc9bde2bd9eac653ff (commit) discards 60316739d134a6c76e435746f4c6009220e533a9 (commit) discards b359ee994ea80fccd7eff1b01e33cbcce879a545 (commit) discards 4c53670b6444b16e8d39a46aebd39fc166895755 (commit) discards 0492ede11b4f4b396a5f2f5ccbcb0a7bcb0e2167 (commit) discards 5abead04c62d1ca4ae3dc3436ccbd8049ddd7e0a (commit) discards 2ae7b5534897c95a1722e82a0551d8b07ce591b8 (commit) discards 8580ac8409d19ba4a2b4b44a3c4933f93b4fb947 (commit) discards 0e8952d11f583f72f92b360847a96c012f0c662c (commit) discards 7343d054226778bea3899538b074bab8ab33c46a (commit) discards 8e5a71296ddb0959b3d55232823eea9495a8a797 (commit) discards 768ed74673d56ce22d79fdc2e58ecd2828694ab4 (commit) discards 19a24c0387819644e016194ce653946d772762b2 (commit) discards d5604fc8008d0a86046d004914a6531b0cd940b9 (commit) discards f4e833c32a97a87918a463d5e234a76d993fdc42 (commit) discards c350d78f7baf5db77b808f99911bb07a069da1bf (commit) discards d4506d1708d5da92f5ba26b43262db6d8b0077f9 (commit) discards b17d835f7d6047dfb5ec33283eb75c4c5ebdc353 (commit) discards f31d11f635edd36d6ef3d946a475565533b33854 (commit) discards 0379c24d878e763ebb5918014fc58380a379ac18 (commit) discards c805a31c2ced7199b2807cecc22213e96c0279c8 (commit) discards a2742925ced9b822a2249aad5982b5d8f07c8c02 (commit) discards 909bcad178c51bef0a063ab1d00e9a64c466261c (commit) discards 148ad4b304ddc7cd151e022edf71b0fa89e50dcb (commit) discards 9dfe97f83ff4472e34e161d978efcfba7ed793a2 (commit) discards dbb73396e7c7172ae58e42dd9840cf7f89f35da4 (commit) discards 5dce3cf7343b50d95a87f68ed9ffadd936d74c53 (commit) discards d7f4b5673d4f68a3de0fa5d0dc71322dd575e443 (commit) discards 8b0b49061310e2d14c34fe60d41b1082eaa72e77 (commit) discards 04344c3f69d61444dca18bc3c4ca6c07c7197fd7 (commit) discards fce896b44813a1babddc2451d26223e7dfdfae45 (commit) discards 8bc5b3cfb1b0e7af49b9e0c6a4c269b5be273f5a (commit) discards c4c05f4d6619641c241f90e43301e924013d0e69 (commit) discards 82e135908ad68429d857e6439b9e10398b2668d7 (commit) discards 5b5d8daf1082dbc0c4c9cdb6097dd6663aea81fb (commit) discards b7a1769bdee9169dbda0d7e46fee9ff0bfa3c0fd (commit) discards f4bd6712fabf24cd78c72c6d6c2d428a828aa97f (commit) discards 7bd36637c767f0a8e4dd159d36037b7058ae7b81 (commit) discards 3a70f6e34c49ceab09e36bfd5bb623bbc312707b (commit) discards 5c306429b25dfd03b8f662bb1189d55c03afdbf9 (commit) discards 59f6995bfd214152cf6d66e188e84216b7e7db60 (commit) discards c0130af037373d853ee78465e9f5ef6547991bbd (commit) discards 9928a397deee6c6aa148ab27cdd15b5ff732b4e5 (commit) discards c663ec799e1f02efcf192d652e67095da4c134cc (commit) discards 57b028dffc1408e39e7112c5fdde4b2efb067280 (commit) discards d1b31254f24c2383c072ab88282abfedfb5ccc40 (commit) discards 57e6b1c3eff6a8179e98517081b3258849e75884 (commit) discards 0a0c008eb5bc0e6380d5166315f417f5c97cc66f (commit) discards a80a6fc857c5f77840c27caa89b499e22518f68d (commit) discards fe6b4fad790428480b0b7f69b77da12ec795af8d (commit) discards e00d75e25aaa93c38b59df54163ba468adac1c8a (commit) discards 3084142a708ce9107e357649bb6323dcca17b87d (commit) discards b358e734b867669fe086be98502f2f4bd1bd7425 (commit) discards 852f738c0911975d8f39491f288158fcf3795fe1 (commit) discards a67be306809f9ecf87499fcb6f70f24e428d612f (commit) discards cda6e0784dbc387abf96a9b9ae1e3695aa3e7c17 (commit) discards a1adb3a956ac31b0494eebd69349d3c950e1a5a2 (commit) discards d07f9d28f1d7d552e5a42dd7bdd3a91856375e5c (commit) discards 36f93b606c4a14efdccee80b6a6a738f6795408c (commit) discards f682e2a20b69b8bb1113ea25e907b03dd3fe4ba5 (commit) discards 444a7331ef2da0270a1c2fef7eb16fbdea4c3976 (commit) discards 688d06a039b3c1a3305bd73922e74d3f5eb3c5a2 (commit) discards 9ab1060cf6496a63c33f767faa9ae208331fe1fe (commit) discards 1cb31f76cf50ca5c734fa86483d8bfdbf984b647 (commit) discards 40b69ceab5e3d0eb6dcbd48837af6213290609f5 (commit) discards 78831279eade5a1e6490be244fc19b26d34366f1 (commit) discards 73637b85b622bda8d327a19be52e4ba0947f5cc6 (commit) discards d12f442c9453cdde4f95f708447bf77a9e87debd (commit) discards 5105b55967fd6c58e7fe7f58ec5589eb151d48f4 (commit) discards d3dad494c00f64119c702440670e366a64b82554 (commit) discards dadb104e12a803e1efd435712f59446675e86b6f (commit) discards 9ebdc29f1d380cb37aacf99aded77aea76ac0f79 (commit) discards c2a645b74e203c946eafe0f2fd6996989876f24b (commit) discards cdfbe11b7387eeb3594244feace5c99c1d090773 (commit) discards da9ed6be3896a3bdaed9cddfbf2fccc944992451 (commit) discards 52a4fe75063d77f2b79ffd9bb93b1e48cd7af3dd (commit) discards 2d65931be441528733687bb62f2d111eee659e27 (commit) discards c23c98773d30735743b5a522a6b76a153aef4d3d (commit) discards 4f313114bab3ffd41e26178624f4e5dd3eb70e74 (commit) discards 515b029dd45712fb347f4889d2c2b261457f4b9d (commit) discards 23f546b771106cf97a8e3163a824779c6898797f (commit) discards 09bceae5b9df968d8307d898f43963b2bd305c45 (commit) discards b57c2977083e8bf0c8e0ae12f6b2e9db5f4a216c (commit) discards af96f69116e4f00b46028ef709fef898a53972e1 (commit) discards 65ebdf17ae3f463dd10862a4f1bec017f2c15cb5 (commit) discards ab1f20025d42a781e4d9d0a446089892f121bde2 (commit) discards 1c175147e32341d5a9bf4c54fc8ea7cd9831c31c (commit) discards b6aa7393f5501c658afc1c83001fcecec7a86e7a (commit) discards 45049eca97e8931721f4a371e136a012c0473e8d (commit) discards f4b78cf2ac9785ae02e910ac5566718fd8592f10 (commit) discards fe685b92ecffdcb889806b0fc882d3fe75244b59 (commit) discards ae723db5b4b4a4152547eae6166cbcc073767512 (commit) discards 42eb85d6c7bfac664fee8df62bf0ccb84b8e4e5c (commit) discards c2650e5588c8ce19ffbc3f861ce19f033c2eede3 (commit) discards c709ebb08e675fc4603187cd8a125a6b8f704436 (commit) discards 7f7c996a707e206c8cd87bb97689b77ad249e114 (commit) discards fcf07b5ac180c78f5d88d3aebad2120844a2e841 (commit) discards 7589b5fe25daa4fc154ae0ea6999e6e89f7d1bdb (commit) discards d795a3d51274e6398da4ac59ee86943a5138f6d2 (commit) discards a75bb8377e228107917135b06a1af42aec1ecd52 (commit) discards 38ad671c4a5ef9e2346893b7dfa37a8a67c16c1e (commit) discards caeffcc6b43df91f09fe3502454119148362a543 (commit) discards 6a5da86d1eb53526ad48724cae6ce23151f56e0e (commit) discards 0d348d07e683e97fde1e881b18dbca32ed3a66b2 (commit) discards ca646585aa25396915e4ac0411c2e166abe24c6d (commit) discards 3c62239543d57cdae883463c73ddcb5f5a31c83c (commit) discards 0538b325b4884c8b722ae31ea43b8c8cae113fcf (commit) discards 656ddc52c42f8fdfd22d331ceaa669c479124555 (commit) discards ddfe463d8f62641f2e80e0c5cc0cb78203ea63ac (commit) discards 850d020125bddf09624713a1c49fd42030b04ab1 (commit) discards 65af84b164be876c455e818d4342d6eec93833b5 (commit) discards 51917aca1dd43b5ae4239b59380000d920c3cf24 (commit) discards b9c7985c75f183b028feef52a9f86372fd0f4694 (commit) discards bd8bec2c3d863e1030543591bf8586bebeccab59 (commit) discards fa90abc1783d5a65dbf4029aa60a1ec28e68b71e (commit) discards 49dbd156c1c4ea2f7a97a6ba7821cba2595fe37c (commit) discards 88566c0c4e7d0fd8651794dec4bbdb4506cbdeb3 (commit) discards 410710a869259e9b0f390f652e4d4dfc51c7ed41 (commit) discards 4fad797618cedabeb601ef458d1bd435ff55aaf8 (commit) discards 407677ace703e992163b4d9088d30eca4951f852 (commit) discards 6163e7f976039479837c18fa46e36779e83945fe (commit) discards 4faa9d39ad49f942c231b60204d9834cf94256ca (commit) discards 642dcc7d55072c1de996aa15d40d3673cb444331 (commit) discards 28ca22320782278dc423d55a8c426122064ae1d5 (commit) discards 8d106ff43bf3e75adcbf2618e50b69e5f0d71029 (commit) discards 05765722c40adad41b758855b47a17a74193cddc (commit) discards 895bc35c76bd9684e30ef29af5608e497392995a (commit) discards 661541c4d9e363c1785299e359588a82b97d16f5 (commit) discards 6f4b103b56e280a162ca544a43f47abb3bf3f1ce (commit) discards 1f8c14286538290277c81761e7109479d6e563c2 (commit) discards 174fad7a7c9546fccd325eae759c32f6fd5faffe (commit) discards 71dc34772b46734636a9f83f116908bbc666a131 (commit) discards b4812c7c9e03f46b40a0dfbe9000dc87832cb6ed (commit) discards ee01a24ede9a83c9f72eb1fbcfb3fbb621078bfe (commit) discards 7500f92f52b0026a0a56b80acd301e319c36024d (commit) discards 355f9563bdbeffe6f552f5f578a6fb2a2239e9d7 (commit) discards 0b2ef5281ebbbfb1daad42b5a427ca70431ac095 (commit) discards da8512dc174a42f6b4ac949b27cc789462f7aba3 (commit) discards 7634fd7e72e85b5573fc33059fffaaa03da8fd37 (commit) discards 59e3569c7280aee1736e141487f506e423c33948 (commit) discards 7b307f3eb0a5cbc044370754a6b5883bf22c7e07 (commit) discards d275eb11df7a090b5fb42882690783b5296619c6 (commit) discards 9ab6fd968501383f1ab3e54a28ab3c51b84b47ac (commit) discards 4bb9d1e3dfe398e2835387cf1dd0b9c753fbf7d1 (commit) discards 53a30cbdf04d7f04097473c451d1a5a1bfbba506 (commit) discards b37304eb1acedcd57c40a0eedc6c93e5db21027f (commit) discards b8f3ed834c03bbe4a1eb61041f6c650f31601743 (commit) discards ee51008df2b4120eac0ff072090d528174c3cfd9 (commit) discards 73bb00ad863be2e54cce4abe43f3e24ea2c5a720 (commit) discards 9b7ab08044e7d024e225efb44835153f53c6c1dd (commit) discards 4daddae7099c3faa18c7f7aad8bb363b70e9623d (commit) discards 5c02d2be180b8e0b16206cf56ac41324435f0188 (commit) discards 44262347099d0de4dd421a15e647a7fdb33f83ab (commit) discards 00eaf2acbc37a0e514e94f0180e9edfc6e804f06 (commit) discards 41a41e60fdc05c31ce5fafb5b2242fabc207c4db (commit) discards 26883b20debd5facab0eb9a2baa08b98a4df1eb0 (commit) discards 108f1c46e6ed1e0046dd6176e8a11a3ce582bbf8 (commit) discards 700ed02cc88ff28d80330cea7543a7220c5f7409 (commit) discards ecfb1d6137b547f9b3b9fe5517a8aba3c177fb97 (commit) discards 7c335f150524a219f44023eeeb353c6ae5bd67b8 (commit) discards adfba79088fa3370fc9d77082e0aaedf045851e6 (commit) discards 6351880c2aa815f389e0154ab41b7138a5cbf6b4 (commit) discards d4c1925db5fb501cae4df7dcd2e3fb30df0b26a3 (commit) discards 6016a5c7e1b69b9f3160dadce91ee405b9480d1e (commit) discards 485812417c68faf3f124a97aaf615b998eaa2288 (commit) discards 1ceae33a983c03eebf9d4472ba4261599784d836 (commit) discards de07a7c8103ea39c2ff35c3ee7de29f078c9aa8a (commit) discards b0ef8f0c97b23e65902eb93be9f0724cbdc42ef2 (commit) discards 05910c42abf0a3aa5d6c2094714623a0aff1b048 (commit) discards b20ba217545415f7be5d85f12993d1033e54041b (commit) discards 85f6c64358e1a1077d01b77b93c09d8d964375c9 (commit) discards bf7096c4adc4e1642353a57bfdec509693586697 (commit) discards 941a1dfb85a96e778d666e4d823729d292a64d20 (commit) discards e2aff06b54545512f0b0feee24dd5f9333a53eeb (commit) discards fc44c07b9c0ff06e0810e3547c6fe661e786d4ba (commit) discards 54da94ad01f457cfab41c3e479bba083a67ab552 (commit) discards 797dc0cf0d3f1fba43a9689499c466f09ba2900d (commit) discards b69437a25d0132cd153d9a037207a440c9fa4815 (commit) discards 9a96401774c4afc6bc12cde06cf6d6306b2f5b22 (commit) discards 4703cca3e907970b2de37a75c7eac023cf40d61e (commit) discards 829bf431cd87375ae774d550a7a1d784b65a24ed (commit) discards 5b5e6734955f7f6c948eb7a99af3d6ce82586c83 (commit) discards d695130d0a9f971fa3fb9ccd009b4399cb95de93 (commit) discards 721cf69c03495cbea80442561b354bfe5eca70b4 (commit) discards 2787738b1af12988e5d6ae1bef68fa7afefc4d40 (commit) discards d703c9bdd288935967fb424535355b1c2cb2024e (commit) discards 50c85f8df978c864170024492e19ec68b73e631b (commit) discards f1dfe06fe4997b16024e33d541f23bb06b4734e8 (commit) discards a63d44a18e1b3090f7f6c50d4fbca8fdc779a7cd (commit) discards ed798181b088d99d1e6dd4c29b756af6d6d34b22 (commit) discards ba7b2ef617445a14352f87c9eff9864b2d34a667 (commit) discards 7cf7cc664af24a7ca8e74dfad2d655183e0f85e3 (commit) discards eaaf5aab1a9c286a3d7470880e0c1590fd6bb9a7 (commit) discards c8dbde2a28d518a59867d116ebf93ed4a8704a1e (commit) discards aec4a3fa6c2185a166377a27f08aa6a7aea8f13a (commit) discards bc08c11db52548e4ccac239d3204b83256f3fba2 (commit) discards a9a2dbf8dbdc3935ceab3ef560d4185503c98ead (commit) discards 62809a37acf2da6d452c49aacf6963aa60214d02 (commit) discards 623df63fd4d87bb03cea55a874a3b6cec2deb1e6 (commit) discards d35bb00a0232595417de3f4669dc8380a135ab66 (commit) discards 5895f5fe2efb241e2fe12a5327fa193c2dbfce48 (commit) discards e33e646f3cad70b68ec9c47b9da3ce5c991e87eb (commit) discards aed26795976e7c81b15fd89ec23fe0afe8c47593 (commit) discards 446f851e1e87e24b0a60601a8fc20b52f58659d7 (commit) discards dc9a621e83c391d80274d6f99f5098500a0bf88e (commit) discards 48ff2e8cee3b0f28f2e65b59092682daa3930c45 (commit) discards 7650c1b181904927d484fa41c2e80a347639e23d (commit) discards f4ce62450e1952803947eeb8dbcb00ada9d2d3fe (commit) discards 6961e240b4b856326ac91ecb37169c71277cd597 (commit) discards feacb0fe45bdb67fa88fd5ee16031b1552e423a2 (commit) discards 0ab8227656129842b8458980041c3d11b78a70f1 (commit) discards 41b39919f8ec6c50d5a009337d340f2a088a65d9 (commit) discards fec6f0b5b3866451c68bc9da7eda95fef58e25d6 (commit) discards 150932e57a7db01bbcf62d5601114d8d5057f3aa (commit) discards 8b5991ea9e5da7aea8fd2437bb980cc10dd55e69 (commit) discards 04fdcfec6e357be7a17ae0c5e741472fb8a337c4 (commit) discards 32eb91fc491e33178c95e7532e9d1987ed0653ba (commit) discards cf9070e1601fed0d2d0a3d286e2c58e731f851bf (commit) discards a785b969514ce61d9298050f8758e7c064cd1feb (commit) discards 9fc3a06c31fe89f9ee3cebe9d4f971398a366633 (commit) discards 652e4a00e7e0da981915e509baf69c74a93e3225 (commit) discards 025fdb46f909cfccb003ac3ae6c69b2e371fc13b (commit) discards 9072a6898d628d13518eedec5bf6496d6c1cde78 (commit) discards 467662dee413f413049d036446023606e067144d (commit) discards 5528f24229ee49e2bb5fab3e7b4e4d117099021f (commit) discards a7cb6054223c6717c1c49378bd7446e12a5000b5 (commit) discards 017d7c3c8c666fbb5c43c266e7af9957cf710f6e (commit) discards 3ec60de0889433dbbb526f8ff916588a188c5746 (commit) discards c74d1e84a8070c8d0220d3a5eec2df20b0d02af8 (commit) discards 990b063d7ccec6e912acd951f4cbca70d31548e1 (commit) discards 109d9a8cd63f604fcf0e668c6e3c2426c74ae5da (commit) discards a54d83b3219f774e1382ba038e411b2268ec572e (commit) discards 889c683b0315728adb5de3c622863b2111d6f99b (commit) discards 8a742485fd29c0db0c0eb975fde6116c8b1e3756 (commit) discards b2b55d49dcd0474b12bdc175d1852301440935c5 (commit) discards 98216ea8037650a284adcf4f7c314077ac3346a4 (commit) discards d875307328b9b04481d9e3466449ef31493dfc41 (commit) discards 4bff21c3d53e0a8197c0654e9d5e5cbbc9668a69 (commit) discards d7952dc486a91974f61b00248e54ffe7b61afb6c (commit) discards 1e893813f96e08ba939b5278af32dc2ffe627534 (commit) discards 8a926e6a7877ec1544a277698fc77670fa7c7a88 (commit) discards c705b7f9c498882e42a43670082f96a449c99cbf (commit) discards 939b7ce4fb8fff3384edd33d2f993a36320b5b39 (commit) discards f447c3ad1bc5f308f2f8109aec3c3ea45e9c5a26 (commit) discards 5883dd856c2c9621d1d542a97b305f25840e176f (commit) discards 4f00f245a4edebe5e71c35799cba02bba388e3da (commit) discards e5faa735a4e8350da0eb71566e28c608faee1631 (commit) discards 861c7fa5d154f548f881fbe1a91a4b32448d680f (commit) discards 487998e19c905bbec06f908e830b0c8a54ed6ecd (commit) discards acba575bef8e7f2f841cdf0a6d0634c4584b2fb2 (commit) discards 1c3cf0e98be07bf118f81886c492a7991968bac3 (commit) discards 5f6476915690e0c21429f9fb4f0dac05ca0f961a (commit) discards 44a0ffb2c5f11f7d3d0b6653de138ae19a1911be (commit) discards 7b9e7f815c192d8302592a3c486998f3d0f145dc (commit) discards 96ce7525d5f710d3ffed07b9e8d51c0662902a17 (commit) discards 17286b875d478719ce52a0e550c58ee86cd7c865 (commit) discards eef78202042c69e102612aa158b4f070fd0e87b4 (commit) discards 99835e1e8b96942366275446d67356edc24d3f49 (commit) discards 53d1e3a5f07f4cbd977bfaec4b4932eae2a38f97 (commit) discards 3c807ed1c137eb01a6475070c9d0811b3fab54de (commit) discards 342505665bd8bdc82ae5ceb3429ba5625564669a (commit) discards 764b578d06dc02c9a2ff350a231de903933a1b0a (commit) discards cd80dc58e67eacb7e256670cd15962a624f76bd5 (commit) discards 3367e6de2c9b36af963b25af2b778828598ec948 (commit) discards af12181cadb48791c21269c2717011ea098dc3c2 (commit) discards 335f416f9c80152c6a644a6c208c15cdb6169ecb (commit) discards 30e0ff91b34ca2339625d10f9c921a7adb009199 (commit) discards 278fc065365dcb78dc851f4a57aeaf73a737986a (commit) discards d1490ccd6a4b7efa10e337e8727fb115e6ff0ebd (commit) discards 4dc9ac8e94e6bfae374b98c6afa3efbb6ca76d58 (commit) discards acdab825420512a8bfb5f337faa4a7fe7ded3279 (commit) discards 27e9e847d18de8df5ddafa72d6db80e9b657fb45 (commit) discards dd58a786fc59a5248f9061c27db546ea0bb67aef (commit) discards c4b0c12aa0c4745f6995b52c55deb7527a52f43b (commit) discards 39c66ed71b96fdbc93215ffd6aee6bd2f3e683cb (commit) discards ea660cfeb3d1f9f0fc85e226563d93162b043f83 (commit) discards 57eb391335197a75d92530bfcd67ea4087d98066 (commit) discards 135fd90a2a3e1f6a700ed59494ee2b54b9d3662c (commit) discards 236d0c878cccdcaf5fd49c790c65340fb89a92a7 (commit) discards ffa49bcc1163e22489e67d4204d6371fd68372e5 (commit) discards b49af13bc15f01dd45f05c331e79d56dbd185d09 (commit) discards fb74a6fbfbbf235ce1c34323825b703ed453af7b (commit) discards 97e993b0bd69af48d664aa4e77e535d3a85d4bbc (commit) discards a17fcb54600b756cf8e62aaee55dffe6073fe413 (commit) discards 777f74f60c58d0276ea3ac68258b2d51c54b2fe0 (commit) discards dd4098e1f862f2ba054014d12757fe637eb3225c (commit) discards bd1bc930142731cefa249d3df0f87e3cb8ff575c (commit) discards 3c0aeb32f79f4255ad28b4263dcab1f2dd755301 (commit) discards edfa7aab959aed803075501633a9a3ae2770f028 (commit) discards 1133a57d714ed7ec8fe39c577cd80aed02dc7c4a (commit) discards 0be087e620e3993145474bb8ee30cb7811d0f83c (commit) discards ab8bdd3ba8b14092c30e78a72b599f154d3f850d (commit) discards f1c1ed54aa09398e28a04fca7e88b48f15b4283e (commit) discards e75c8ea26cf3c63487877499252dbf3379374578 (commit) discards c776cbd2c1e7a05b852a2989c5b959867b6f6340 (commit) discards 13da15ff0ad34ec35039acfd6a1f3b343f38dc87 (commit) discards db5583de060221ed7af339eb1a9101d43794f11a (commit) discards 67384cf24f1431e3db942ab10e42eb79276611bd (commit) discards e9ecfbc0de78bda55e0fae8fe3c0fcab63d6a231 (commit) discards ce9f6273812be91e47f61a86b676e17f9b2c30fb (commit) discards cde1bb24e240366fd2c87a4918e1121045ee442e (commit) discards e96d5ccfab7cb87c199f6aaf9c7f41257855f897 (commit) discards 34c4e62dc7fd782e916dbe512f3caa863a8735c6 (commit) discards edcbded42e4932285a0a89327dc383704da3fc4c (commit) discards 92ad27b0f20fa1bc6e93582b3dad1766f89db627 (commit) discards 7668615cfe6db836a6c5b8c6e5971a6063887148 (commit) discards aae70bca34411da0d5f147bb177159497070f834 (commit) discards dabaf75fb5182c34dd8f55497ac02ce4478700c6 (commit) discards c6199c5223bec8fbd36ce3f9809bc341a6e30fe1 (commit) discards b4346c10c6f407b069c5db7ace6d325b83404c1c (commit) discards 8de75f13b69b5e3498330e3f0d509bd66e340ed9 (commit) discards a403754fe0761fee9e60e185c003bcef04c719c3 (commit) discards 94daeed95bbedf1bf341775eb1f0e0e1def12270 (commit) discards 0965a0f01819c0e1d727ab1ee41fbd8123c7925b (commit) discards 38802dc00af0ea5ffc8ef224bd42bbb54d410b57 (commit) discards c990a180a963ca8f9df769f84533cb2fb0199750 (commit) discards dda973be563bb45ca65670c4d4115f26f5d6a49e (commit) discards f4b3e6937ee6bd0588295b212a96d8378290c2e3 (commit) discards 5cd18731aa5216246cd017372bd45b8877194572 (commit) discards a44294641e27c74657665079147a41b81ceb3372 (commit) discards ff07a15758b434369771229ca2a664496d8d4522 (commit) discards 046828185e329b07757141b759e9a38393e64d2b (commit) discards f06bf49a9982f5adc55406b8c510c241489941e5 (commit) discards a382e6004e61ccd56b12f3d4ab3c4c08fdb4d777 (commit) discards d6c55abeac4d100edfa34fa2db5c50822f343705 (commit) discards 84fa667ac294544aee9b0baed03f49776d6b1d1e (commit) discards 17f2053b9dbe7c23fe56fea0550bd5dd19ba510d (commit) discards 261a06e8ed0fd47ceb7d38cd3f64061a6e5ee876 (commit) discards a0b93d7dd06b94731be61a639bcedaecf5fe7192 (commit) discards f85156c9061bde41d50db94fd4f5ba8c520563a2 (commit) discards c20ec207885ed72d331a101ae7e7a37767268a87 (commit) discards 28dae13cad1aab10fb7c9f14b1b417038dd0c144 (commit) discards 813257d9aa8fa07d261f77e9349c8f2f11fd3efc (commit) discards 5370578b13372d26867d41c5e372af4f52a0167a (commit) discards 75b8f5923866c9ce9f47a35574dcdd332f24b9dc (commit) discards 06bc75835a2fee9dadd6a2c0c0988f97c3316324 (commit) discards ca12a9763d13b8a2ba6dd0cbbff15a277654f120 (commit) discards 4c3f5201d75267e4f24d7dd61308457041d3a4a3 (commit) discards bf3deea7a7a709877500743304f7185789234877 (commit) discards 3352c05b873c03505d877acf7dbc922319e1f6a2 (commit) discards 20bd919dd9d9f4f0f79054f976b50eb0cd272217 (commit) discards c79e901e0f3502bd223a96366919aaf257631881 (commit) discards 534c69261080277d213c3e344987266a92501363 (commit) discards 71ec1d16980b2ea507536976a098d7c246a663eb (commit) discards 12084d6c9159f5efe69d9f600fbeede4b8b150e1 (commit) discards f2243ff0b724e907ba1db2be2130f0cdaabc02e7 (commit) discards 0a3e091f3be9f882c6c6ba1255a1cfe52881f589 (commit) discards 60218d5e51cc31fb3179434bb1aaefba910458bc (commit) discards 8345ddb7ae431c6aeafbd24a368886b70e162bd0 (commit) discards be2c3ac78174ed0a9d5b23e51719cc3ff220ed3a (commit) discards 3b39c774d7a62c7e21c40f9b2256c31faa8e3892 (commit) discards cc13bd844230d6cd50d244f0fbb46676d4d2ab0b (commit) discards 96608c4fd230f3ca50b0f68eb75c0cedc0507228 (commit) discards 8ffd8b702415904a3a90cde5c6aaa06678a17635 (commit) discards 122cef7ce4290f4163d56215babf7eafa5142249 (commit) discards 137288283063480d7c29ce7d5127a258ad9a67c7 (commit) discards 25f91c6450f1bc569465af9183bc9ff58f1a503f (commit) discards 87c968015515351aacbee47779194e1df43b512e (commit) discards 8bba38161855deaa90fe72057f6cd4564110d551 (commit) discards 56db783f0c5e882d45c6f78f5d46dbf3f1c09ae4 (commit) discards 9e514a10d87fe26eec2920ef6f5b4ce299b6c8fb (commit) discards 40750a723f63a3f638fdfd80f94fb0dcc6db482d (commit) discards d6567095f48bf1f9757114326b70c972333ce320 (commit) discards 990175e47f2ef5da5723865f9bf627787a2f0a8d (commit) discards db293e1ca64acb9302b6ca660e94aee305045055 (commit) discards c7e52683d35883c9f7f46574bf357d0c7ed3bb7f (commit) discards 3f421206324fc57cfda97ef50e57e0c8c3ce1a40 (commit) discards e571ca8dbfc6f8462e3d9a79b90a3546349b5cde (commit) discards dc17dd894a3f21ffbd9bcb85a86aa42ee7879ebf (commit) discards 3a9a73e5844742fbe269e682723c39a15497b740 (commit) discards ec86e2d16bae7fb7e7398f6d5b9d660995cfbb10 (commit) discards 258b54be2e083734d08962b84ee30b4e83f02e9f (commit) discards 4eb34e13fe4c24ac34330b1926fa045078389070 (commit) discards 6f6d630f4aadffa5320381e92fb79a0ed52e177b (commit) discards 5ae13355efec27b1acb6e65bd411bb2c012fb952 (commit) discards eda08400439811a938f10bd7a9f662166e78dad6 (commit) discards 6de9d59f46094043c358d0cc5aa5a7b532bbecf6 (commit) discards f62af7fd49da2d17954013cc9a6c6f6365e0db8c (commit) discards edb26a9f31cd65f210291d8c230ac05aabfae2d9 (commit) discards fbecece01a35c39504d190af3976b2e861745862 (commit) discards 1cc5d81139a9ee92dfbea04eb91cad9abcbe622c (commit) discards 3bc2cacc230c3270883eb05d7398f27036ef33ac (commit) discards 370dc75e6eaceb724ff5b1a83c832b41f837bfbc (commit) discards 88b6e4ba51e263de41888e9b4bc1189462ffe0a8 (commit) discards 100bc579214d7775414504a9fd4d1de76ee83b41 (commit) discards cd42577b23fbda05bc2420ffc7050b7dc1dee5d6 (commit) discards 0899a4839407960ec19d421ceef03a3dcae42339 (commit) discards 183950101b44830bd458201dae0e9c2c7762ed39 (commit) discards bba9705e96ec3f97a25a4f7029f79150785e2003 (commit) discards 214d354dcb9a170500a17c2213e4dde7f903ec1d (commit) discards a97c15173c9127b67c0c91626332878f0bce77d7 (commit) discards 7e8c54f2d4d98b82f16dd15d02026691e8ae052f (commit) discards be4c0c959ea29d10e321b4801dcb9555e1da3231 (commit) discards 6414e0d35afb185d2255f7a55a859ce0ce52f474 (commit) discards 05b2bb94d9c908bb2c37bb9cfd74a6baa31c4b5d (commit) discards 2d0f1ec2b9b64b3100a80b1592ecc50b5d030395 (commit) discards 418bf735232b57a395e8965451620f77472f1087 (commit) discards df37aa761a8904bc228b8567e0628672c6cfada0 (commit) discards 591774e3c7f1e566323d9950c0eebbd67902dd11 (commit) discards fbe01e78c7cca2d62f001687b3bf753e957557be (commit) discards 1ed4ba2ffb51eeeecfc2696136c2372b9a265577 (commit) discards 25cd19afe9a109912c2af3116553833e88aca036 (commit) discards 584aaa1c059bb65e72b6f692e98de1b3395f431f (commit) discards 9f453984d4ec1537e9a75b8034a682e651b3b9c8 (commit) discards 2e978198af1bfa1f32849047bb7c792206fb5208 (commit) discards 19ef10a664a003fb0bf12e575e021e15857c7bf4 (commit) discards 69f0b6d21e6028fe7d176cf22702a90883aeaf15 (commit) discards 1756828f2df84e72da330848896d3e877810093f (commit) discards 16e597ec9e3e2e7fee69d8b8a150a413a24d0dc0 (commit) discards dda9962f80194e91ab395859ab9caf8dc7c8523d (commit) discards 29755e8b9dec5b7ef9473b0ed17e6b0ac0606df6 (commit) discards 78bb45601fe03f041adcac56e98acac7b82213a7 (commit) discards 4480092c7b19da6e020c2f893c5b08d9acf1ab81 (commit) discards b594522f7b50d99ce52c2ae40e5604bc59093097 (commit) discards b8441bfcf23ab38367bcda8ca9ea004a02b1bfa5 (commit) discards 71372f0784a5c25b21ab070461730781149eb35b (commit) discards 5fb5b9a0ad4e346c94e7d90d32eb3b8f95b7d1f7 (commit) discards aa86b9a9e346313dae56c34b662407441c602471 (commit) discards 9f5b65e3f0fccfa5749d24a867a1bb3ca7f500d5 (commit) discards 070921f6e04ca45aa74ceaf298b3d0155f3ca926 (commit) discards 0b5df0345c38624636d3ec29a8efc254b9d28a43 (commit) discards c120afd24eb8d3e07e941480c9d1081f47c77250 (commit) discards 900c349fff49949f0380e094913fd3da4b2ebc53 (commit) discards 0452db7c106afd86139b90690d205f4f4b066df6 (commit) discards ed8fba843b77d17f5d3b320ef8d31418b97d07d0 (commit) discards a0b2da07794db73b54d370720d4f44a1f607dd18 (commit) discards 2bfca5803250de609c158c8f1c5c7db4c86a883d (commit) discards 00204d5d621b06ebf5094d8e7636cd5269365698 (commit) discards 020324f29f9d58cf5fef7a3c09aac6b81bc6c930 (commit) discards d327bb19f232337a1492638617097e1d19f2d6d7 (commit) discards ac9cfbfcaf1081272fc1f4cc4a90b7b724ea9bcd (commit) discards a9e20794cf660b2d7aef399bccf1b60f5cfeaad7 (commit) discards a5053694a6e81aa78fea96ad4f3d247c71faade4 (commit) discards 34a36eafe1aa71a1672e933386622b9c6fd68846 (commit) discards 06ba9bf3f9e191daae83735f55c20f269334af6c (commit) discards a7fe9e746dbf363a692ab285cf15e0aad74c44dd (commit) discards 2a5d1c4b018df139dec3a99a4fc67ac0a70111a7 (commit) discards b71ecfb867f90c0f29f3ad9e0636b51726419bde (commit) discards 3d809d5909d79fb78afb61317e8c2df0ada99d81 (commit) discards 18adaaf5f93dbea14c98a77305c876806c6eb326 (commit) discards 1e34d70d79927b9ed68111528bdde02cbfd1afa6 (commit) discards 9a920b69d548faef12d7cf9a5d1bc2706e1e5e5c (commit) discards 6c634a5cb389b9576da94d9e42ca9392651ec22b (commit) discards 548c7be76d4c6590175c190ba3b1391bcd5e7861 (commit) discards 1b7c74a2abca1d6f09abc7f84c63ad9eed311c54 (commit) discards c7f575ec1d221aba0350fbe92b8bb1a10d1123e3 (commit) discards f726493f91a61c28faa5eb526ab8c7f26dbedff2 (commit) discards a1efdd8d0a65e98833cf3209da378250fa096c3e (commit) discards 3452847e1ddb24d36048575d51bb5216af036ace (commit) discards c7fb8d364b6915cd603573fdfb4670c88d728050 (commit) discards c453fb77986632531d7835e4a4e7433edc004206 (commit) discards 57e8b86866517c1fdc75b93fdc03b791247f95dd (commit) discards 147278046f9f2200de276c84f61cde9ec0a5b2c4 (commit) discards 0144470b71bd9c1d0ec138ebda9cb28d8b762009 (commit) discards 6eabe4d0f9dd6622c7dafb5d6e8838c227f721d1 (commit) discards f1fa6eb9c12d28f0d5e6afa23e012856238cfc6b (commit) discards aedba1fa998a01fb483062fd393c10145219e7c4 (commit) discards 5b47c32a9d7a67fadd904a4f41c4838eb79a04c2 (commit) discards 7276bd8fc3bf055c27e34751c3df052a3ba42a8e (commit) discards d388bda78fb01e6a8cebad0464cd7b9eefd91eef (commit) discards 97f178f061a21fdc060d85982c68b8be5a088858 (commit) discards 56616160de37c1a2cc5fbcf4c9714db3ca1e5422 (commit) discards 85045836c29eaa58efdb4c01aeb62d3b44290cac (commit) discards d11a8f8c13225e05ec0bcbca4f174f795fe35a44 (commit) discards 761bc9f27850eb9425d8d222a3312007cdc24908 (commit) discards b5061d40e11d93a449736ffa0b363a36bea97898 (commit) discards 7cd1b9bf75fcac42b937e5aae4d3f5a6a61fcb4e (commit) discards 312ac7257eacbe909f0544a8e9bce3f11f404a26 (commit) discards 54df2294ed54b2b6746d94534ff6584371e9d082 (commit) discards 5f3322884cc5903d3198f760191e2990c361330d (commit) discards f6de0b5eb61b389758505ccdeb2005b35cfc0a7e (commit) discards 0d3deaa1147303b30fc4e5339ecab36f2df62264 (commit) discards a9adf6ad4b1300a805dca29fe8e09d4db3c9fd73 (commit) discards 96e332c4324bd7a129ce762062dcb468762e385d (commit) discards 76e41f6262ebabcc7e60ecd8112e09fa928e07db (commit) discards 2cfa421ac245f83e98783ecb677bbe69def1e1e0 (commit) discards 55be5992cf539fd56bf86a0c588d7e98d6be5ac3 (commit) discards 3a7edeacb08fdb8f2ab82842b7de528e7f637d36 (commit) discards 2319702021e7a5f34bdf2a5267d13c779ee75762 (commit) discards 3777c2c7db091f6cfcaf0b6f2a2c212a4a2a4e36 (commit) discards 2072cb81f822d5ffc53f9daba83a03d8c4266207 (commit) discards 37c5883963d6fc396a6a71081109ab1b47ead9a4 (commit) discards 8b355d64de0d1d899a0c58a12285b7514f8d8e18 (commit) discards 8833206e35bafa04a2264e3e60061651e4b41c2d (commit) discards f98c15814512d7e111f8ac738cedd39d1bfbd9e2 (commit) discards e0d8912dea950faf8d3ee875896d2ad2197b6e73 (commit) discards e51cf4204b190f9e85186b3552634bb7bc22f76d (commit) discards 6c3e3c1fc60759f3818201c63b897babd9884ee7 (commit) discards 60c5ab9ac8ae09d2eb65bcde93040b9bc0fc5a78 (commit) discards cf0d9e84916ebbcd14fd3df5fd8b9b856c1edb5b (commit) discards b1dfbc0de54b5721e073d8363aeb4d8f4fa09ed2 (commit) discards 7b5da14d074e365b812802b0b8c1be8aedf770fd (commit) discards cbda3a77ec426b6340d705eeb153f53346b53191 (commit) discards def4979cf2be3342b9e46d44da13d2b51670f685 (commit) discards c1f14639867b912787d16f431bb658b93e176a9c (commit) discards dd14c5a9066f47297b48d5b204568362de1880ed (commit) discards b63bca8e0d0e69aa2f936a54d5c7fa65684d2f1f (commit) discards 074fc2292eb52f4df17c4b81448e17e4ad3528df (commit) discards 28f8d0dd27a6d2cb9bdd743d728d00af1a9830ff (commit) discards 9c2cc86733790f2c8a8b585ea33ca9f594c81e27 (commit) discards b9c9643a979378511a4f758afe66b3077ccc7c76 (commit) discards f13b405afe0b591194bdd0c36cb96d4d8dc5bdfb (commit) discards fc5b6913b9abee1e56568f380976c0d89abc4691 (commit) discards 51b3fa391ff71b6aa5e5f0ad714f59adfd1d13dc (commit) discards 9ee6a717826db91829196a59e02bcf73d216bf87 (commit) discards dd94f7c8233489388b5aea6418bfb8002ab855cc (commit) discards fb08194fa34fa33379de6c01cf72278d1da4bf90 (commit) discards 95b3b096474932430f04433fc61a422239333b02 (commit) discards 9ec446a86e5049ead95f35208f8844a5b1c817d5 (commit) discards bfc4b17aeb9fa6d2843f655052ac2c1a563bc25f (commit) discards 7f218113baea90ff726b2f72be85242d038a60ba (commit) discards 94c538fe4db0eec3c5f059f57882d47f8cc4a272 (commit) discards 123ee42138f6504467f747a25557127c4abb210f (commit) discards 73afe27ebd5bbd8ec0d316e0a951661d566ccc85 (commit) discards 21b8306d13ae7325904adccfadcaf60aed79a1ab (commit) discards c3c63f491cbac00a656a3a3e395e6bbbfe0a3434 (commit) discards 2a9add9a2b15937160607cd770b1adc93d5594f2 (commit) discards e74ca4050fc64514c0f3bf43027435692afcc9e7 (commit) discards 5813172221d7e1c19f458dae00fdfa5b19a7df77 (commit) discards 97b312626263f4d1af3769a5cdd93e7f8900668b (commit) discards 70afd657ebb9c578502bedce52b450d604eed1c8 (commit) discards 5008f9da62218ba204dc0f1161d8ef39307fe061 (commit) discards c669312b305c6a2cff7f914449513a88c0ad5d4f (commit) discards 0246f32c2e9f89287b223becf86185ac1488595d (commit) discards 2f6a32d4551894eb60107ac93da8db086355a410 (commit) discards e60d07d8987bcfd41aa58cd443ccc56a61543eeb (commit) discards d9747a8a692fd2129cc13a7ce320b5a61bc3d6e8 (commit) discards 018444bac72ac1672f9886449cd53745888e9d24 (commit) discards 8b10da3c7437e7486b0a2661c9439e58c94b0bca (commit) discards 4a844a8df23ed6798884a655942f9ca700800520 (commit) discards 1c85c606fd9c5f39ce8ab254cbc7b631bd250271 (commit) discards f2ff942e6346e0e689dec36f440de3beb512f799 (commit) discards fd329307b2ee76abaa41e25a300902a2fb983895 (commit) discards 7ece74108e1d0e5dd859943f831794a745a657c9 (commit) discards 8de3f22e8fe9e798b63eb00e35eee6404748d3bd (commit) discards b9196b94711e082704fa775db5edc8688644e14a (commit) discards b5f5b58d179e6ce8fcb783ab0d5bcbc2a7dc62ee (commit) discards 5d0a04f09487dacac5520c6e963a64cce854d2bd (commit) discards 7d6c29fc162f8977700c590f868800779de2594f (commit) discards ff8642df721b583ce27fc20292b536f86844b785 (commit) discards 0f76fd1f9d731735044ac68bee8dd8f0339dcf65 (commit) discards 58c525941389eba1da655bd70889527ab204912b (commit) discards 33afee0d69b63b69469c791c01f23512c0ffe38b (commit) discards 5177decb4703b91546819455186f14c9d9e63855 (commit) discards 007b0452b5f7e536f1f88b30bcc5331227cbb098 (commit) discards ddb8b42422de110b7124f44adc842d3268e4d1d3 (commit) discards be2007b08096c2ca1323141d07811f8018151e24 (commit) discards c33cbbd852f384883a56a027c6e7b96642559db0 (commit) discards 56054b1982748475a350239ae42d99af0554242a (commit) discards 52d4ff49d973d77dba480e0b60b08c6c70e94538 (commit) discards 9b8ba31802a3e89b8aa1f34b3dfa7521d47c235a (commit) discards 6e977a761af4f38ad27dbdbc2e3777c780fb494e (commit) discards 4d0a5c05cec02e9b0ed8987621ae3a4f6a3b2428 (commit) discards 66c9ae6c7ea88dc65c5923d124970bf8cd6c4f3b (commit) discards abaffb10fb67e3e16937518b307215f44da01051 (commit) discards 1ec61b9ae1e107567553ee4fd799a41fb266735a (commit) discards 7aba88cc18f2d1b46a210e4132f04798feb5d93e (commit) discards dc834a64ff36cf9f7d8863bcb26862ca00c602e0 (commit) discards eb754045d93a75e290905409071da88c8cdd49b4 (commit) discards 2b14fd9b2f2d19fd5f44ce8c3047125233c01943 (commit) discards 727980e93918d8df3847a17c608abe49432254c7 (commit) discards 65a39f05ac1913daa08173429f76f6df60e07502 (commit) discards 5216c48224a24c1c3d59b3535ee9c851c6c19636 (commit) discards 3fba119f099cc7d6a1597d5bdc112c8f79ee0bcd (commit) discards c0dec596d1fadce47a9188a2a7f1b53c62852b72 (commit) discards 939198a53bb6ad9a2600b357fb69a47f8d344cfd (commit) discards 2890d2caa2a4c95518f72371bb57fb959e97419e (commit) discards 76532b843f467e936466e30106acb04e5e7859db (commit) discards 625dde5e7f890a840160408c4b494a454e61fbae (commit) discards 80b31347051db23291ff0d2ba0a4d5075a0f8c50 (commit) discards 7272bd3e60e07879f526b3cd42ae965fe047c62f (commit) discards 35eaf58f91224691aa0f68bfb61d866f695db936 (commit) discards 07fb7d435dd71aea389d9d89ffd4ef5aa14f1750 (commit) discards dd36560b72a7f3bb0325f29d9c4c7df2c8ed3f46 (commit) discards 383c5f1b1956818c4c2f5d4fd19c1a7283a8f7f3 (commit) discards 51b7afe48fe8b6256a850620764b3ab090af08a5 (commit) discards ef26ddcdf1de2da802a07b483fe36dc840e8e4ff (commit) discards e77371108755670a8f49fac8059796bb61c5abad (commit) discards 0a8ad952382a3ee036173480bd0dd946b15a3eb7 (commit) discards af5d9cd265bea1b7fedffdcd38f94bd9e92687ed (commit) discards 1b9675850c4df397a517b7c72448f51c9ef717eb (commit) discards 1fac2911e1008224c9c0f0676e0e2b90d0cc25d4 (commit) discards 03a66cff114687d0d9e71a289b05a66259853d47 (commit) discards c7d7eef21b678a0949a26fb7b12be8f032a51ffd (commit) discards a240682cb7c71fe241945c6fb67c8e55ee032eb7 (commit) discards f26306d36f7fefcbb041587a6e432ceb4eeb6926 (commit) discards 11508b1a5d8fe5b7d136d0d75591a1e846cc2ca8 (commit) discards bb00d7cbca6e7a9f75a6c5094487b9c6468213f4 (commit) discards c58350078e22ec7706a0eae99ae2b57950f12328 (commit) discards a1839ec4124605ff90885bdcae3e06de946747cc (commit) discards 943791ec6b6166448216d2c12d355be291910948 (commit) discards 3406589fe3acfffc5db95f82220f13e8e29eea0d (commit) discards e8b35676db2949443709d1d819f66f3df15d0c2e (commit) discards 8ad33e01d2ed27c9ac136fd19516a21449b4c87b (commit) discards b97c86b5009307e6b089bcc2ddef55d77918f765 (commit) discards 2c528f860ff8ea458fbf8ab6c85908aeeaa749e0 (commit) discards ff99adb80d59dcbe8cb0d9dc12db657a2f58be7e (commit) discards 29b4f5420922a06cafeaf07c13b5d781790e8646 (commit) discards 2e1ea034a804cd1ec61ba5b9817452d49b6d0830 (commit) discards 7403759846b9bd34bb425f5e90f6e367b80d1d58 (commit) discards 59aa8d878e69fd694e44af3778e87615804ad53e (commit) discards 6c02a443b92ba189288cbe9f01589e00cabfb994 (commit) discards 57969aebfc5bc3589972b497fc5deb30e292230f (commit) discards b162e9871e8fabacf6f565ad1ced05a6d234e25b (commit) discards be77679552dbda01d62b03a85de05ad7e7684862 (commit) discards 5e8b4a718169837db825538561ddfd85cf62be43 (commit) discards c908ba3707fcf8cf43df0c5cd90f8ea6d98d7c29 (commit) discards ce73c53c7a64d31432739f434f222cfa904c1aec (commit) discards edcf86ec3a75e89ce3805c6db371b98b1adeb16e (commit) discards a114dfa05df5936c312645171b741ac8279ad1d9 (commit) discards 1a6b7625ffdb65ed0433bfab9676df6552e8e0cb (commit) discards f79180f555b3e92b456fde6a5d033128a47c6d4f (commit) discards 6c8e8e6db6e38c7e89f1932874ebb73293ca4f56 (commit) discards 85c494047afcdc5fa05965ca0dddf6fd5f44d4d0 (commit) discards 9dfde24f8fb3ae25da5814168fff4083231f6b85 (commit) discards 8cdd0d4208bb8782049cdc750bd516f96d5b5cba (commit) discards ea913ff805b7d54cabc27f4a1d05515cf996c0fc (commit) discards cad7445c492ece031d0521f4dc04ea05bf4770a7 (commit) discards 61348b0dcb21da79f2a397899f13b1869e842803 (commit) discards b27b068b6bf968e06e50184b8bae689d52b59f91 (commit) discards a07ece6a437b889d64818333b6ec99da5a1f078c (commit) discards d8f626b35ce1c51de3eca7fbd846e12e121788b4 (commit) discards 52685ecbafd9f5a59eb88830dbb6121602ea7dc7 (commit) discards 55efb6d191007eef921df832bae9ff014f85cd57 (commit) discards ca4c03f7fef0d4035013e20e34ceb0b0f0839548 (commit) discards c956cd9acf6f30047b4f5e82f19b6d3984e31ba9 (commit) discards d4e069935251bb182498ed2b6ca7a8037897a989 (commit) discards 34cda259eb4546e5b863367fd2a7f8b1779bc438 (commit) discards c19c17761099321b530a906a203e7158989e1c38 (commit) discards d4c7b08bf72e733f63b10fa989466e3065cbaca6 (commit) discards 889e889a0377d047dd4430cd4e5f7f29d81d274e (commit) discards 27890380d37224ab9e63c9854d3f828931a0b0a4 (commit) discards 6a680df6aad7710c9aca4b01a16567dd3ca9771e (commit) discards d6c2bbcbae15f45aa58f48beaedb8b03714df018 (commit) discards 659c3ac9500c56c2f66302775f2d6a71ba87e943 (commit) discards e0a5d8f871bccbc5bcf4460778fd5bdfbf1957e3 (commit) discards 0ea1a975a8c4873be4529c03a6967b9c3e008c9b (commit) discards 3b59cec219c58289c47311807734cfce2229e112 (commit) discards c49d23f531be40047bd28d0cc248aa6ac47ef41c (commit) discards f8d5ed133d146f00474fe68e73048c31e8359a83 (commit) discards 4da208b7b12d28d6b71cda06158acdb6a64dc2d2 (commit) discards 990df2f2a2f3e2b5f41db97636b96add07a282ab (commit) discards 2a8f8d925fb30143c1a1f7ca22e125515e8c9c74 (commit) discards 86e11c7ecd365d5c1019980ece4056b6d8e4b138 (commit) discards eb2ec05131f8e2a241c02c5fb3e7f03d1d6b54de (commit) discards ed359fefbc80b68c3cdf91daa082cd74997f20e6 (commit) discards f37cc80bffc7f2fabe0ffb0c290cd19384a88b7f (commit) discards 6248f5525545334114f2eed43499a415e40977c8 (commit) discards 63ee771e798fab869db984914c928efb8d5e5c8f (commit) discards 927204b4dad683d7587efb0a855762aa17b3a833 (commit) discards 7dcaab52d45fb58610803377c98b60b6fbbb7bc7 (commit) discards d2fca349aee767267411fa3d8316675b93e150ea (commit) discards c70add604d4dce7692c25bfb29c83b0bdc363877 (commit) discards 5e6b61862fa0a1bca328c690b0d7a24085688f7d (commit) discards 7d315d7e39a710fdf03b07388b4eec105a22e565 (commit) discards b68c4f1dcb517f04d208c892013a35ad562b4955 (commit) discards bf4483a2825783adfd1cbe3fa9256cafe1fac7b8 (commit) discards 4da0681a70ac512367d59c93703e91e76cc62192 (commit) discards 15162ca3106d95b0f867b9a89d9b3a6dd0008297 (commit) discards bf87becbc3d333ee1902226787aca69142789855 (commit) discards 389409be3b5b11e8604429179d4998764268fa24 (commit) discards e7781c6bbdb2074234bb4115fb50ad1c81998255 (commit) discards ac68de2c4e85fc22d468b73c55602896625859c5 (commit) discards be78ca212eeef99c0e4de9edb768750257ff82a4 (commit) discards b00e2bee4eb74ce2153fee23ab7ed052dd5f9541 (commit) discards 8f62d6bdc89d15e7382cb41aed23125e0f21844b (commit) discards 76ef512f4c3bdce8f6e177d9cf1c958f36966f9b (commit) discards 5c643daa6edc597d8a3ffe0fc569fdc6100fd204 (commit) discards 9d07d0f2b1fbdbf0033d476ab348b00ee29c0dd5 (commit) discards 29b9c996900a876060ca9324a2b4d9454005ea1b (commit) discards 64972eddc8caf4663356ae20ad25bb8cc9987147 (commit) discards d4d491ef4c49ce84872f5e7039852de4bdc0628c (commit) discards 7e07fc027b8d409a501514a39d0df2c0d11adfd0 (commit) discards b85e9a8b0f69826ff63d2f3658ce5442b32b6896 (commit) discards 57d720f763f58ea0ab5127c590d4ce0ad9976567 (commit) discards f248cd4724f062c4821d601bebd9b99fc2ba477a (commit) discards a04d50e5ba6bdc81ce2b09d683afbc6d5e1a1a66 (commit) discards f68ca6cec7956a8a152d03d760517f64d3716f94 (commit) discards d13b3c756347497a626a9964e6e5b8945b00fd6a (commit) discards 30b090648301ca9615482838a09cfe1de744a03d (commit) discards b0d35d9e647b105718361b62a5ca230cdec3e782 (commit) discards a5523142c5ecb29c54d5ae45edb7bff62b2a46cb (commit) discards d92c95bc71923f4fcf774fd0cf33d2dbcc7a9174 (commit) discards 8a1b7e7f4783873b0ed3bbfaf2a29b33afe86940 (commit) discards 8ca0c618392153ed9a908563c7bb97b322ea208e (commit) discards 1645a8f6112ede0c970cf179d3b618d3f7091cb5 (commit) discards c41a1f322510eeb486db73a37d115f4162761ce5 (commit) discards 9bec0eacdee5b500262d9298dac87ad13586d8a2 (commit) discards 15c15fc05ad351f1f14bba92c0642a5737c28b52 (commit) discards 8bda2ecb6781d89957e2d4fb65d333bfa1530395 (commit) discards b73a2d2cdc48ca73c4ffa634500edba9d6be47f3 (commit) discards 5615032515324d017f9181de515b18f2b8ac22dd (commit) discards 267f613f961701bf24bbacf335668d77d5fb06ce (commit) discards 193897f7eda7150a4ae8d4de0dec70f2910f934e (commit) discards cea029e066d55935e52e0b6558d8d6c41293c318 (commit) discards 7b44de887d93ce747a8afcfbf8ad4a8691895261 (commit) discards feb71a03a8fe6fceade6974d907855cf2b64595a (commit) discards 44f02a017d4a1f61488a9116cef24330ec1a10d9 (commit) discards 6213867925e250e12d4143dbabc26842a7f2c83e (commit) discards 3b2a58f91633c2eb5e52fbaab4055132e4a05cbe (commit) discards 6eb86e6d11bbcb7a6eaa38de2f79519c7f0a2ff9 (commit) discards 23f6ecadfa7da49b22667e8aca3ad006783b4a94 (commit) discards 3220330df6845547d041c37c1d565b382dcc7900 (commit) discards c5d294cd189841cf17c4953e914e30159dc32531 (commit) discards cc2e948d67334f12926d934ec78b5273f0965fea (commit) discards 4549f8efd4424ac0d8e8b874d30ac5b25c6f7516 (commit) discards 76a39f7a191ec42d90157c7d093b8cc97209c912 (commit) discards dfb74f5255e8a5ef3af799b61fc0721968adbe28 (commit) discards 3255ea60adcaf7c083839b1a3d64a2de09d397f3 (commit) discards 7c346ae68c4094d1b97f564d86f41c118285c345 (commit) discards df2bed8f4d78e241db1664efe44d5e4b389bd62a (commit) discards db4b106b69e047a6242623a418999d51919b11c6 (commit) discards fb3db9f84cf4c7f847578cde49ef8fcdd572923f (commit) discards c3d032f43de99c6e71dc248666ca8fef53c5ab12 (commit) discards 6efd16b3cc70483824229c365f9a966e1e6ee12e (commit) discards 86d0e016881d059056724d21a474bd90a92f1b4d (commit) discards ff6f0a122150fa577a2f37c14ddd06c1b8c387b7 (commit) discards c7770933596f56c28d6dc43d618cab994410dea7 (commit) discards bff2f161d5be2a0334339fd155db304127e69533 (commit) discards aecde43f487e84cd72b74713b4f2eabf4afb05c1 (commit) discards 01eb6be389e2e57838150f6b1ba73b3f67bd6fa5 (commit) discards eea2973be414d31357a3850b0de6219d652d59b3 (commit) discards 1090b107730fac0ae870e6da634fdea6aaec50af (commit) discards 82a0307adb897fa9a746d4a297058d34e422e8c9 (commit) discards efb496dcefde4cd2114375cd363ae4580624cff4 (commit) discards f90335ea40766480abe30239d723b58b2a49cdcc (commit) discards 7e6d0eed6a86bf798eff158ac3f234b09bbbb0c1 (commit) discards ae1c31fc4276c38cead89663cfd660db89de3d3b (commit) discards 9a64b8d559d0123da0c110dd5d13ce5f3a46ecf8 (commit) discards 3f59a446c7f7f874f8b223a32eb47397fabebef2 (commit) discards 8cff10383e6198df9c1f1d4649049961d7c8f00a (commit) discards f59e83c39f91a4d56f0928366886ddc962c27e53 (commit) discards a455b5672fa1c61183bb8876de727731c22ed4a3 (commit) discards 865ed261e6f50705f4db55e7d9a193af08d7f8b9 (commit) discards 23fefd0ba3d758fd095b2e662ade88df2350a520 (commit) discards e02814d487a0e8ab58d8358991eada7adca14cb2 (commit) discards d43b20fb1b6c136548bd60acb74df1cc71d3a8fc (commit) discards 12c11218568d9e2b9b40198813a058ed577b5577 (commit) discards 4a06460d9878b869037bda40dcec1fd7515e0942 (commit) discards 947464f337201fffcfd205c0f0ef39c1d2d00dde (commit) discards 2177c44cdbced14775ba1525c90f5d322b83dee4 (commit) discards 84e0a079c5a03bd6d5c6be186b8c3ba8e443d53c (commit) discards 7f64cc5880012743332070bc908fa875ede019e4 (commit) discards cf3ca1fcdd31e7d0cf36e801d8dcd93b85a236f2 (commit) discards ea807b0f7db7e6b7115e97bb9361d5de070798e1 (commit) discards 708c33bbcc11707f9ac80829aff2556ca750d089 (commit) discards ca67465742b141af67f7c00db3045af12f4663f1 (commit) discards 602f6185809d86bbbb52c6db44092e46ac48475c (commit) discards a6ee00e6ce6a59e07cc89d8502fe3935f18dab09 (commit) discards 0e94a59a6227a4c1fc5ebf343147ce6455958278 (commit) discards 5d0d71905dc79d422fe5ec22111d1062b7d5e9a7 (commit) discards 2123458b2d7eb2c3ab2a7a6275098477de1176a2 (commit) discards ab8daef62e29365988d595dd6bbf47fcd8aacc4e (commit) discards ddf17d549972cb0fa229f62915ebac916cff4ac0 (commit) discards 697aa25068fe008008ff7aac934a852774218245 (commit) discards c6aad8356f66067a17d7988bc039a86d37b12927 (commit) discards 1bdad220b8ef1b335ab36dbf02987819de471214 (commit) discards de3c9d8c5f3bdda60c0711e04238fd392c46a59f (commit) discards 5c1b101320812d9c82025302215a753d50800678 (commit) discards d033f0cc1e5fe673ef3a50e51712c1e7f8de07f0 (commit) discards fdece311757f64d3fb22b214a66cdadccd521a6e (commit) discards a815f790edb4e45aa4bc250bf0b4b89a945c470e (commit) discards d2463278c7760710e1c1913d0332e31fa8f50740 (commit) discards d42fb107b932f29001ba2ac362c2fee319c8c55a (commit) discards 0154b576c4d9bcf98d0ee3964110cd684ba95241 (commit) discards 9f5d54ee3c08429917803a9e855f936c7265471f (commit) discards d5df32261c864bf3bcff71c63d65324a7229ad63 (commit) discards 288909421dc5cc1556c3f51ca497bb87b738f971 (commit) discards 9713a191222ae84f75820efff6618778ca7ce0a2 (commit) discards 3d00a5ef75bd3626a82a762bcfed2f5b01e95539 (commit) discards 73c72935b3eb977539648bd867ec80b09a06458d (commit) discards 5dc677feb2df6c3c79e060bf939b8bf10159b429 (commit) discards 1ba345dcbfa22e7404acc82238fed14757255fe4 (commit) discards 515f2331dc203f56b4c4e7eb2703298ba1116a7d (commit) discards 97f3bfd8b9d9b4cb9ef1d85086883b498e6fc21e (commit) discards a3c35b583f53d7d37ad32d92bf216614a425ab2c (commit) discards 265a5f4ec38c933cbb7212568ce5a3813e50e42d (commit) discards 21d155f0cb279724c595f2ea8fcb0ceda6bce41d (commit) discards a660cdb10ece78f5d19456c07cce628ee47bdf0e (commit) discards 0e75a3371daf0bad47d467fd8168c445373c51b5 (commit) discards 9a91d8a80855a5db8446f73c527c28aecdf17ee3 (commit) discards 9bb68ece44b1aa88e5bb0fbf2f053e96a2fc5a57 (commit) discards c6dcb83b8ea949936ea257b0b7cc0aaab2f2466c (commit) discards c58581c63a990ff54882b61c64249a63a37b9d51 (commit) discards 98d9f6e3e107a5c17b03e3003d7ab92ffdc33677 (commit) discards 5e666d80cabcae57555df81df15cd2e70177b865 (commit) discards df01a380f0a1586629db9445173650fbac6de31b (commit) discards 391654193b2be0815c0a546ca0a9a3d6a092af8e (commit) discards 2ac7065953475fdc254e2f64efdf922ca1839229 (commit) discards 2bdb47b2c3d2848175cceb4b6adfd88ef8911bac (commit) discards 2a7d72c38f023c6a8491f11e9a470fa6a8f7297b (commit) discards c58da28d5cf9bcc4280096493d4fc4361fcb175d (commit) discards 6b98d152fa2767eb11528dbec0f5741ac02d2bbe (commit) discards 52fe99979c62f63a26c836d2419d40a072710b44 (commit) discards 9c32070ac60538282982236ec4c85c4dfab6b3c2 (commit) discards 29f92485f1792cccd84077a0c5f5d452ba2a85aa (commit) discards 9a6d37950af7a360578102c7d26d93c827e32d4d (commit) discards d8b6a60f55755da95774d796a7712d3e87056e43 (commit) discards a8edbcaec860a4405bb274a089e313f52236959c (commit) discards c8645a323f11242bf71a0c8c99750315721c1d70 (commit) discards 82cc543238b2b5735ccbfa6938d98a14634cad19 (commit) discards 76b4b594e096249fac2b26678ad2d48985574088 (commit) discards d41c3ecb89233857b92e494d00e89dbd315376ea (commit) discards 8f8db003453933a0b468cdf5d58bc6b11cc98b3a (commit) discards a1e587bad3ecbbec1d3b1d559a956dfcbc3b0634 (commit) discards b1b54ed34a6c129445f056bd3ab0ad590f45b774 (commit) discards 76a5304936fb32fbafd4de00d74e1434c140b865 (commit) discards aab516bd77dd9922541fa911961a60756f035bd0 (commit) discards 4bf555b0f7635afde86a67cd3ef9eb2ab83d4064 (commit) discards 67f9fc26bdabee44e94cbaed52f2302f47f9a2d5 (commit) discards 230e5355966deb3920f4399010979207cda06a27 (commit) discards 6b7cb583a2bf70aa142b3824330e920ecc47861d (commit) discards f414ed162d53df1310ee02a8a8519aaf3eb6243d (commit) discards 891a6b335167223820d60dfb9a7b117e6e1077da (commit) discards e6ad59c82112b8e2c9d1e9cf21b2ed62efdcbc39 (commit) discards 236f564453e360fdc379d067d5a9734aef84c39b (commit) discards ad137b5af4f40f7c07df7da67684082c5e4a5012 (commit) discards 86777356c5ebfc43fbbf5aabceaeea02d6b3f84e (commit) discards f0fcb0b3883272097f98c16d3ae33f13511b5864 (commit) discards 3042e27a969b11b13a9e742e0b8d7ec662e0e350 (commit) discards c00ead9f5516d9d84da5bf365bf9d8345e1d347b (commit) discards b2dde0459e93b316d1c9700a466b9fb78c0f1c4f (commit) discards fe1b22fc00e60e37e88eacf31c369018f3eeabe9 (commit) discards f3f7acf67d013c432a610bea29d7d1b3b80a1150 (commit) discards d13e65b3db32a6060b833e96024a1526998b63ea (commit) discards 5e9dfe5a8dfb20bea7f219edb7b740b6b9ee6864 (commit) discards 677d66d06472560a5c9dedfec73e093ee40db2c6 (commit) discards 6fe28452898c3fea0bf021cacfe0885686e517dd (commit) discards 3bce2ae4240a701c7e05cd05514d0ae9443ce778 (commit) discards 4d674587b102aa008d08ae8575fb42d2963b9ddb (commit) discards da1ba8eb418d6f08b2d21892ee83a82626da4663 (commit) discards e4d4289fad046ad1cab28f6abb144f609c112157 (commit) discards 656167c3e0eb06ee69b2e6ffbba82bf0f385618e (commit) discards cdcb21844397efd56862fd4fad67f4b4d8045f6b (commit) discards 264d65529e0487d0af19fad578a92a28d18e770b (commit) discards d91dc129c690510c32b10bbcb8efe17ebed72455 (commit) discards 2928ab107e096ade189d410433311bab7298740b (commit) discards d08809ae30abab134b1eb375124eb08f1c5b1bde (commit) discards bf94493bde831b47d9f6afed25d7a5b701607f23 (commit) discards 466abce5f276f99678137ea06f6a59fdf26d563c (commit) discards 5484291dfcc5cc17c97881711d71b5f1cadfde6a (commit) discards 480349b681ef2154ea3e4784dbabd47149a7bf95 (commit) discards 72edefcf8a04d5ee9404cccd33090dd0d2025005 (commit) discards 0bdf24548b2059d9e11520f2de492b4847aefb8f (commit) discards b7f1ba1691b6b49947eaba55bf506ffc63eafa70 (commit) discards d6a34e781a210d3c9794d62ed53bbd99d3559357 (commit) discards 3b0e433bd1f4da2e5c4241e6dc6b8a890f27c092 (commit) discards acbb29284941bd549fa9fd713dac9e50ceb6e58c (commit) discards 82d7acb3cf014a9760341363a8e652e7a1440d21 (commit) discards a9d6a0926705062ac183f8fab1cfa14b900a70b4 (commit) discards 2ddda7bae332030814b8f17cef9f4ff41209c8e6 (commit) discards cd6ee040e9e2aa4de05b7ce7d12be9f51f204e85 (commit) discards 3fd185d4c3115ccd87d9117bc89a187a08859c36 (commit) discards 719298b41f47721d3efe2a0bc33709db82118ee5 (commit) discards 34a3df2f3d59f62be871db543f975c3a44b1cf30 (commit) discards 0b074f88f5e152bf8de75eae96982e2ad9cc3b8a (commit) discards 8ffd7b931d065c5214d07216c7d478a006a5128b (commit) discards f9daafc39eda5f9e48ec310e902e21f508b03e00 (commit) discards 890288592800ea037c0e176329a02492db4df226 (commit) discards 90db0ab1f178901caab463d797b262f015407cca (commit) discards 47485f0dfa70754c6ff54d297546ab4b9b79fa31 (commit) discards 4ba9e0cbf0e93f200535e6c20e71728390d2b8af (commit) discards 8dc17dc8b327aff448a1e637177f5c6d51b572f9 (commit) discards 7b53ae4cda37d9df6f9653e8203da610be1ea4a7 (commit) discards c9a46aa4a57580841525a231a37ef47c49374491 (commit) discards f877254b91e3a02544999020cd64baa6db8e7e56 (commit) discards 63e53d45191fe3ea196112fa7bd2dba6b24e188f (commit) discards f9dbfe2687a96242d86073fbbda18012ceef9d79 (commit) discards d3e89373cca5afb50cdf04f4fba087daa8c70fa4 (commit) discards a8a2fde198926b3bac40f34f510fdc821d51e8a4 (commit) discards 65b164123edf4edaa74c7a0fdd6852f49d098f7c (commit) discards 6e7305e92f0ddedfe6eedb475d2eafb3f208d26b (commit) discards 35bcecc0482cb85d42296afed8f26118721fbbd9 (commit) discards f9a511901132f9adfec51c58097db0aaf26c2098 (commit) discards afed2be65cc751881b1bd24ef998c0d9df35fe75 (commit) discards 6ea42d6a63567671bca372b1abfa02d6eb907066 (commit) discards 9a73e75b6941f1a2c7c11afb7f2b1ed0445786cd (commit) discards 32aad371350c80207c55f72bcc146613f3841020 (commit) discards 995835be03b141a2c760d0f66ce1121c80793863 (commit) discards 7706df9c17961a41b2318d171b09dae3eafcd93b (commit) discards 95a7129893fdf3b70c012969406abfe7455eece0 (commit) discards e159347b18e9b20adbe59723d8e7340c7154b982 (commit) discards 4f4eda6f14a3753c392c0addc99b3d12e89e3b51 (commit) discards cf79de9b35c306ee2317c71d14ae8e2a9f7c374e (commit) discards 5ab06dcdbddae0b3357fddcbb7682b5af7a3b60e (commit) discards 81bd110de4e4e6a503ff348bb16af1700ea9c12c (commit) discards d39df852faa5424913e350b13a53232aafbce1fb (commit) discards a4962595835d0496d7a8fe5ba5f4290a41e07099 (commit) discards 46b503d3f72e3ea69609f79f84a94b5dfc868b07 (commit) discards f904dd1e6af8208ab6f931f6580eb9eb094b82fc (commit) discards 1b4883412b9a507fc969b9ea3f8f01c54a6eafeb (commit) discards dd92144a268d54a790e4c5fb609d85a2e21c1f4d (commit) discards 16ea4be99cf2460abbe432e82971ba14816867a2 (commit) discards 6c9d33562560333c123899c8ff3d2cd47fe386a1 (commit) discards 14d771da2db3edad9b47c7565de805fab0c50ccc (commit) discards 20bff46023c05ee2949aebdd8221c4a4c1289451 (commit) discards 1b1987b8d8d572da275cd0d028bfd19e66a7a6f7 (commit) discards 0f1aa6e639751f787096e66ea266958ca57a864f (commit) discards 7bf67118463e1111560f0c8a62d5064455819365 (commit) discards 120e11fe8cde02a574eb972c8f98cfb6d7a67648 (commit) discards ae676e46af6dab626a76c61a7be8ddd158535fa2 (commit) discards 21e224e818871f074ba134faed05409c36ad613b (commit) discards ed00a808a96fc7a8af43f84b5308e3efbb30026d (commit) discards fca624ca534f8a86c120106b2f3fa65327817a53 (commit) discards 789d893af26dd8ef5e3a7de01b3a66767bb3b811 (commit) discards 5121f1186304dc2cbf1b2212415c680d66dff6c8 (commit) discards 8a9e9100d40cb42a3c508407afedd2e3ba8534fb (commit) discards 433911d990eb0dcfe259c208ec0ba3ceb6d93dd9 (commit) discards 93941434b756449fb7711d4aa06f44e11a90be86 (commit) discards 28a11146379a6bad5729291def6b80ac678f0f87 (commit) discards e7921fa876e4de60d7e2201d07132cb6e8a61579 (commit) discards d6f7c3e1bb3fdb0eddf0afd1b9ec3d64a173c000 (commit) discards 322cbd4becf47836e96bb205a00b49886e97d64e (commit) discards b8b3214f0a3cb78e84c3b3c00547ab0533987fd3 (commit) discards 2277af9de5a7cdb3d700746716f88390cadb4fb2 (commit) discards c24ed856f76be6d3c6f41ec220da5a6325e02637 (commit) discards c20f95c88000a5f99c1d3e84bc52d5f5de82cece (commit) discards a9c57286338131f1109bc73a7527c2d1bc19b3c5 (commit) discards 251827cc2801b7345239fe77d983371bfde438ff (commit) discards afd97471ab39ab780ae72c8477852ce09df0a2e2 (commit) discards f38d80c6e8252c2f299b7fdab99dc5f20994a219 (commit) discards 84f2cba57e2fe3ae13ffba6ea74c0e7faa30504d (commit) discards 495ae31f63c65c362d6633942f0f2dff46c68f16 (commit) discards b3b133e2685bb73fd7ec3ed75d88cb05194f57c1 (commit) discards 7b85d450e44127590bb7be47f845e2ab5a0cb4c0 (commit) discards d7daa15d2d4713deda0e719fa2418d8595d6177f (commit) discards 7a4e3359ba864c7dbfdabd3f18ebee893071d5fd (commit) discards 0a8b0e694168715bc9d635aeed97dd14d1440924 (commit) discards d74ea44cfcde02bd8ef9b022ec9713f7e65d0c71 (commit) discards 199c9cf26c8bfb36393f1b583a52839ebec011c4 (commit) discards aa2407c8bcc1a014f1b8730b84fa9cd1b1a2cc22 (commit) discards a803eac6cee0e79c96495780b5b0b57515a2af93 (commit) discards 76e941e168bfd669ab01c51ccc09eb4ca9750abf (commit) discards e672b002ae71c8225559731b2afd37a166c9d1d8 (commit) discards ea1afd8465047bb9fc5e17525f170c21c1e0a27c (commit) discards 1b9bcaabe6e4a190a16271c61d0efa839b6072fd (commit) discards 7c3857cb076e3250e364e9fe2fe46bca78be7eed (commit) discards c3a2d5f6aca298c843e9d093897a577c281a899f (commit) discards a9059d65295d391afac105d8ae18ff2223f1e8dc (commit) discards bd37441d5f5f8fef873e84891f973bec731d1c94 (commit) discards 853f712744155faced9dd1d4a17028384cc6956a (commit) discards b514d8bcc993d7cf516d2d9f3ebf627555ae29e8 (commit) discards 1253f0f9b971ffea3faea2692af5fe12bc9ce648 (commit) discards 98d16fa395b87816f24df3eeb29dc12ee9bf49e7 (commit) discards d66028f0df53660e779fdc869e5d3d43368aadb6 (commit) discards bd97df988bb1ec213ef964dc4b90d300d5d74fa6 (commit) discards 5589b7d7d5fb7f6c8d39063767fcbe3b99d1f564 (commit) discards ceca5ee4acd180476a12e15fc86608846796c783 (commit) discards c59de1e8cdf53bfa429a53f7875258c7893f4df1 (commit) discards 1676d12a7206f87deb4d54d5826315165331c764 (commit) discards 0a0cc86ff2ebd8bfcebcefa5d5625e6e7ca6c313 (commit) discards b7d04be946eaff2b61c5b7fbb8d1fbf09cd557e6 (commit) discards 1e2d032fed6759b0ffaed25acc966df40a3c410b (commit) discards ca6683c0694bac1ae8a20235c5bf0705f8e0e323 (commit) discards eab6e80949d92bcc3cf78849a2636c1b4f1e613d (commit) discards 5f30c95edfb4f761c82d97b885528aa17107665d (commit) discards 2d680153c09c3a59346adffa30ee20b284abb3bc (commit) discards 2dd8cc44832ee6a3eec230c9cd15eb12a47443a7 (commit) discards c0b0649eeb6fc4f8dcd55fcab140668c2ef61f4b (commit) discards 1ea1443cb422c97f989919de5227e9a063500302 (commit) discards c3ae9da0c6588de9abcbdaf5e12ada68f8e3c06f (commit) discards 045f424da445eeda2ba392b68b2984cf08ce219a (commit) discards 8a4a6907ea782b0ab399a1ec66ed212b44408b6a (commit) discards e26b755bc0a3701cf454613f32da3a209a704290 (commit) discards 7b67cdaba183f4ce2c253972d58ebbf27eb7bef2 (commit) discards c41f18c153db0ac14804982a9a61f00134903f25 (commit) discards 7b1cdd862f9a01e4a233a618f127899bed6b7ce3 (commit) discards 0493da401da8fc6b750a30ff98501b6d48a9ac37 (commit) discards daa01dad7b000b442ff481b16999bb0f4b01e44c (commit) discards c3647c0c9b8b8627b3da7d85c6332f1a0e7138b0 (commit) discards 2fb7ce0510c6cd8303d298f7cfc8425e51e46270 (commit) discards 71fc22dba746242f93bc6fcebecf4e4c8c4660f8 (commit) discards 6171a7abe29e469c8d1cf1c31e21dceda24f172b (commit) discards 54be609b1f46e5b4544845e341cda85eb809a8ea (commit) discards b35719e5351d8ba3258b6e1aa8a4f43538e6a01b (commit) discards e215193f0a27d19a2103cab5a19c1681c1257a6b (commit) discards 3c36bb3a0efc663bf6b26916c4c51c2b05ee4795 (commit) discards e97304b17147f6be630de6a228cd9b2c4ae83c4a (commit) discards 53d0067a5ff6e4f50ce5f165c120e07f3966b878 (commit) discards ec52c467b144c15a046dd90c2bad27b4446b50fc (commit) discards 803a3fc2fe8cdbcde6843f7654ce62ce97d0db0a (commit) discards 225f267f076cdad47558b06675631fc33d34191d (commit) discards 6ce58326b3e4333e531774b6a565e339e2864037 (commit) discards 50ab6ce2b58db2326542fcc4aa5f5f2f265394da (commit) discards 5fa190ac3ffbdca88993c37409bd69965d835da5 (commit) discards c0795aa3b92fa45327819f4e624b47130c1f278e (commit) discards ecf58bfbfc746ba2ae9e512794ce2e88adef2190 (commit) discards dbf41e4b9e41704ea0c0b40bd61e21c8647f1b28 (commit) discards f39baea8745ddee088dcfdf392966ccecea8d1d9 (commit) discards 5c5d83c996d5cbbee6d57b1b09f41a24f7e809b8 (commit) discards 7ca9ac40d619d48792f5c2cc35c4c2ca6dd5fef4 (commit) discards d8e425c37bb9c0a3b3bba8651eedc3646c421067 (commit) discards eeb0de0af58f287c5c03a2a2655bdc2af404feb5 (commit) discards 7591d9844de80652b56d88a99d1a718c941e7d8b (commit) discards b167bcdd568da5572fa64b1f1aa4f94c424c9073 (commit) discards fef5e64031e1e2834be468df3ec4eacf2b0fc9c9 (commit) discards 6b8513cc23433ca3037560b525206aa719aa8ce0 (commit) discards bcbd621366047f40928e8e8245de556cdf57ab0c (commit) discards 3a78c6d134e1abd1f456dd8802f6d9de3cf72199 (commit) discards 56993e7ab8fd7739bb4d5a57d5118f586a280f46 (commit) discards 7e2bff62b95c28721f8d5a558a16f91bfac86ab1 (commit) discards e4db3f81ebd5cb54241849b602395106f674864b (commit) discards bb7a0ad79b00307da073c5c34a92173a92558f2f (commit) discards c5df7d10882203e1b6ef34e1fb6cd1c42036afea (commit) discards 82cfc649ad24111fa433813886992ddd807af638 (commit) discards 4348fa359a3981c2c5962f14a650ec2eb89421d5 (commit) discards 3257a375975e9ddf5719a3f95312a00c6833fce6 (commit) discards 58f262804f3db7d2b0b18bddf2825c0e28818382 (commit) discards 18643c0e9ce0f9353ae6c8899b22c32394563282 (commit) discards b189110d93a399aacd2b2dbae20d089b152b9807 (commit) discards ed3c5ae3a121e1f7e040edc6309b361a09762e16 (commit) discards 000dc4c2141e7bae14b677137b8771b469d00ae1 (commit) discards 66fe82a3adaa0c354c9907371f17c9caa0471e85 (commit) discards 4226efedb00ae3efe5cdc235f782639133bd5320 (commit) discards d51468737169c6c4b8b988d76692a0f8fc390b26 (commit) discards 5ef3702cef49d16c0309bfa6d875970211ed0752 (commit) discards a52d5450516bb2721d807769c9a817ddb14dded5 (commit) discards 632289f509672ef9ecc620eeab03a800a0bdba63 (commit) discards 462862131af1d46c8c98e321c45352f3e64985da (commit) discards 9332aae15258ababc3e796d5d48951d6d2962eb6 (commit) discards 808f65de9838ccd778ef4e5dc38f4acc52cc682c (commit) discards 1c8cbcfad84ae237c0c149d1b5e0a4db5d7547c8 (commit) discards 2a2632293cda2e1b7b8bda64b7d79d36e08b032c (commit) discards 9147af1821cb5017db1230e2eda38ffc42ccdd83 (commit) discards ec36e1c2afe7c8258588dd51a9fe75b7fb523206 (commit) discards ef164864bcc990f1c1bbc1ff69e4b8021b0586a7 (commit) discards 469b2503bd0c57820542f6a23df58b00252de7b9 (commit) discards 4d0bc3222cf91c647a3d9f00e370a9ed1156778e (commit) discards 03519a582873578b18afefa74b71a6bab6e4ea02 (commit) discards f889ba21a6d4688ebeff8cf36e4cd6f9f83f7a26 (commit) discards 33bc5a0860a8e488f7efe6a891ce8e5161d9ac6f (commit) discards 37745c881a2a6f3ffdfffdc0cfc5e079152692d6 (commit) discards 9c77dc227a7b1505dada93ad9fba777fabc08f8f (commit) discards 7c767fe68dc8270f2e84f59071fc6562734198c7 (commit) discards f0771cbfc800aa2cba5b25f53eaffac54569a2c7 (commit) discards 0f0ecd0c41a70e0ffd82ab7f7d15711162adefd5 (commit) discards 6c3c6fba6665be00517b42bd88554f528d83c072 (commit) discards 29cfa91316a76e6bd5ab5b55bc2d5608bdfa117c (commit) discards ffb74d35ace0902289246bb5cd08341effa34cc2 (commit) discards d44666034be9db8cd76a407ef3b1bd58b706ba10 (commit) discards c2a87deafe277348e7fba5ffc55d67f7624dce9b (commit) discards f77a1b1f89fd74036cb98f1d0ba45e34d8c5f02f (commit) discards 04fe52caa011df0276ada5eab6e169a65e103f79 (commit) discards 69e3988fa81203c219d0ddb8f34e4ab150e53b0c (commit) discards 8b4de518cd3aae71784d8887222b9282ecbdcff8 (commit) discards 678e142e233acd0ce2106f44f6d33fa27842abe8 (commit) discards 41d742d270e26f75fe45b7286d44740673c2c41a (commit) discards 120acb136fc89bd0ac48742e15a07e3bd1fabb91 (commit) discards 85a805182e392fd18fa50b69df559812886f0a75 (commit) discards dbe4e8901006400892ce5181f7e723c46a4af260 (commit) discards b1dc690974e1f447ebf7e9e89eafb88eecf7dc8c (commit) discards be2387778e4da19c8c4fd5466c9eb4c3d424fa29 (commit) discards b5723112b788aa93d9af9170a3795d0efdf2d514 (commit) discards eb695ff8a578bca4f114fe9bf9660595863cc737 (commit) discards 24234dac3900cd65ede213cf6c34ad671d506fd6 (commit) discards 72312c2f406b1b52920089c1c646d299a5d8ed22 (commit) discards 020067ab50ad58bd03c73f9badc084047c7ed00b (commit) discards b980eda87c16ab0a88fc499b6b4fb93ec5db2690 (commit) discards 8b59dde68050931db8ec4505ca3d996ea501a877 (commit) discards ce2fe7c890188eac6640a03d915e0baf0c37f99e (commit) discards 80c5690bc3c3306f438201eb45c62d85c523baca (commit) discards 0f0eaf3f5ad7ab11b24f1fa4d4c9b31a4d135337 (commit) discards 4897e25e292303eb64b0e37f03d977ad3c78456b (commit) discards d12a844312b3b3878057dce459718c746bb07970 (commit) discards e0218628f30aba33bcc75affe57ad44acb71a120 (commit) discards 8a066807d225fc5acf9265b005c9f12443619590 (commit) discards d15bc29276a3131b32931a3223776754e4256234 (commit) discards c70ee23b7708bd0e1749812bac74d92587a9099b (commit) discards 5837e3627e52761e34e72103bd37a0ff6ea256ef (commit) discards 0f95a67e01c7d4d116b51fde5ef3cef1aa0c0068 (commit) discards e11dab0b6b29192e1a00e439a297c50a98bc3caf (commit) discards 77df96c3cf6595b1b4a8559ab20ba706bf6ccfb2 (commit) discards fcf5795ec8f7e733f28e97bdd93a7ab391b9e24e (commit) discards b885491276d2e121ccb72e815792ca142366b857 (commit) discards e544d90343811ef6d48a0e877bd8fc12181ed8df (commit) discards 9e15a769d0895dc665e8f28252a589a953c36901 (commit) discards 1114d9f305c64bee732bc38bfff945c1ba778150 (commit) discards 04d9a117c5e90b8cc2805e7ff29fd61a8437280c (commit) discards a00f4b6820996f47e365d253e7278e12df4542a6 (commit) discards 0fc2fc4fab75501e36ea12c78ae1a7723c1e2f3a (commit) discards 018f152358e7b27ee82b2b2ff1f4b7327b5f1542 (commit) discards 2a5dfeb05822f185c4daf69d6e0bd6686cbb6e3c (commit) discards 758386d8e488c3eaf51d7e3ee775a74cb788c3c1 (commit) discards 90848be9b04ddc898fc88d7c41bf16d49b57a1e5 (commit) discards ef81b2c85442d16d9e5505448d600593071e21c1 (commit) discards 5cc8bff572de2d534d89c0b8cc3ce2dc75487b72 (commit) discards c9b12dc066106bf77318736716463247980ab013 (commit) discards e8d1f0c6c56c4afa5873eaab372dcbf774de93e0 (commit) discards b4d68f8c2bae0e813dde174dec397304697717d8 (commit) discards 0a5164d36da4af84059480257adc617ca4681bad (commit) discards 5372fb07a7b355f780eb5d7826b0d6e10909c5b3 (commit) discards 1f6015911ee8a0487b1c002276e77240133d37ed (commit) discards bc8c579087653af40ee8e6f215f327f3e1ec77a2 (commit) discards 310fb4a0aab4b97950f26655c226ed6f938b6e60 (commit) discards 2750b1a94cbf38b4fe17b154bd9ec879108c6288 (commit) discards 4dac9953188a771eae2f23c0bda041cf1e1ab439 (commit) discards 0639b23221a02676e1162f74da0ca7b346b14904 (commit) discards d9ff85bce891ccb19c922e2812f16d58a8394a12 (commit) discards 71f43471402ae1939d29f27748f42be88ac8d837 (commit) discards f7974d44f3d5f1900470293f517ee214d21a2670 (commit) discards 72b7d4d2bda3ebc53d5d387b22a7b7b03a48d9ac (commit) discards df15a2d74e6e7901b25d042540f4f4a6206c9e07 (commit) discards 9d43638bce090b3edb986cdac6501a0bb1e5942e (commit) discards b0b0fe38d9bcfa1f453c0b01390d73d5ddd9bb87 (commit) discards 52476c444975b4313ded35391a9c360964273501 (commit) discards 5633c9d898682b5a92e5411c205f6a7f888b9e42 (commit) discards fa94cb2ec039960e57f9bdb49827571fc637a8a7 (commit) discards 23efd6d2e8de39ebf0932de4dbbe3df193d2a27a (commit) discards 1b46357be022c1925a8588e34dfe4ea10f24a14b (commit) discards 3c545978e5620059b1c62491aefc185ac1bb8c54 (commit) discards 89fa8b58c106a2bb5f57a0ef56842a67c2f28174 (commit) discards 4916cff87df8e8bc2e4100f6850886f367ba3c1e (commit) discards 4c151f5c862dd8bb968063e4af2357a7a67ae69d (commit) discards 8ecefbf3fbd76224f40c3696046280a2df29d7a3 (commit) discards 58dcfe0f4860bdc5d2df42912ac03d5ec24d858d (commit) discards d94e19a4c2a80894b7be42005b8d5b5df5209701 (commit) discards a68cdd9fed5697d742b213fc150c447c70c9f9f9 (commit) discards 96d7e9b761d6d96b7863f8303cff1ae7e59dc132 (commit) discards 701ba9a306b1733ace9b7eface19bf4cdcdf000d (commit) discards 4513337a07eac21eae37a8e068e42e117572b640 (commit) discards 30cd8dce874e234e57cb2b4006971aa9d8bac2f1 (commit) discards 4ba28364d51fbd2cbc752fea14941c059108fe00 (commit) discards b4ef17f26419a00dc6cad0e9c9319d1983235a0b (commit) discards 0a0051546bf34d2010b2b4c5f2b3893d25150f53 (commit) discards 73c75c5c88f99cfdb1adfd40a8a85e39d6f641a3 (commit) discards 736fffcd624efb2c3b95a25d36437ecbf3b03839 (commit) discards e14e822cf2500a9b592279c4a564eff6390787f4 (commit) discards b08923ae4bb0cb8785f379b8684a292e6c9c0b5a (commit) discards b8f5b4bc95f5c553aa4928daa61260203c822aac (commit) discards 0dcad03e8c4c1523adb63419cc067ff1b41f2382 (commit) discards 44a274634e98739c2e0de7d5b54611a85d871c60 (commit) discards 013ebcd957d212d044099513acf6fcbc54a0e0cf (commit) discards f84b904da5b1c295ca8bd414bbb4b80003573de1 (commit) discards f9bc18215774b208b9f9b6d8d41bd67130b86bce (commit) discards a90e3aab36432ce48e957987059f27c9382c6fcf (commit) discards 1c5457c3ab2ff705e1992b65932ef261ed5981e9 (commit) discards a0c0287177e9ee3f34a92aec3f70efc9f64b159f (commit) discards a65068240e11dc6f9cc29b0edd018c6a2f4cb560 (commit) discards cdd1d35961dff13c522e72ed4730f4407410f9dd (commit) discards 543debd6d2cf63c6f5f5b2bf3b5b5c614bb4bbb5 (commit) discards 78c1535a1f54c3a56c22b7118197372a4286b859 (commit) discards 4061dcb0e16cc49aa3c51076ed9bfb3981b0002f (commit) discards 2c16cd78f168c6e7fdad9e3fa65b551b5fe7d2dc (commit) discards 072df0f0ffc41016e39312db0229db059f4680dd (commit) discards 5ef5fe30bb63325830f7f97710266abd780b227f (commit) discards fb59b23ad5ef38d258fd0ae76a68791300e278b4 (commit) discards fd94816124c93d886f1c2bf2417d38eecd594ed9 (commit) discards 629ccd2d7badafc8c1cbcb89156f953ab532cda3 (commit) discards 8bb140b9caa41c5ac5a668e7f8f422eef0f36f19 (commit) discards 9d3102ca2bf3623efc64a9d04767be0e8b80932f (commit) discards a8220764822a8374a7fdae62b7357e4fa9380174 (commit) discards 462ca60abfa161341ef97c016ac74ed5b2139d51 (commit) discards d2e4161754e8efff6921789948d648462896fe6a (commit) discards 7d27a6dc3bc738029c64404e15650d5e6b52dd28 (commit) discards f29c7f550e813748f5de2450ce682f3dcc34386f (commit) discards be93c3fe1b533541d1e7c77b9b8a621653730f26 (commit) discards f0ab53baf27504bdd740379d6634b5f0b555d6db (commit) discards e4483008e5f61b0bfb9f0d7660aae38d2baafe4f (commit) discards d270a23c57dee6f5827cf3cbef64ea223d637cd9 (commit) discards 5095e14b20597f1e73bd7d892eecb514a008df88 (commit) discards 61a3df10dab68abd2a54070d38f998835ab0d719 (commit) discards 79d8534918d16221130115259c3afa51ff97323e (commit) discards 32931f681db4ac02b9a25656d2f4fe8d6e4f43c2 (commit) discards a5ac2c8c66194e177ba45ed328c1fcc0fbbda143 (commit) discards af169422fc642a45e32a1b40e09a8ad91615777b (commit) discards 47374d622e9f0543875c4dfca4174ed60a19323b (commit) discards bf2b06bad6dd328e707ef15f48d576a5a6cd811f (commit) discards a2ecf91b1c5226b9898757d3689a616f97a7ac6c (commit) discards dfddf17df79aa61b1a305d0480ab8c1b7f95a5c8 (commit) discards b35641b094fd937b773a2d5b32f9fcebddb23561 (commit) discards 224ece3d2e7c8b4d5f1b8b0ce7dcd623812597d0 (commit) discards 89dcb01ee34bc45f43f34cda1a72fa3abde7a153 (commit) discards 472f9204eeb6eaebf3c26e1e6404bc023149cbf8 (commit) discards abf873b4a6c98cbdce4d7ce46ecb78bc53f65e88 (commit) discards 78c1ecb2ad1764c1bba0ae7611f5e1fcbdc711b0 (commit) discards 81deda391e459e271e14a4759838c9b6dddc37bc (commit) discards ebd81079a5735fafb10f7902720ed88e7dadc84d (commit) discards 705f2acf56b79ec0479fb652a143229d954c6769 (commit) discards 98bdf4a06ab89ef5d992827f7493902eee38819d (commit) discards 8b8211a2f7efd0b8c96b7c44cf99d4d11ad1f8d7 (commit) discards a164662de75029eabb903dde17bb9ce54e367c9f (commit) discards 5e10724b877305a5a3c563f375d25937789935bd (commit) discards a4716b6be3027aefa1d539d6f8077137269e30e2 (commit) discards 3c3589e1146a91d21fdaeab342886a1701647626 (commit) discards 2790ea0e0a6cc4db94497d2e27af32c6d41b2f04 (commit) discards 7a3f36116e6ebf5c5cdf18939999ddbbd920ac91 (commit) discards 07f0c956c81873d7ab20a8554b96224f71f09084 (commit) discards efe013e51343041062b2f4e1ca43757c8ddd179e (commit) discards 692120de6b6fc2a6970cda14424188487c405cb9 (commit) discards 45c1f70e6cfac37e5517418c0714e5b5718f6e60 (commit) discards cfae69933d110209c140c35157f4ddef12921b88 (commit) discards f1c38352daec884783d4409f4247a8da8035ceb6 (commit) discards e660fb035c9764bcf315673e12ee088ada44e16a (commit) discards 7b07b100947bbf3d30edd4b7d5b3e3a9bc7fd6a0 (commit) discards 4fc9c22fc8ba945ab16610d269710f412cb124e2 (commit) discards e9d45cf5bc5553bfc839600d310f9672b1830866 (commit) discards e0f9c5a4bd33bed1c7de8e4956b61cfd13de4c18 (commit) discards d835b5cd6e41ebce97bd23196eb6ec999f822168 (commit) discards 019c552cfe459c734264a8b1ae16a759aafe329c (commit) discards 624f2a42fa9f119d53e4462b67cc6bda362fecfb (commit) discards b6fbe7e648da01e0a5ac5782c7c15800b1cab8d1 (commit) discards c935e3e56d7fcaa85f04bcc42b1a27010a720ff7 (commit) discards 79e64b74686c57e1fc74536a1b3909994c2eaf9a (commit) discards 53686e766b2fd0ec2d1d9ef7e2a6313c86b4b3f5 (commit) discards 095040877ea8ef3bc7d4342332edd33088ce5746 (commit) discards ad8accdbf187327b4477cc55b8bde7d402800772 (commit) discards 578948e3531e17f5a1c49eecef45b02ef8d37a8b (commit) discards 22d4b85109a9c5e9b56c73e08d92b5722b52b05c (commit) discards 015bbfb551db2dcd11900a60cf268c0b8afe5fdd (commit) discards 137dc18dbe0d9e319c0c355f39677fa6639f0863 (commit) discards ec9249e11d1cd7a460d1e14bfb593b0be560f28c (commit) discards c111642e9d01ccca9b41cdbd84b893081c10be47 (commit) discards 580b668d275e294f486da1740f8c1891a98923e0 (commit) discards b67cd9793939d61318794583811d4539a2c12b4b (commit) discards 67c05f988bde7ff47f1da767a20c1a9f1e771884 (commit) discards e459c5bc57f9ffc784a67ea04d207c1fe0d2f301 (commit) discards 4ad38b3086a357647cc172662b9e5a1929d62d13 (commit) discards 84af91f9e53e6f0f5a091e357542b5a255650183 (commit) discards 74dcab9da0ed21e68082b0aef8b48fe37c6b62ec (commit) discards 7cda68d1f7df6b144ade0b7b3011c1e6609b462f (commit) discards a0e58dce45943b079f3ac10dad91b77ccc7dd3ca (commit) discards 349e6373ba51ba9280161862e82dcca02d8b5483 (commit) discards 9867e1d54931982711fc76b9fe3d6e2cdd481a3f (commit) discards 76dad3f5e66a5574693d7f43eca9b3b26833c284 (commit) discards 70242203dace52753891f57bc4ca3a48acce900c (commit) discards acc1e1d9662fa132ac1f0f4a5988353dec155a9b (commit) discards 06b8c8f9e8b3686b5fc65eaf414d673deb31cc90 (commit) discards 4b558b4fcf35d45b0d5996e8e1632b4213554991 (commit) discards 6dbb030369553f7ad5f0ca7494d54b3cfb92e9ae (commit) discards 4fdbef3baddf9ba53c0cb3d3f0e2436dfd322ba9 (commit) discards a550b6cabe68601bd5e99552bc47b52a92832314 (commit) discards dc7a5dbe375f4361999e3e04f011dce93e2217e6 (commit) discards 621450b6b9a67572e9221406fdf5d8fec530f098 (commit) discards 0a2d0f095d45ba27a510e2722324b7874541eb52 (commit) discards 0f04826ae48f4daf0449383dcf99d1f97d41a6b0 (commit) discards 97a535774ed70d522fcb418fb3971b9e2faeba56 (commit) discards 846c6354d7bf0a849508600a204cc31b6fdf939e (commit) discards 219b4d57f48d9089f2a12a0503218216eebc2749 (commit) discards 807ca28ea771abd34d807d718fb72288db52cc4a (commit) discards 30eda284766f122a1ae6b413cb051b685cef08e3 (commit) discards 7e884bd6b39776622b1f1a405ac0809125d8205b (commit) discards 1689752965905373b84d547658877e97469e8031 (commit) discards 562a7b835a999921cc395c76fde720f94d0547a6 (commit) discards ebac33c84bb11f9fede15a5fc2d929ab5355331d (commit) discards ae6c76eebc499d8213a991344ac030c90ed6af71 (commit) discards 702768c84b8622cf1dd1cf1a8ce526d7c0ba4a3e (commit) discards 038749405a410561763fef18fb6e7060ba586bc2 (commit) discards 72374d85246e15e99bf4d15936e2d22f977750d5 (commit) discards a811f014940c1f53e3a6210d4be4c54fc6f00175 (commit) discards 06f8b429eed846e0cd1786e437e4921fe0dcbe8f (commit) discards 9c516edb5426949253d74464d923bf67bc82345e (commit) discards 25bae877dbfcd3c37091f32fa1b8ae1bf65125cc (commit) discards bff33bd91319ca7bccb42830968cd8bd884fce73 (commit) discards 4f111cd25372b15b7e9f6373d08559edcd7c3792 (commit) discards ce1280163f2d9000376c863f8967c3e31529eba5 (commit) discards 294e70c79a1611c0a58e7d82158afa203d57288c (commit) discards 06cdab9593119137ab7139a1c9d410063770da1c (commit) discards c15764a69202cf6837dd0332adbba56dfa11bbd7 (commit) discards 4a91ac27ebb8d356407c45b92d0e23d845e5ccd8 (commit) discards ccb0048e1f7ded2ec8924fee2cf9875a6e910f98 (commit) discards aa8908efd51c8172fe66af931f35d55c5db61af2 (commit) discards 3d872399f7eb537e5c518b3892040fea90bf57db (commit) discards d377a4d709f336104f8f281dcdfd91278a766d76 (commit) discards f030b3070b5be3d274526cca6a0623333a9a407c (commit) discards 335e3c86608b67db57ca0567b7d8018c10c24468 (commit) discards d547aa15c3103804818c7f53e6c1695c2b1180f6 (commit) discards f626df6b7ddecb0a981aa083bd3b499e439babd6 (commit) discards 0ead59cc37465ae19341fa49691c29d50531bc3f (commit) discards 3f54cf9a0dc45d14efe7cdfe3b692b9a62c48efd (commit) discards 13aa4e24219c80dd1a3f0a26d8a7e12e5f22332b (commit) discards bd34ac897765254bdab60c8c0a28d968f78b46d3 (commit) discards b778e9d9bc948b30646ec0f2cd2b72b89994b44b (commit) discards c6085fb60cd48c8193f70f347823c1a040d71b86 (commit) discards a2cf4514150d4521593d058c0d23fc963a6bd3fa (commit) discards dd048866a81b6da7c576b76d325bb64dcd65d1ee (commit) discards fe02ec99b20b5acded62d8e516901ff7e565cfd5 (commit) discards 99bf0b1ef2d509ead3d2ab7238dced2a3c37f659 (commit) discards df15f0f69436264e9e6160a42a2368369d78b740 (commit) discards 0d367b05485e89386f9c60584688b737ba62fc0b (commit) discards ef1dba5e8d56295285bd424e875b4fcdcae6f456 (commit) discards 02309bcd679cc46e18df15919fc69402514cbf04 (commit) discards ee2e0b3e765652061c868f27b34787a518002979 (commit) discards f4ec141fdd72f19942322b6ed836f12be3117c7f (commit) discards 3c8a4f04e5d80cadf479536a5ab8f65fcf4a872c (commit) discards 8d71f4b52946e409c18f2a6a05a66baa5160a3a2 (commit) discards 3b27655763a7a0bf37e0683e93f5ffca279eaceb (commit) discards 52af5c52f8fc53f53c082b8976bba74dc9bba068 (commit) discards 13cbd0344b9f4a3ecf9e19c42f9125093ca9cc95 (commit) discards 311227b6d8629e4d6b65c8e57d706ae6fcb07ee0 (commit) discards 415cfd789dc86d9c7cbc5fbabd49e1f4e5799c02 (commit) discards 188536844cdbffd7be52c2b1b8ff8a9846d20cab (commit) discards 1a6b2941020c96a653c51397df3800fc93f50568 (commit) discards 9c8d08217cd578e1095254f16ccdaf1f44e25b33 (commit) discards 7deb590ad4cc23fee416327d3e785ba1fc506957 (commit) discards 752fe56cd3d850f12ed18cb35e1718639603edb8 (commit) discards 6d7df4d3346a67eed10085d99773accc954c82dc (commit) discards d09a1e30cc63119df91a8b69761d81cb352d7244 (commit) discards 51ef964615855d4fad76bf681b8c1a3f0ddb9882 (commit) discards 50ffef22728c91aab4a5013790783f1e6cb1fff2 (commit) discards 9a8b76693d2a4af504111234e1bae4cfeab7bd71 (commit) discards 0d58a36ede819753219c5f417db001182ade3ff9 (commit) discards 2d1d312f9812366f5a84edfc3aecd3566f62b60a (commit) discards fdbfbaaa3297b5a7f32a52822d9d80319ccfe7ff (commit) discards 8c951a35da6bc6554e596a6e07d3db1e61cd7877 (commit) discards 3563e4d356a96666981576c3894838deabcd4470 (commit) discards f09e8b8efd4d898b974160fa3476b6f6ae29dab0 (commit) discards e05685daf6a178f0ad9c65c8b27e9f9680711bf4 (commit) discards ff7da72d3271cb9d4b1760c9c5a45b326027ee3c (commit) discards b3bd0fb10ce3a449477913278646997bef23a988 (commit) discards d62a6161aeca493054c4c42bab90897d41f505b1 (commit) discards 9bbd6210e900046e2dd8f80b6380afa2bca25cd8 (commit) discards cdf2df2b38ba6744bc1fb00f451af286bf25c60b (commit) discards 3e00a76c4ee11f3721d602e1bbcd2d4363c03cf6 (commit) discards 10387bf9de790b468b93c822d0b6c24a53ac892d (commit) discards f2efb33191d8ff719ae004698c6b6acf2cc0492b (commit) discards 5fb80a3cb5df6350fe59608aa25c6e983e57123e (commit) discards ebdb05ed5c9fbaf5c5692b348ed252694dcc6c5e (commit) discards e3562a65a1a99e918969bccc6bbac892416bbdab (commit) discards b1b779ec2e7ae2cee14c0f199828ae956f4d3774 (commit) discards 89bca23ba2b5ae5cbd72ed8b1c2f33f9c9dd0ca3 (commit) discards 71aff424d34ad5ee5d8f0f223ffad1d978e8398e (commit) discards 05cfc8fc2bbb1cbebeead2a811204e3e19eb6621 (commit) discards b102d212d64a6a056023c0517e0ec5f05e3471c8 (commit) discards 985b15af7291ed2d24d73d204d5a16c8a00bc52c (commit) discards dba26980d614a72c9bb66a3cacc5a1ab4aceaf0d (commit) discards 98e2144e93b37a4175b0e9bf7489044fb0b8ffdd (commit) discards 4061f25c52e8c7593808836f2f76031943e43884 (commit) discards 51177678a0dea12229af368bfc6bf0f75b6090fc (commit) discards 96a701f6b628729dfab23fdad7c54eccb67f5a2d (commit) discards fc22f0fe91b497979da1fa4c754ce4f615a00001 (commit) discards 809282e9a42b76d6f197ef8aeaa20363769a7881 (commit) discards 3c85babcd9d1ba0f0da9b0818063a0b71dfc18d8 (commit) discards 498e0a1ca143eabc0640db512bacbb18ba2b2ba1 (commit) discards 4e941134d17a09d87d452315a38a5259f4924b21 (commit) discards ac9c06c41b9f5956cdddad0b872d2902f84bf1a7 (commit) discards dd8d4374dd1f51c634b67ad629d7afe8a12fb18f (commit) discards 3155bf4537d145f0f06e679b16b0b6fca338fee6 (commit) discards cf804761f8e0ea2f3faadeed5d373c2d1e2dcbe5 (commit) discards 9a0a1ee098f0f1d78ee0b96e018e035da5549248 (commit) discards 655c22a07d04ed1e5f9aff6d36b2e07834c835bc (commit) discards 014cd12be616724899cb753884e3d808386b9941 (commit) discards e562910dcba4de9de3fe5138d19609092917c881 (commit) discards 70f065d1cbaff76b4e55b4fc6f778cc7d0b37775 (commit) discards 06763b65cc08f24882a1ee9eecc44b427ee99b3d (commit) discards 4a8b6430d970256653729a695b74f73cc2434fde (commit) discards 3ecf8efd0fde7480d0eaba58feab133478574371 (commit) discards 90f5ad573761bd65962d71d34d31a1beb754b7af (commit) discards 7f70ad89ffcef299009131765b497bed8d69766a (commit) discards a7caa9c513fdbdbd4e81be70fce765bd2a6e64a5 (commit) discards 04801c2e3a6b2f133f8ec2996fc53435b5d37668 (commit) discards 7d049e7cedf462646f2be60f32b312a575f24e13 (commit) discards a02f7296791f3f46a096c8409201c0b6c82461f2 (commit) discards a1273a981c8b1e32a0c7180ca3c23e47f615ad91 (commit) discards e690d0dbf54742881d654f8fa0519719f0119f83 (commit) discards 407bc1c646eba9dc40c9d0d95b38602593f210d2 (commit) discards badb5d34778e640d6f7996b19e1c47c9e6055108 (commit) discards c588e6cfc1ddf624134dbcefd9377b3c578f4f60 (commit) discards 405cacfba1357412406a03fe794865072392459d (commit) discards 7d9961e73a536661aca98cbb0d6f1a81edcb7b47 (commit) discards cb3711876ab72b07fd47352b995de13b90781630 (commit) discards 33a603aa5558bd107a5d018daeb78659810a8183 (commit) discards aac38f88d4016191dbddc65a4ad5d1bb3fd8c9dd (commit) discards e3db575e2e29789127fa40b2a7690aabd873a0b4 (commit) discards ab5e5a6292dbf461c3e53f57fe76bf0932dc50b1 (commit) discards d7f72d1f7a85a5622ef081877ec8dd7d1d70258e (commit) discards 4d6715e4ed2993b6e9b1753683662e4f3d8907e8 (commit) discards 679cb9863aeebbc1072c24704348648c6e2a2710 (commit) discards 61032bea1bcf23516fab87221890965263b3b317 (commit) discards e5cde94df65918cf4d51ef7b8747732a02a3bdaf (commit) discards 911120284f9d3bd8e9d98e20e5bd0f292a2c958a (commit) discards d770c2f5291fc87c155628e349c39cf2bbee5d00 (commit) discards bf034eac301d0242c5fe673bb062bbea95ac73f5 (commit) discards 1de20695659f40387671b10396d3d4b041c4e315 (commit) discards 7051b42b6bf090d31f4fd41257e3ba127e1137ce (commit) discards a718b089b0e2ad6734eca170531884ee01c8596a (commit) discards b9c08862c69eb2ffe4bc0751381b864db9607537 (commit) discards 84a2866d9f84a7d51378fc2ca725452db430c602 (commit) discards dccb6910c78a338e2b0f7c524aab6a78972bb104 (commit) discards af134fe2c3653881024f3cdc643adf4c5f994821 (commit) discards 26b5708919e7784cfa9abd6b5f9eace499e3a5ce (commit) discards 531195e9f309632580e4e694413ca863465a9531 (commit) discards 1d3c59560e1228cd37d983c02307c0aeebf76801 (commit) discards 3835aae6986b6e029771e14f785ca207778c70d2 (commit) discards b02b83eb1312cf923f73128481cee636e7ce6e05 (commit) discards 0ba8ebecadb0f27058bab86db8c54ab72a43011f (commit) discards 4d72b88f4e7a0658747f84e7fa5fa7fa60fb403d (commit) discards ed80406933935487e0fffd40e2d1943bdf782fa7 (commit) discards 453ed23d56f68b925a844227cc22ff8ce447d48a (commit) discards 3feb3f0150c0ad3e0b30141662032c4c2cc18a04 (commit) discards 3efdce58882651a6d47a9444ac5c91d09361eb11 (commit) discards 81df86a3b0cddd775a5173a08ac90e32e1f5c4d9 (commit) discards 5e3d631f78a11222f367d9e1f1c2320398d95f50 (commit) discards 71a8397f8cc55d23ef221e861664a4c9f4254e0b (commit) discards 85d699437bd63249cdd7e7c87b3cf70b5fc677bc (commit) discards 9a4eb88fc1afa3011c335641a3b4f20e163eb844 (commit) discards ffa1da029374525f53556253b6e2d83c617991e4 (commit) discards fbe7f4d4aa4c049a5a9449a828f04580a0d33af4 (commit) discards fffc133b68ab4d1169e0dd4ea893e3cb0afd4335 (commit) discards 06c13d5d747fb11c34f4249aee6ffce01e503a2c (commit) discards 018937405bfde0c2ba6d7f5407041a8e884a6b5b (commit) discards 01619b45e17af1f362ddbe9f1872a4984ae22617 (commit) discards 6dcdb100fb2a6e7be359c818b03c6bd14dc52893 (commit) discards 5ecf990ae8afbfcfc46b50be4680f6439e5e1c2d (commit) discards 14f74453d3650c52e69f56c2d088083020719422 (commit) discards 237b9b330ee34ee1226bed66e1edaa3b9be332aa (commit) discards 7d59c5201a424c43fe76f9962f14f949a4d33bb3 (commit) discards db22abdbf75844ef694ca675440d4d838eae4878 (commit) discards cdbb0c937df588536ad878e94d6c8798bf3dd0c0 (commit) discards 4edcc532b3a326a6a673d3631440ed8079bf662b (commit) discards a50fcebe895525035bd7ad8eccf1be2a3facde00 (commit) discards 6254fc83ee80504d2c058a2a70198b587e0c3d88 (commit) discards ed766d6ad2b3eeff6493d420297a3c35b07c71ef (commit) discards 01a4ca49b8a42da249d1b1eb64dad4d27a85fd2d (commit) discards a8e26f88de9cc5ca38b264a34ce498a1808d8c44 (commit) discards e32877b0f71adca5879f5e04f8f9c6f45d06f52f (commit) discards 91731c0eedc11154ac4b32952a78a3cd8a1d8edc (commit) discards 997a110a80416d40307eaa2ea6ccb52ba47c9eb2 (commit) discards 05ba09fc6e695dcbca39289c756f15c7b02f3e5b (commit) discards 28fedb192175668668e02e0bfd47fde337b83899 (commit) discards 9dbd3a493b0161893d04737cc3dad30fb8677ab5 (commit) discards 522849475e6cac31516e5dd5fa169f2f949a0171 (commit) discards ac8f6bc505a27dc8699068dd8a5cb7dc69a5b93a (commit) discards 5ed2c9a236fac1ea9ce747ff0b661e810cfe2ff1 (commit) discards f0040c0691a6f7ae4a15d434ca67caf53d21b9ea (commit) discards 876a84d245efb41a2bbe49e4049da5c2a4c1d660 (commit) discards d32c4ee7cecd8a27e20e0ebf8c274ce2c1532088 (commit) discards 40dc076bdf6ce81580ecaf3aff25db4b7a8a5dcf (commit) discards 236ff08cb78fd3da9bc0a8bab6cfb2c7a43a79d3 (commit) discards b64941dee7f79af5c1a5c006e9171a8de3ad81ce (commit) discards 7ea1da1a2f2fe5fe9743190b4c7e2232dd5e81e5 (commit) discards 012f70919b847b7644d724ec178e2b3052150901 (commit) discards 42be35d542106cb2fef90c8649bd55f11038c453 (commit) discards 1e55cff13198c644f6a3c3e31b0552050dd8fb4a (commit) discards 0ad175bca3aadbfa7cadd0a09ff839b01f9d681c (commit) discards 08a3581f34c1d83ae8aa3f7a73580477c3dfc6c1 (commit) discards 8d2487be5758143e5a6b6f9da3bad09db46c46ac (commit) discards b4927726404d5565c573ae355b163f3cdc0421c5 (commit) discards a60ebcff7b3b0fbeaefafdbdeda5f54535423f4b (commit) discards 2dc198b221391e33b4c1f204b1d7d4e2347369c8 (commit) discards 309ffd8ef0e2da664cb459d06ca20f0838dadec3 (commit) discards a7f55ac9f1b720a3338948f6c6883b3658f9d27b (commit) discards 2c8b9f506a6b8bdb2a9f036c1c7566adf5d4c5ab (commit) via 15d314cef30f00cf4ef57f625e778a26a0dd6bfb (commit) via 098160d5f2a1aa35d2f14c585dd87cefd8f56f41 (commit) via 9da936e49d5d5eb3b60b2697eb99f2e4ed9809aa (commit) via cb01f1517051b577d571e8fd21d210ef303f56c9 (commit) via 1ac598f53b74009bf161387894796199348747ce (commit) This update added new revisions after undoing existing revisions. That is to say, the old revision is not a strict subset of the new revision. This situation occurs when you --force push a change and generate a repository containing something like this: * -- * -- B -- O -- O -- O (bbeb31062cc15744783b3fc303d5ba29f9be67d9) \ N -- N -- N (15d314cef30f00cf4ef57f625e778a26a0dd6bfb) When this happens we assume that you've already had alert emails for all of the O revisions, and so we here report only the revisions in the N branch from the common base, B. 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=15d314cef30f00cf4ef57f625e778a26a0dd6bfb commit 15d314cef30f00cf4ef57f625e778a26a0dd6bfb Merge: 9da936e 098160d Author: Brad King AuthorDate: Thu Feb 5 10:01:32 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 10:01:32 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Utilities/Release/upload_release.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From cmake-commits at cmake.org Thu Feb 5 10:05:35 2015 From: cmake-commits at cmake.org (cmake-commits at cmake.org) Date: Thu, 5 Feb 2015 10:05:35 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.1.2-1016-gcb01f15 Message-ID: <20150205150535.77F87AAD6E@public.kitware.com> 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, release has been updated via cb01f1517051b577d571e8fd21d210ef303f56c9 (commit) via 1ac598f53b74009bf161387894796199348747ce (commit) via 78c4418fa0a08b63a944ac66821e8bd95fdd73e0 (commit) via af8d1c17e663cf424ce4b5af9351849651bd6fd0 (commit) via f9e05ea0d47eedda997d024f3ce7bf1be4f812d3 (commit) via 02d031827d824e15e902b95f833b77ca7379bde4 (commit) via 9042c875dcbd0f4b7150e9050b60fb0d40365e45 (commit) via 0ae11b1fb0925a172adcc7cc3c9b804e2ece9ba7 (commit) via 5c29e8897223928855eb6af4d95b063565f11202 (commit) via f55a2b2ac208969fea684664c812a368137aac8d (commit) via d81bbc3fcee81bf0538c139637e0344c9fcad40a (commit) via 0f38d9c2ad53631185da9aa7d0f50b5816272a55 (commit) via 0f580e8e67fd307c21924dd732570937a0db25e2 (commit) via e08a78dc2cf04682010a3d4496b4c454271f194a (commit) via 3a4381b6605f593abc9d9364f5ffa3fc9a209854 (commit) via ebe1f4f896a18dc09bda431233a5cfeee5b2327b (commit) via fb3487a9975ed321b48fad5c71dd655d66b68087 (commit) via 6027798a30eae02175ce4ad13e1439f4383b6cd3 (commit) via 9d767810e1e54eb9233854f0dbf1345a0b5be60f (commit) via 72537e4436a17535af5424628adef3b614a61679 (commit) via 82c9d6868b87a964214a468cae816642950e70b6 (commit) via 219797e4befa19a79d2d94e0b5a2bbe75415606a (commit) via f9839c491ef926b71487345fdcc7054324587168 (commit) via 44d6f3ce0839ba0407dc095d1edc1f30e732b719 (commit) via ecaee7caca4e3d4528e643736c0620e785e84153 (commit) via eef9a476179dd91c69d30f937e742ea484436fc6 (commit) via f560fdddd19200f994fb98ba5576bed34938a7a3 (commit) via ff90f49d188b4e700abe31afe66c31f38e315648 (commit) via be072d3fe1872651ce03ad8258bef23e1e3f795c (commit) via 8f820043684fa8a11289061297828bccce7ba080 (commit) via 809a5a5e2391484966614f11100de956619adda6 (commit) via 5f3778571770ccbceca22aa18ad06f1779a3ca5a (commit) via 2fed8e173cbd8c897b0cf2fd46ec72fedc3c43ed (commit) via 03c0812c41d4db2a48687ce0c053452906dfe69f (commit) via 8caa4e72abe4393914f4dcefd1621d3c86a7d139 (commit) via 5c828cc89b4f78eceaf0402719cf5693a6627935 (commit) via 30cb628ecb31484015136bf6065c9c40f59a9297 (commit) via aec11372a5868694937b1c232af9d7510ad8497e (commit) via 99e3650e66399e75efb989322d4b0146c549dbfa (commit) via 1acf36241fee134faed4355be2c9b5afa5500714 (commit) via 460f7bcb7d11e905ee025c9d9cc9629d597fa91b (commit) via cf38f6868536e8439bc84d57363dcc51f1fea998 (commit) via 8d69764d06ba0dca6e1e15bd5efeaac640ece49b (commit) via 68b5b23b3bd948ec15f2ebed2154db8ab50f66e9 (commit) via 83ae27dcd18a746af35434bede9e3a7ee0aeef9b (commit) via a01f81b9064a31760787bc6a2fb9305ef97117e7 (commit) via 18e3771ac7c74986a4f06221a72781ace54b1169 (commit) via 36a1ef43daad760136deeb8f9934266550764c58 (commit) via edc9ff9422b7730a11aaa9a36458f16a5800ec17 (commit) via db4b9fe25673c252a93c15040909d328dc83dde9 (commit) via 85fe9400cd68805501d2cd98cf7375c8845492f6 (commit) via e62e04f3bbad6c8bad7183c16c966d20f1aa66cb (commit) via fa5f5667763988d7856b98227b5cf74bb42a8203 (commit) via 55e68bc99e62430ba2a94410992effd87bea7e33 (commit) via 81221b80e2d74d120bfb61c62e07e3f7f1b9929f (commit) via d3489bdb0bc58b36f1e5ff2baa0aee8f4daea734 (commit) via 3cec0c75f73cc3d5c68cbb9e03e94ed38d60d0a9 (commit) via dea1631a8f48bebc7402739de58841b8cdf97b8b (commit) via 8a93d3ea1806229460f16c447b3d5ebcc80ed29c (commit) via 3228fc5049e72e6d7584a6f3cec6055b8a726817 (commit) via 500794b0db3d7dfa121069f336b69923839bada1 (commit) via 4c5574a15d6458673c410622e501ba682a783781 (commit) via 3ec025472735c22cb90b09bc171190005dd28bb1 (commit) via ea7ca139ea4c3c88e432e722c9cfe1dd86a4359f (commit) via 326cfe2b30f0223ba676b966dc49a74972e4e4fb (commit) via 98659aecfd819eb1e7771f7420933316a628b057 (commit) via 983a98e5b8118ff5063400d8ffac7a511ca8002a (commit) via abec4213d61cb74aba5da6f83220b38ef7882209 (commit) via ab9fa54d4841e5b0eff8d241ad8edb47401b0394 (commit) via 3526daf5a2667d4bf8aee442d6e73f8b71ea6efc (commit) via 5968ad58fd85e9703c36cd9154137f24c55e5413 (commit) via 11e2e6cadf7f0ee36b7ccecaa11457949382b75f (commit) via e4055a6144c63c83fe2f39440ecfb9a0bcbfae0d (commit) via de4ccee75a89519f95fcbcca75abc46577bfefea (commit) via b7d7b306541a8ff1a7e8384f5c44baabec3ec94d (commit) via 6a0a4079efb032ec993b73358037b9bdd33dcfa5 (commit) via 4775c90145da7ec8a5a87ce5b8b88dc4fc8c1925 (commit) via 0d59fa3ca4943e1ca5da36573b055a381642332a (commit) via a47b904db242abb903a968bd6109bc8a07d3c39a (commit) via 1f77a7001b2e3f8f9224cb603e5acfee45573064 (commit) via c1f5d6e6f54f8b61d223476459970d336098429c (commit) via 8eb30339b497a04c4ac2d0879bbeb764a6d51133 (commit) via af9cf04647a14897b4402447c04117d82fc6e39d (commit) via 33daec1ae96752817a268fdca2518032cb9453f8 (commit) via 34ce0dd22f1c2091c5870e25677b100f753c44a0 (commit) via d1b3370d5210d4262e58a523d19393e9ea9ee782 (commit) via ef6d030c95e813ed368ac28b55110cb0f159df6b (commit) via 4ef0f7f62f3944eed29031ab9878f7213c7dd402 (commit) via 095fc28a7e077441daf2e3e59fe34f85f3ea6775 (commit) via 7f2dc8dc54fa6486423477dd673725bc40d3fdeb (commit) via bf05938b8f186c397c918c1cf8bd9ce853c86123 (commit) via daf95a38277f4c732987933a63143dde77dd0a10 (commit) via bbffaa0e6cf3802644453713e80a84345e96148b (commit) via 70c50962fb405cfb89637f24aa38c3e0fd5cbd87 (commit) via 43eca4026def688e27c981154a36948273c6497c (commit) via 82ba50390f52226bdd4162e4108bc4f5226150d6 (commit) via 67e76e82df0fe8466b4bf65265d0c6b7f6046dfb (commit) via 3046be77847ce54baae1d432dec224282dedcc16 (commit) via 4c49ce96d7dfcf902d1af627a733ba732cb9b6a5 (commit) via 44fd71decbca329d9cdfc196a073a62668af53f2 (commit) via 8ced6375dfd366a088c681e45c0d8cdb4ea04dde (commit) via b46a15194b7cf1d7aaabf9d0b2a80651ada2e23f (commit) via c19539c594c4099fd4de68c2e386347d1cb0667f (commit) via 19e57a48cd1ad562b277c8fb9dc8285ef96acfa0 (commit) via 37473374f969f476a7fec87cdc3465c9ab8f99ef (commit) via 8def82585c8fe81de8ee4c852f8065e19435532e (commit) via d0adcccbf4321437f5ecb677c7f88b3e4af484ed (commit) via 223c5cb70b30b6a790fd916321f60c86d459e15e (commit) via e2b1f0583f7293bce280dfab397e96acf8a5b26e (commit) via 7fefb97ed770e8ac32729cf50be52e5c913bd7b7 (commit) via a65f7944a018f255d50e80ee45a6cef965f9b508 (commit) via cb243cce13e23882ca5d39b860cc747812874f04 (commit) via dfdcc42c60c723200a0ec9dc0c49e9765384733a (commit) via 1337576b24feef973fca7cc45c695b495b3f8a5e (commit) via 6cc0f6b512d08caabf088d22f3f25432e6307b6a (commit) via 539c5c252ef679d15f3af828da304ad9313640e2 (commit) via e71c35ff26df370121871dc7cc7fe9b585dac570 (commit) via 494f6e8d5b9f2e556a2b2db2c165a56c01fd1827 (commit) via 5a9d54a67a90aeaad87b7366d6f41211529e6c41 (commit) via 391748d57e090c53f6c55ea265e038fde1bca032 (commit) via 0b9aad7568bc5f1cf56e01fe2b3dc57f5dff5133 (commit) via 23bf98fc04eccc85f216fdab4166107c3d958d43 (commit) via 97502ba77b6d589e2ff48a22b703f6908d5b5fdc (commit) via a4605973ff116d11ca96c7b06aa6516bd638429a (commit) via d5d3d0c9e43004d139939fa71bf3901fa96ce756 (commit) via 097e26f4908b3099f112c3fdc5e043234f9adc53 (commit) via 154bf8da991a6cbc82e5ef89979549b10d19f561 (commit) via 103f77e5122edf60b51e5c49af9231b657eed300 (commit) via 7961171db522619ea2a46c378359108e7a2a8bb8 (commit) via 29ef8fb5be529f87b7e18a728604268cc008a9f6 (commit) via 9f559a26080a7c76210277999385e50a9412300c (commit) via 0bda22f247bffa75abc184e96451835f4450145c (commit) via 6e66fb6e88305e7b906f60882610bac48fd7146f (commit) via 0abd3e538eb92259e52c3d330e46dac7aa0be332 (commit) via 6ce346c53c67ba970cd04f0d8436aab006dbec71 (commit) via c99e19a4ac7e6e55345a073b13c36befaa8702d8 (commit) via 85857e6d1c1859bdc8ab4206e0329e846b6ef020 (commit) via ee38062be8ccdb7f4c53156ef00db0d42a41a6a7 (commit) via 560b3e9f1df04808593997e7d1f6ac43c7b0c141 (commit) via 98bf613cd09e2187fa5002dac06e63d5450dbcf0 (commit) via 005b409d6acc5b681b0614b778c1c3e76a2227c9 (commit) via c0298947ff664d200b7b2a86ac6e84c1c76e2fb1 (commit) via f3e0b6f1eb8deba06e6072156bd9b247a559c9be (commit) via 53df9bce19586858ad7c9b0e80d660433be757ed (commit) via 57f4c8346206d129d2ec6576b3fb0b7862566311 (commit) via 3eda92df914f9e07775f5026ebc32580e743ea70 (commit) via 529293e344106a7132983a8f166a36e835fcce87 (commit) via be2a74dbcbbc3a6d6af8ccb0a70688e4db0f6901 (commit) via 374a66b58ced947d9713dfd6f439a52b6646e923 (commit) via afe99212d2a872da63bf027766c1ab00ec841680 (commit) via 40c11f0f62af1365cee44111429946862b5cf93f (commit) via afd998373da0d0c39266b5c7a078ee48aa939554 (commit) via ef97cd8587e7f8d4017b18147aaaca0ec5cb9f0c (commit) via e56c93279523701d8f044372fcc451ce50369b93 (commit) via bebdb4540b94aae3f213af586dbd7d1445ef25e5 (commit) via 965a50dceaa0abe2ec5870efcbc8ac0becd9615d (commit) via 7f4154a4aa4bb121bad05884f48466489e346821 (commit) via f40c19b5433aa601cd98fabd9491edc9aaf703b7 (commit) via 7e468cd8f99daecfc1197883a0fd87bde771309b (commit) via 77444a7d486c415508a9c754fd4cc29cbb33f12f (commit) via f709776864bbd94c7aa839248adfbfe7d4f5cae6 (commit) via 9b4d4344c67bece5b8074f6fc711feb6a169121b (commit) via 27c6da933ec1dd4028bb80e4adf2fa7309ef4a04 (commit) via 6dd980e0ef1254a6c3098488e6677f5eb4f40a86 (commit) via 5dc33f89b5405f1fbcefb9783ea2050a3686d7de (commit) via 17cfa09eb2a78349a6471e4719bc933dd0625d9e (commit) via 0238d0c397e52a82f20a0b7bf5aad9a07f36133c (commit) via bda4f0b661018b32aefdb14887d8137e7a4fd118 (commit) via a02fbec5f3eabf7847583a7f45c092ef6c066546 (commit) via 1ef4e3ab4534d0b24031045a476ff223574c38ec (commit) via 770131c9731b3bb6276816195ac6a22f63847516 (commit) via 86b6cbeaad642f4479b1b089edec4837ce0da48d (commit) via 481c5fd31e99b4aa0277dc76c7a201c627f3db79 (commit) via 4970ac3d5fe1b0bc3519753fe50e4397c074353e (commit) via cf17d41535962f4b94ac45a3d5870c59b63641d1 (commit) via 70eb44b7dcf86e23716dc0e036941abe887bc756 (commit) via a6a1adb59fc0003cbd520e7994c3cf1d05df54db (commit) via 3a60c899fce77f221cba670b62c90fe2d2daffed (commit) via 90f9c42732a18e53943c3aa27de76c2511c5a0c6 (commit) via 3c0996c135198fbcaf8951cffc98e3a1570e756d (commit) via 8dc0c976661ff048c346d6c68666bd7056ed84a5 (commit) via 813ace90e4d02a782176ea13bcec15a3e9338210 (commit) via 137a15bf1da72c795d8eeded4ad3848a5692dce6 (commit) via 0898de99cc085fee8534369aea27e9333b53d694 (commit) via 00194ea752ed02dbe70a808b337cf630735f2894 (commit) via 48984958192029f57338f511885eed85d1963f94 (commit) via 2e71d92ef270c4234368fd2e88259c0defbfb650 (commit) via fc9204efcb7cd77562cf8cc76baa58df9841649f (commit) via 76f7eb2e4a359a7c978efa19fdf71fe1ea46b971 (commit) via 352de1d74960dea4db66ac560ad7e4489546f2dd (commit) via 9de2ab7fcefba2bc9ce7b483f1643b1d97d58e43 (commit) via a6bbbd0f4a9ca9d683000f3302842bc25615e57a (commit) via 95d42840e88599ab1959f7531668e320a7c20fdf (commit) via a1fea841a92568c0bdc35e1c8c7a400b20459a96 (commit) via a5be8e3111ff0b6c656facd603c2e2d972d61671 (commit) via 953272b725ba98358f262588d89c75bdd3429367 (commit) via e320640bcf2323e54add8a7c920b406c4a652816 (commit) via 5803ae3e88e922c06ce835eb7bdcb5c584420453 (commit) via 373199b1c922c6897e007fc1c8fa684aa1a8f707 (commit) via 0aebeb9c84086b19c56a3ced5c95c60063ab37e2 (commit) via 6164f7cef637a226fe1c08cc0cce428a8931ccb1 (commit) via fa889c4d2f49ed4b3edc8e7820b4d9bbfeeeb2a3 (commit) via 8211010c3f0d262cd7d300856f34a3af01f766b3 (commit) via b54225732f6b46c8f2ab0b2dd76ffa04d173b2f0 (commit) via 92a37f92791f801d378b49fd86f097391facd02e (commit) via aac44e71e6a6c2630f1c1e61b34cf91aa775dc02 (commit) via 004e1540e0870e9b3bde19ad16c4f50b7d22df73 (commit) via 2a5ca650c9f973c83fe3d5b070f6313e1bd536c1 (commit) via 1ae2c6b2c9def9f0d0db3a808290d485eccf062c (commit) via c66e3317492709ab3b830024f67021dde67a7fe5 (commit) via c43a6dc5ec2ac57d8334beeabf90de43e8ddb829 (commit) via 5f69314ea65ebd0de23484e7c91bd12a8bf861f6 (commit) via fd0c036c0c3e5e6be685e64caecdcbad4b3e744c (commit) via f09fde2d21ef0c97f0ed1b8c6849f0d7055bc24e (commit) via 86b5bdfa0874a0eb97d726fa9dc2f534e5a67c7e (commit) via fd7b37129360364531ddfeda7edb6e34ba773d00 (commit) via aa773035b7f4a1aefd860d0b9e80f134bd4a4547 (commit) via 64592633773004df83cdd790b9cb1838503ca854 (commit) via 607e19384f19fcf8713ccf0377e0255084ede785 (commit) via 930bd4781694ea85a876c08c34a2dd8243688920 (commit) via d92887efabad6a91e221588d0dc7a0bffd91a9f7 (commit) via f3e92d281682ee482b1425675b9fccd372cd01f3 (commit) via 681d965df18fa55a9eaa615515015ac088ea0805 (commit) via 4dc0c488f94a5f0c7ae04fd15b46a92c20fb03fa (commit) via 782591350ced90d4289d220f91bdbdb4acec2ba6 (commit) via 7b9fc88b045fd34df73e3cc864c9ac924a449cd3 (commit) via e11f8d6446badeb0f1af99f567e4cd9c5c65783f (commit) via 59e6e15cde911e182e471df5b99746e0e203ba43 (commit) via bcb04783f7abd1e7781eda7499b53118fdbe8000 (commit) via 54156d723a3fde678ed7f884364ad0449d23ad2b (commit) via 536c535cb0cf245a1785d436b0662f7fe59ef1e4 (commit) via d84d6ed409c663573a02efa7d2692b6829d27c46 (commit) via 5d57970dd9ddea70163bdd3c64fbf365a15af9fb (commit) via 7dcdfec97fdefa90bded7868a638277d7c9903f1 (commit) via 69182ce4ed95c62d51e208c8620ff4e6599dee2e (commit) via f8c416f00c9d263556cca9d9dfc0c71913bdd7f3 (commit) via 8b7db43bc694c2b89b1309fc875bbdb907a90ceb (commit) via ba7227a0affed01c67f7a8994bd9373b212314ea (commit) via 770ba876997d1038acdc1d54419152abd0970312 (commit) via 287070ceb8eda82cf58595c9ea2dde57b0d6d45e (commit) via 36428fc5273fcdc4a4c227a932de9e07c8f9d2c8 (commit) via c15a2fdd2ee3552024c3892bb798bb956b4677d9 (commit) via 3cca39b46db715bcfdc7fc4a02210c8ab4cf572f (commit) via 9d4ef584626c4efc882f362e7d46e9b2d8c66045 (commit) via cc475e812949b1824ba7bbf7dd1a417a0962b77b (commit) via ed4b95e12fc9c9bade9b25d117254863dbad9e2f (commit) via cdc29c36084ccfa447f171a25de2336b0bd74edd (commit) via fb354cc59c3fdd358f77b2bd97b11db0480c521d (commit) via b15c008fac22720ccd793b18c235046bc84ecc86 (commit) via f13a2eb118d8b152a897e09fdcf43793f8e1bcca (commit) via 1f19ac4da5af812891be305721f3e3b7eed62cc3 (commit) via 0798d1e5b0a09564b127ae7d26d8c1ea1bc9adad (commit) via 938bd94eb0b34e1b5be12dcceaab641efc8a7e43 (commit) via 462c630b8a6d832dd37562fcd7b00a75e1ec6e82 (commit) via 222ec86f7d9ae838d2e460b89985c797c7c90373 (commit) via 6e909035af73d3ee0ca3e5adef39b4541f0c8be9 (commit) via bfc995cc3b8834281ee86ea2ed248b041d5ad1be (commit) via 1532b9214f79517fe74dc674939601c75f4af300 (commit) via 1f4649e62f6394a6e9af67486e4c41f3e286de47 (commit) via a60027a642f887179513496ef61552db44829652 (commit) via 06ff525492b32cd3182c185c908c526379766912 (commit) via 6c121924ada1f26c485c628279d6501406d9e3ac (commit) via 6b9a0e17970391d2f7143ed9c600d5ea50dd6b98 (commit) via 89cd3d273deadf0b6a1c6b0dc8db153572e75845 (commit) via 7e310624b0973b8f0c529837010f164e486e784e (commit) via 4c49606598ab3089f0cec9be724ae2f3ab4c1ba3 (commit) via 50032bc847a79dc209e6e1ae4dd77a2ec2d52be9 (commit) via ad94b0521eb3a0e05c120b510d047dd18b27c9df (commit) via 7eba04fda156f670f8c84f3d6a9d9b44a472a04a (commit) via 06f41e986c25fc2fd68074fce314a55f5c1d003d (commit) via 1fc556536e0c0475d401e8b5747b46e9f7c32287 (commit) via 84d5674d4e0cfe30f28db2893ad00937deece57c (commit) via 829fc5ad791d6f292d87db5e98c8d5ed2ca9123b (commit) via 0fe4d8bb3b9e8074f7efd95ae92fa32fe29a2c02 (commit) via 945571db747fd09036d0efd55b538dd4b3c8b874 (commit) via a32b2245ca8d77da5b8218bcdcc6958016cdbb48 (commit) via 531e75e0b73f921fc02983f19a07141c867a752a (commit) via f3884b47ec64b80ad31da93192188f05f60ae5d8 (commit) via 4ab5c652b663377afcdcaf7cda05ac8746b7d21d (commit) via 811a29c9507054e3301d90d5d376d0c6d6caded1 (commit) via 80a6c38d98d12f4b5d6411a93e67863f163f0da0 (commit) via e7c1836e044689c0a55d9fcacd94d88ef8b9ec19 (commit) via ff1727af778301c2a53007098bd31fe7b9af6c40 (commit) via b4263abdea04bf445c3e99be3be627dfb6c3047d (commit) via 9cdc2f38edea4b2d1b4421587bbe9b2a83999d4f (commit) via 4ecc392b42e999e3e103eac0c0e28fa63c39167c (commit) via 6418eef222304db9a884a3cf101f86c2eabfb503 (commit) via 44612e74075f751b01950dd0f00e86d61f9ba05a (commit) via fa636e19ce42c7523c4858ea697376fe94080097 (commit) via 526a80b32a28bf3a1601ed086bba10f9059d5940 (commit) via 1720869a7e287786e5d4f5c85d07bf418dd81782 (commit) via 49bfaf2bda8368cb8398313bed8f91e3aa8ada14 (commit) via 101a62aacbcc812263439ca42faaf4f2419b6119 (commit) via 509f2713bfa0a289851dfd8d6e45a356adf233b7 (commit) via 23c02d245425ab15d6d0a99941355488ddee8cf5 (commit) via da928d305b10445c2a736597d87fb2a8c4409eb7 (commit) via 1f085e11e40a20f8e8702da7920e950e47deb27c (commit) via 85d3173590e4bae63e8422ac8083a77806491b92 (commit) via eb7b060dc4b8e5e15d4f612db5558966c22d2315 (commit) via a985f1b1f64c4c5e515e1859fac7a1281add254d (commit) via 28f44670c807e4098d71504d9f5204c6ffedc676 (commit) via ff880ecea13537a45b914fab05ac4a3c26287f2d (commit) via dcd72a740573392b2074bbea3d9d992bcd8959f8 (commit) via 31cbfd41dabebd632c66c997565eb4a3f9fe6533 (commit) via f121b6b12856d9b0f6f7131f492d70602a023ebd (commit) via 4ce110bbbac36362d8f3fbddb0b405320695ed36 (commit) via 0b7e7e277c111d274d7dba378273f77d5b2a4fd7 (commit) via 0d7176b2f7298fc818a67d004e3a3e5d392a68d4 (commit) via a3513ceea9909eda524863ca2024621cba65003f (commit) via 68857ccd823088caf240318f2a7b39522fc383da (commit) via 74b8f7862291d795eba525f3103f1370b8ec7518 (commit) via 37fd5b87f867351517f469ce02b76bef984dc2c3 (commit) via 2ece34516a6c4f99d27c42018b3548d0cb75e72e (commit) via 65b81da458614c6a4652ea2e4fc933893c671281 (commit) via 30d2de9aa82196a12f47930e736181c48c568585 (commit) via 4a6e795b0c5cdafbc78f12389ec20d6bc4f9ca34 (commit) via abb4a6781f96b28e4c30014915f566dee9130db7 (commit) via e4fd66b1922c10e6487362c8921669925742309a (commit) via a263d519fffab082fc31f8e3f454726e3fbd8363 (commit) via 53f6ccb0ee76a2b9ac40abd5ec5e07aa55fbb393 (commit) via 32fd56b066c28758e31ae97d4b16216b3633a843 (commit) via 546906243d21727ac6c1bab0210fc028ff80c3c0 (commit) via d61c6df2fa9161d784a71b05e584cb1e944a182a (commit) via 3dec4a2bfbad7b519cb1e7c9aa72dd2ee3c4e669 (commit) via dd6c596c12070c0fdc71cb11ac154e99111fb6e0 (commit) via d9a6ea4599eb3b736b4e695a9ffd5d8a51eac059 (commit) via 212bf1f82a522b7ee779b008a14c2e51fd104e5b (commit) via 4035ef786de80d4d2fc27cd5f03c629702f54762 (commit) via d811d238abe2dcd04cebd7ee4c3f07f4b6da093f (commit) via ab74553db49dba6a1d2219f8ff8545650ebfb5a5 (commit) via cdc688eab0f6b1d5131b0b188c5ba1860775af1a (commit) via c59cf4f96ce276353263f2d06a54c4e1da1ba27d (commit) via b4f62b875b135f94ccc587f1937db3347fd62198 (commit) via af0ee419553c501cb81f6210b9b1f724844c3dcd (commit) via 7f5b4940e1e1d1c40a37c9d9516a5df397234c21 (commit) via c9f3e829e70502f0cbfc9616d019950ef81ef9df (commit) via 63412a85e0e2431895bf4f2122d901e17f4c51b0 (commit) via b5a467262b61065ed5d1b8d545cc2ade548b9d0b (commit) via 6c61ffaf9b1616e6938b78ca19f17f9a9f87f3ec (commit) via 9fced518582afcb0875648a278821f7b82f536f4 (commit) via 89e08de8c2e7833461032c9309e1a6416ba35438 (commit) via c32f691944b6b7629de7e6c1366d269a6b54fd8d (commit) via 222ee2c05932489f6b5879e423c3f07fd7f67996 (commit) via 99b13820715ff3b98c2c0cb114b38620b6da4466 (commit) via 16d68daccb41ca97b42c0074f0de35a53448d8b7 (commit) via 00f66a045144a363b497874613457fe0cf80683f (commit) via 30289e07ce138598e813ae24d37d7191b2eb9935 (commit) via 68f9e6724275e2b0fc05604163c315e3392f8d93 (commit) via 56324568cf24263f23523caf4dc6a85323c0d56d (commit) via 20d60c636116c55bfeaa7ebd02045fafe0b96808 (commit) via 775fb2e0b03772f08b5740ad5463f849109f0c7f (commit) via 1c0d6a7cb5c51fef3ee8804ed298da95e2c1ca1a (commit) via cb5fc7b993866e7398922d34a1b1807ad061d4b0 (commit) via f098e0e22bedbaf7aa41ef5f8fb9e10478b6672e (commit) via 4a549e7e0eb769780c76e94c9fac69a8a2e693ed (commit) via 2d738ce37acda92b344b1d3f2be2d3b6df63763c (commit) via f73718c9b893e1489f904cf30392742cb456c341 (commit) via 0f7bdd61da51ea8609246fe6fd05a13235fe75db (commit) via 5e92c82655e7430bef6604c90b3389f6609c2bdf (commit) via 15e42bb27c75e90da8163b89ad8fdc0a8fd70d7a (commit) via 931e055d8c2e113b9cabb9282d9742ae78c4d802 (commit) via 3660d063bc005aa13e7ee4836aef842a91cc87f1 (commit) via 5c28495fba56ea488a5a1df323f3c89ff7d28a7e (commit) via ac3d38292035a470affdd0ca9df88992916bfeee (commit) via 238dd2fbab1bd4fb53a25dcd07c1ee41da46d451 (commit) via 36b8de563cab1933fb332c42bca68125dd13f35a (commit) via 2f7ef7e38d7aad93f5d25efb4fd7f61468cf06a2 (commit) via 6162c9194bfb416ac43f52f281db442a4d484aff (commit) via 4c69ec6f121f303113d2f8a158d2e53b7d93d6b4 (commit) via 3ad893b5c23566184bc78eafb1446c05bd39a643 (commit) via 98965fb12d0d07deb6d953624529f8b8151dce13 (commit) via a15675efc3d96906d4e803def2e83fd3bd1cf812 (commit) via 64c30bdc48d0a3e1da48fdbfeb200740fa5dac43 (commit) via 07d1f6fca1d6ea21dea64b32639c44d5eecf98a6 (commit) via 225c0ef88bf21c39694b51798390b87328a163de (commit) via 7e5e8a37b56dd7c858d54c49e7fa6697cc72395b (commit) via bc045555b54734fa20a69d87d64ae9152639654d (commit) via 427d9324983ddd02d5afff780c6b23ab5081c8df (commit) via e5b914209742a70c72c6cf8a8e6e1e005d8830f2 (commit) via 54d83caecfc1e0b8f047037ea6aaa7d54b64d8b3 (commit) via 4729547a5b2596d6997e9b9131751995dbc4695d (commit) via ccd004666750248ba0fc5193ebefd45f93c12693 (commit) via df16dcfb4478bb05932a1abb0e42433e60f1a565 (commit) via 4aa9c64511adb6e3aa1b686d07f8cbdf92dedbab (commit) via 9a8ab86645b0ea1fcbd1b069694d0cbb4fa2621a (commit) via b0a5d3932d2a6633d05eca3eb7fd632f433dca05 (commit) via 55a73e6b1f70b3c8a783b130dff4c4689cea5ba2 (commit) via 8dc8d756bc278cd02f329b31218c2459908dc0bb (commit) via b5813ceeb5b5f78351dd9f9c6af904db2f4451c9 (commit) via f194a009c8efeb6f2fd1f212dee678c54d4ef48d (commit) via 3ec1bb1537c41f58da2dc6715e4964a38d1b1043 (commit) via bb3bce706a2d41efa034f5b8e71ad701982acf5d (commit) via 28fa4923c3299f81659ad3ee644509ea3530fb14 (commit) via 837a8a6312d543f1c46efa532f7d5b5dfb334bc9 (commit) via 4030ddfda8c715601e60e8f0322554f464497807 (commit) via 17d6a6fd59efd98b1644d6f5441bbd36c19e1ffa (commit) via 26fb50114f37366c5c72ec76a1c09bfb2f94d19c (commit) via 7ecbade8877522d9d565bcb2216f71426873f564 (commit) via 44b2dcb2e0c945339947c2e71b32f6da2fc4f610 (commit) via 0042ad97480a236cd748f7d5aebc70ff21e75513 (commit) via c1c1fcb17cb2a4dbd408ac7f1b9a962966eb3939 (commit) via f1b0340d6c57af3ca2799c344b866d9cc5c5cbbc (commit) via 038caf38b2c72577f2ad74b5a24c522e5537fb96 (commit) via 35ea14050ee41f9ea1c540ef2f582607b3d50925 (commit) via 04e880fd33ca8a95ef15354f1791f151fe7a54e5 (commit) via 3fb174dd0b1e6bfb34c6ab82d9b22becd4181be4 (commit) via dcd2e38b992eb327f5387fa9a7a9195c70b24593 (commit) via dc451574c67da688024d5f3686c7c2aa4c5040ba (commit) via 9bb7f8f8982d1d73ca4d4ee108f3f2505e01ee7e (commit) via 46f87655c973a7bed523fcff76b59a465b751df5 (commit) via 8c4b7c567bbb47ed9555da2bd50b672304ccb858 (commit) via b4e54f9b8c748f78d16e9da055a7e0436d7654ef (commit) via ab4d1d07e44b42d963aaec8b8b4cdd57c938ea9d (commit) via 827243942c3568bbb621c4009c8f03fdd0ba71f7 (commit) via 73144c098d8b176bb99b762450b9b231687011b8 (commit) via c4e743674f3f7c576ff90cacae6465e7e171faed (commit) via 4b70635c9fe9b4425db275c2ed3be1b5223ebe4b (commit) via 592dd355705ba0b22f33d48c2e0b5ff0e2a471d8 (commit) via 6296192defaaaa4c18b1821614c20b95ad94f806 (commit) via c13656e7173a517961349a5fe20ce0f727d37568 (commit) via 3e34e8331a72f227248a235595e3cfeabf65312e (commit) via b3e86f4e976562913bbe322bd2856a75a1542b27 (commit) via 472553b4c152e741cfafc11cdca48a5bfeae4206 (commit) via f89e41c3e7c6d47dd26a47e3543ada2301db7521 (commit) via 24dfa74214bba9ac80e675e0cf7d13d72474f652 (commit) via 998ed4ca0a922faf08c7ee3e95f337ff9e8f02c1 (commit) via 07cbe3640e3afc879a07b6510de4c6e437f43f3e (commit) via 998e9c10943ef361785e6f15cab1fa61172b1c24 (commit) via f07d96ccf4c0b09b544efadaac47cd79f9298b89 (commit) via 5a8b9437c24e1548ad15ed816e0f252e912812e1 (commit) via ec31926d24ac2cf9a8aef4cfbcbeaaca0c99b717 (commit) via f881c6bafaab2c62617259c86f044b05cefe21c2 (commit) via 73ae888506c89b8c0619905f4c19b79116afb514 (commit) via c2445d3dfd837cd2e372061f5545054317be110a (commit) via 3b62cb7244716e0bd486d7023bec15d922572ad1 (commit) via ca3d08e6b598a7f7d46b3125a0d7ddddf8be8dcd (commit) via 8e6114017873e50817c6961ffcedb3c52a2ed1f1 (commit) via 028cdfb3deaddef510537bbeb1a4202924c1a80b (commit) via 61cf781a6216c55a60fb73d4fb5fab76b1e7fc34 (commit) via 0bdd4ebfb8303cc46e4a8bbe16f6c7bcc7108e2a (commit) via a9fae8ac1d952ffd3b54de6082f9729466101bb0 (commit) via 2b28e07c02d9f13867d0f518b8341e77f006faa4 (commit) via 05105d5c13f6662907cfb63fb6723f9f34f4558d (commit) via 52ee1946b9f25e8cc7befec9276b2d5379ebf92d (commit) via 2a9f3dc6c7aed366d8dda71038bdc2b62e4fa78a (commit) via 661622f011810093433afa5c9a4795b3d2f19070 (commit) via c20d3d319cb97da5793beebe42a80361b2d247c4 (commit) via 279a2bcd654b35591e4728e2c2a66cbe1ae2a767 (commit) via be1109d811a637f03328d97a3cacfb9dad273744 (commit) via 07a3f9ad17194eda4a8df48351f25682aab50345 (commit) via 098fc4a862d51ad7cca154cdd5f0a2a8ff0763c7 (commit) via 1a9ba38174578e56a277cc0d0dfa2b3f8340ea74 (commit) via 99f682b0fd2d01c57a365442b472ed628bdb7a9b (commit) via cca8c3bb60ae156e3b14ca3d158a83b819b30d37 (commit) via 90b015a0bacdbc066670becf0e16843c104cce8c (commit) via 23e9bc55f38665adab6406980edfaa26f5b14d88 (commit) via 3b3da0d39e36b88db521c8f7eec31ede82596ba1 (commit) via 396a008ff0ffed5d4f07f0cb66de5d2523772184 (commit) via 656af73bca01e4d0834b398685513be2a30c2c7d (commit) via a19a43a930a577edb7f2aa2fc11e28faf7134d9c (commit) via 400af305efb009e5274f1122dc0d596fb6781f69 (commit) via 1819d4ad1fb0016c20a46a0b66274b53d2b0f010 (commit) via 6ed23ff4e9bbf848a77865e6d08c1e8e6074de92 (commit) via bb83cdaab67196c0ddcc0a0dbbd6f73f2e98938a (commit) via 7a2d1cd6d4c1c8759078d2f9e26a930d5e353c88 (commit) via 82fbf490b56e0b070cbcfaf1568c496340cd6e8a (commit) via 66977652309f4d754bc1b4603475569db40e4f77 (commit) via 6c39bc5520aca779a69ad31c0646777e99c2aaa5 (commit) via c294a115f2a44b60eb6343324e15933ef8a4593d (commit) via e42da30782785a02f0fabc385d14ac8f561af602 (commit) via bd6b42c1864dc1915e5c86cceb609e87f72f93b6 (commit) via b341799e53e468a02bca78e3270e60ddccf8b4f3 (commit) via 99ca7a0391dc8363c372aa8717c1217431c829fb (commit) via 594db49e567d705bd66501a5444a279b5b3eb0bd (commit) via d760c3cbe8ad5c63cef309ee7a182acdef79def7 (commit) via 9c4984b4e50b3ab9c09349240c532957c3189116 (commit) via 42ed76bc994ccdad56392ae5ed6213fb307651da (commit) via 202056cdb89da39e35d8af745c1ff0852a9be75d (commit) via d64caa5372b182ce48f752c9afb9141d56055bd2 (commit) via d63609ed2a5f707b0e72adef2a1804cae611caa9 (commit) via 2c76f6f4da4f0fe9e94d70ec3ba9d3976dc43829 (commit) via 5bb0ae03ef00b35d443269eef0d589d307306bb2 (commit) via 852242b60d09d505ea59dc4eaccc149df87ce7fc (commit) via bf731becfacfcbc1512644c60a706d385850a2e1 (commit) via ccd5822a8322155a491ad871fa135cfce1ef9a88 (commit) via 1ac8523c3bd4f404d8306b3d5fe905e1d988461c (commit) via b189c5994d94b8dd0afdf14844db4a4be28cf4b1 (commit) via d48ccbe458b796ec7c263bbe2efb28fbb8b10147 (commit) via e2a489c76aed54e96e85627a66692a11784e9824 (commit) via 0f99feec04193504a5a9ffc05e2132619ecf7dfe (commit) via 722f1a71e397d1ebfad439fcaae6e199c8976289 (commit) via 2e9acb6d4335064f5c742e5f96eac604f1abfa23 (commit) via 1f7de54346142f05aef5814ee16754fba017b521 (commit) via cd7bde80bf3c3e141a92058ad033833066da509b (commit) via 45b1e31451dc9e393703380282434a2456284954 (commit) via a39e65a8172097f8b2545610188a2bdc69598497 (commit) via e7f26687abb54b2f4251c809f7499d238f08d430 (commit) via 0549694718237430b349e07f3ca34e3ef91e3c18 (commit) via bdf278ad5f9029dc7b63469106db808e20a8ca8c (commit) via 7ca6bdf0355157da9f85f6bbf039a632ffdf66b7 (commit) via 1651dc96683282c0af8ef47973db9afa950d6bde (commit) via e4563257ba66266017fadf24c1b97fd103a138e4 (commit) via 2a45da6ea4ea2548258ef550afb3dd3cf1475b4f (commit) via 3470704f5a68310a063d928e290a41be5e49620f (commit) via 6a5ab894fbb1683ed24bfa5d603eff6ff3f40039 (commit) via 9c7c6e434a1483ad5a188136a1cfb7bbf9cf5d61 (commit) via 70ffd71db1dff3973f93edb9a6120cec0023f89f (commit) via f408667d1926167fcafbd4f4f16d117a5dbd2823 (commit) via 4e61edc4577b5e01dd6bd802b9b4779e1985f77d (commit) via bd62c5211576d626d19a27d389d1fa7b42390576 (commit) via 1dc6f6f8a18be8e9eaaf7e114c47c9d30c352ffd (commit) via d4d2d72f5d28e044d18ff5479ee55d872c9c5746 (commit) via 3a605693a5349a252bb9c3eb472d02b1c23886e3 (commit) via 207b7af00be53f0779c4896f311f130455d3aadd (commit) via eeaa25e52144626dc76717dea37af3b8d20cb171 (commit) via 1b28e3b28b86de40ceb6d402b6f41f30eb0c8b59 (commit) via ddd193fcddbf7e81ffcd51a6e51227342a78cc4e (commit) via 2a3e263173e10de4a067a9de61318f6d6e0f0f17 (commit) via 1c8129795ac482b36a67d0b7131f2bbd6ad04a54 (commit) via 29533380ea887e3f5eab44260bbd77933cf91ca9 (commit) via 953d34fd1fd004459704d4625aff54a9dcf9141b (commit) via 9859042c0501f444fbb9d5f2b78b5e563a97f71d (commit) via f30bac5eb47b06d90be57d9aa8f176eeba1c9152 (commit) via a85ee8b8cf4fb4be5f5ebd6e88e2753d1ec654ae (commit) via da7155f5bc70440ccb1238e73194c2a454442f8d (commit) via 0622f92d23771126b2ff5470faea58a76326c413 (commit) via dd089e08b578f20b7dc7d2ce658e3df05e346e35 (commit) via 1b3ab3318dcdabe074da3c95b54f9483d47f95be (commit) via b9e0babea92829e622eab9415ea64e43ec41bacf (commit) via ab09122717ff8138086cd46787f0badbba0f5669 (commit) via 872ad7a26d9cfeec877d148a49e10d18e29141bf (commit) via 526c34b240638bea90cce4162a95f0c8c7ea8a88 (commit) via 6da3f173093ed5b6b2b1944c9c561fcd62d07eee (commit) via 4d2c6290453e00f0b1060788cf52a5a01963b864 (commit) via bbabb9d810b52df303980a2271ad538637c077d5 (commit) via 18817e07d61beea11fa5d52bbb26db715b7f8b1d (commit) via fef31f1f21fe642b9c2893544a330144982c7449 (commit) via 480e60298f862e0c1942b6e028e509f81b9ab71e (commit) via a300d0ff0fbec17360113f9bb1c09e9efab19792 (commit) via f53a3340bbb6ca4fa57c21187206df8160221d4d (commit) via 2e92570bdaacfd5791c37e0fc302e05f095c3901 (commit) via ba8c6632194256a6a3370713d8e0423ad516361a (commit) via a829f09bdd5cf28c59eeebd39d1652be2bd23283 (commit) via 3cc84d18d428934076baa16e1dddf6d414f09622 (commit) via 9f41c45f4325271a24c96e17853aadac3a081fe8 (commit) via f6c8d3d82fca676b127a601db97e6c0d5b7342e4 (commit) via 9c4ef206c7d13da0cd4314f4efea6452ae183fbb (commit) via ccbdac21df01b3e084bd70dd3b5b4ea7337c23d0 (commit) via 97b65f8156734db2adc367b27c822a5fe332d740 (commit) via a0792c48513fd76d8eb00a52f551f0f6fe1b71dc (commit) via 17f638a4c923bdf96376e8ecfe365337906a6bcc (commit) via 17a846ac3e8d0fab4bb99e238dbe867941594465 (commit) via 111be1801fcf50412e702be2d5966dbf52926b94 (commit) via 3171fe0afa7169c1e814a5c0e08b115002f0d3c3 (commit) via d8589e6437451ef174fc480d0dfc4e83e49b1b30 (commit) via a7d8345d8c2f319d44576b70481c7cf2e3528226 (commit) via 66f587e7dcd127bf82bb175a8c7e9cc8cecb7a97 (commit) via 3b9477231d2947fa6281a1e29b4459d3f66d4a49 (commit) via 92eaa4707785ccdcbd4b6203a7e0a62b990211cc (commit) via 009c1865dcc967a349be63a713c46ac88d297250 (commit) via 3fb33e01a1c7a55f35c44a489273f780b21bbca6 (commit) via 8235effe482308b640e91ca44f0ffe21546522d0 (commit) via 2372cdaa3aa2c8b6fb0da1e6c74c10695a1b1ae8 (commit) via ce331bab929c5a38e048ba15d7393dcf96fad9e1 (commit) via 95655dc730118202464f5ac8289af89c29c4a4a7 (commit) via 09498b2ead29a64816e5c301b7465164cec25c1c (commit) via e72987dc11b17a9c0630ba053dc4d6488f751002 (commit) via cf54d8597d23141273f6e2a07f00ece959bb06e3 (commit) via 47c41d902c00acd39c0af668e15bdafb591c8c43 (commit) via 79d1e1347a63aef89441b43ad61303109062a55c (commit) via 413ce0289599741b06fe14f7f8552c83277fa5bf (commit) via b61994d0a73df7d89373f1c3cc72610c655f9e56 (commit) via c2b88742891da193b74aa733bce1daafc24a1557 (commit) via 90070a65d217935b71da8b4ac361f78b608648b0 (commit) via cfe666f1a2c13e6d8093dff87b362b5e4ed64114 (commit) via 9e6e6801d05450d7895fcab5bbb4dc15f0d11657 (commit) via 6c67b8168cd44e5900982ca3e36049792934d83d (commit) via bec5b3df0148bc8ae9c9c777367386fb1a38ad04 (commit) via e01040636d3c8028019f00c2f226dd2f6d552732 (commit) via de022e8908cc5b3a6e0f179a81482fad4cfb6072 (commit) via ce28da6c64aba359b4399bca56ec60707a3d6073 (commit) via fad59f2dd12b72ec1b23b08a8bff7f0b296bb4b1 (commit) via 03db9a061aa62eb2b373010a6a38d5707749a6d7 (commit) via 97841dad2ba5a79acb0b22db9a01ae45f7b2e80b (commit) via 29b0c8c3606f07f3baee245138552c3c0256ded6 (commit) via 356f7cf4457271ee85a71face453ea9579f05da3 (commit) via 65ea5eb721d820551653bf6471e83ed5f4a5ba13 (commit) via 644b4688d71cc52f8499d6103495de0909319557 (commit) via 8a4c6d2d2e66d210e5c2d59c86b3f1bff2582867 (commit) via 636f0c1d4fa3f003fff406b27306cd6883bcec75 (commit) via c90633df9eacb3063669ac0aad9506cea1885582 (commit) via 67cb50abd77dddc3cc74597efe38285f9bc9e4cf (commit) via e18e21aeb52923d470680aa171f722b4d3b5d01d (commit) via f0d0d761b2150e41397af8cfce2b846107cf8921 (commit) via 31452416ba1be692b55ed09f8cf39fa2914ad349 (commit) via b96b025b2a337d7b09157f8b24cf9ca77a825863 (commit) via 169f116632321e99701986f48a19e836d2b9e710 (commit) via f545eb0b0b00cb02f540636549f63189f43b4870 (commit) via 7626c8dcf632a4589c2a9008f083f7777cee946a (commit) via f5ede30006f61ef5bb78d6602ebd9083cd7f9869 (commit) via 470c549c622ddddd0be3ae63945e40a1cad85923 (commit) via c7bd2753932d1f2bec0b66c042b999a95d5bb713 (commit) via e4665171f45f6f06bb75f677a29d65015a4f5d0d (commit) via 09f797c19ccf8fb5e4241008e9845ba9ab7200bf (commit) via 13fc2ed4c47962734ef0bf4bfb093ab52d20d8fa (commit) via 44f9a69d3402c22526274d38837104b5cb9500c5 (commit) via ba98442610024cf50cb407a5cc09f25096a7c79a (commit) via 0f381ad5218758aadf92bbd4e5d68347a06cc3ab (commit) via 88eb5824da12940e78d57fe254f17f64cdacd659 (commit) via a4f9b6f0ca9248530b9749b7fa9628053a3f8f98 (commit) via 955fbf29c748209c696a59effc39d19099e52095 (commit) via ceecd7902fe80baabfad0235c54719e19a3df06b (commit) via 7878d06189e6ee11646fcad9851d5bc4d19a16e6 (commit) via ff50046b78e23f8d8f23ea8b44dc1012edb0d792 (commit) via dc3b222143d16ef0af6e6450f7869ec418b911d7 (commit) via d90e288b7babf6cd493383e425c9e4d21905fa25 (commit) via d91feda4136b8fb9bc3002b38ba8c08fca9cd62c (commit) via 9843dfab4486f76cab567862e504a71d1ecc58a5 (commit) via cebce135c083807ac354e95278a5992f7feee3a2 (commit) via beb75b378f156eed1caa882245278c4aadea6f63 (commit) via eccc5e34cda8f4c784cffe4a255db82f5b20f832 (commit) via 03b3ee7de25acac71fa37c2add32f6d431e82a41 (commit) via 72c4128176e11fbbf05a0d93bd5bda6a4f90e1b5 (commit) via b9eac05fb65198f1522ecec756f3fb4ae253e34b (commit) via f773e28a8e6033ca128e1dd223fc2345a97efba5 (commit) via 53fa072e6a63477916f38028c5f5d818c47f6980 (commit) via cf63779f353ce95434f8dc6926b3047217b78f72 (commit) via 930178283a749c4020265259ea3f828552affba2 (commit) via e6db4c5a4ede8039ed525e3facebd7e0eb7ec1b7 (commit) via 05d6531c7a8ecfad513a0e76b44b273b70fa919b (commit) via bd360ee329e74487dba526d7847794bc66b55494 (commit) via 0e466f89fdceec50cbc3c21a0d1e0773271b166b (commit) via 7fe6bb0d62ac6a056bbf52cd87b44a49d7b6441d (commit) via b7d760aea20f70b221fcba7ecb2c7edf7751ffc2 (commit) via 48f78f5f9ed3a7e0717359720ecc157418f55155 (commit) via 722178fc7ef47020323af4a97dc5600e43652a2b (commit) via c3c251ce0ae9ed6432bf1abc887309f01d498d38 (commit) via 5bc82828987e8b59dca6d348294282356eeb1a66 (commit) via 3e33feaae23991557aa39f53804739e7e1a36726 (commit) via 983e434b006bd46206a6d04ef0f04e37b652668e (commit) via f39d713af62b4087f059ac0cd861c363d3f45bd3 (commit) via 0d757166fef0f258d1e69f1d63c64612d9f7ecc7 (commit) via d051cbda5d9d4456619fac5d49f24c8827228aa9 (commit) via 3350e4d209b6a7ff758ca371af4d62844a66ab36 (commit) via 067b49a6569422c4687209c5bc57043630705523 (commit) via 0de867dde282670461e56ce61e9c33fc6044d9a4 (commit) via be9bec5df2660661984e080dad9ae7561aa1fe83 (commit) via 8e75f1d2fa3049ac31f4ebdbc255fca3e6414802 (commit) via 2a92231630b6aee671c7f4e8b64f69cfd172b9e3 (commit) via 8b5591f93ed85c6f84f2b4c076be98c57b871d1c (commit) via 22b72b189400c1a50030b59c378ebb68460ac7db (commit) via 9f59caa9bd1aba3de27aa2fbab89b56c6b99d9b9 (commit) via d724640fa22e315b28f994fbcda43ad006b4f57f (commit) via 75a9f2fb6bb263a717be7c30b0c512d2387aa514 (commit) via 4d9fec4fb327b886c66a12a657864cb3fac69250 (commit) via b9d437a2921cd808cff27ccdd4d39cabcd87bf5a (commit) via 9e4e0a2307325047d9334081915aa5fc0de2090e (commit) via 584d625a04a65c89b867f15ceef5fbfdaddd633d (commit) via 0963fb64c62a7cd336c68e95c6935d084cfa114f (commit) via 3fae1f9265163d5570078ce01141de06ec55e611 (commit) via 808c77e2319a4a81a86b2df3bf8fbba6bdbac7ac (commit) via 82582c96bd86969ee5e1cc6f7bc4e5b12e1717e1 (commit) via 106c769f1d46a2410ff62c3dd4cd02cd1da7fd37 (commit) via ac5c4487d899330af0681b1cf3e950b3d016a986 (commit) via 43c93acf274d5ce6db7d9a871b983625426942bc (commit) via 57a77fbe6934f13105f5c721ca6e5dec00002284 (commit) via 6b939536154421b5e18bc8e908b1bd5f7212a536 (commit) via 5a611495c220af559e93aa29d5bfc786ff40d440 (commit) via 94c7ff9fef395a2f970ea9ae9076549b8943f566 (commit) via d124c41168cb509e32a31d09c1008bcb6a3d1d7d (commit) via d54617d0068fc5acfa2079d1e8de8f38365564ab (commit) via bae604d9a80d5d97c676c85848e37783a153ff19 (commit) via beaea609a04848e3596afe6f0e8340e923fbfe28 (commit) via 6b045c3ba8be63fbb3cd8dc026e984184696730c (commit) via 66ba7ea831ca8d44b137e59e8271de3c7756cfe3 (commit) via d52cfd129cc63708c6b2b9e561eb02c465c8cdc0 (commit) via c2af447d445d87bf4b09a051b2cf78d39667dce7 (commit) via c7b9fad117a8036bb1a1bece633bacff426d30fb (commit) via a11dda1c4883eddf763ba1eb2979b45220886b01 (commit) via 1f4f2aabc7fd683874e7df14cebc8c8e0b9a74a7 (commit) via e993c384d93335aae3535c73dd533e657c11da7a (commit) via 90cfed51f6aa56bda5b75af909b8ca565fc7b774 (commit) via 4987b3716583504442bb737c9d1f170ba99feed8 (commit) via 623a06a6f3bb2ce4a55f319207116271eb054c72 (commit) via 2fefe9e5753a52cb229e52bbd987ab4ea1462a4a (commit) via 47f1020b5446b9913198995cbcc21247896670d0 (commit) via cbec5c0445eb48d88d70abae77c0c0a8debd6a41 (commit) via ce64e3607f0bccb4b1239d28510c92bc264904ea (commit) via 0ff35425d7d26c3c5448d4232e32a14d43395e86 (commit) via 6a2c7e1e0ddcf8e14998c487b59afaf80a514279 (commit) via c8da86a094f48830fcbcb0d2e68c063cae3da27b (commit) via a5531950cc8a68692281c24ec2241011a3f14062 (commit) via 61a987c2296576ce4d17cb32deda192a01d6fc89 (commit) via 0f192080761529518128ee697d477ab5ec2e7ea8 (commit) via d1903de8c5bac7b134d5f77359be48aa4386afa9 (commit) via c9e32b0b122cb8d051c90bcc872244614ec40a39 (commit) via bb1111eaa220eb534338410e2d1ffcf696f9ae44 (commit) via c5ac0fce5cf1020f661418eb1dc1f35c8f3207ed (commit) via 4cf5179c77237f3eb56f85eddebc43895691694c (commit) via 7e8fe68e9c4b34796982604dd5fcdb246dc5a557 (commit) via 5eb4d7590e0e721b56fc735ab6da35d55ad339d0 (commit) via 2a0c65485854bb6e6a33a7d5acd99c936adacec6 (commit) via 96691d126bb1d1e3a9c7fc049429a36032a98346 (commit) via f8f02451ad2f4a595a71c6a85f9fe5122fa83d6c (commit) via 8609a884a2e0a7518180b11b6b6ef9baa6200424 (commit) via bcface3932edb879bb71b90f65b628c5d9a11190 (commit) via e12926e7932212d9b84bb7f456b168437c7ba863 (commit) via c8540e94661ba286c2b6e35bb77f4e8b5efb60f3 (commit) via 2ed0088b2abc591bb5ba6b4a13ee9997231883eb (commit) via 17b0fe03052bcbc45293139d408e008371f1ffe0 (commit) via a075777ca1fd66cb0135705510185e7a5277e27a (commit) via 12cb0b868c462ec64f1578f5450e64246986c58d (commit) via ba74465fbcd2509415397c1df93b1c86e70a45ab (commit) via 41363c0c615848e9708c9105b0daeeef98f1f427 (commit) via 4efcfe52f491a6cd43809d5a182192060d77c5e8 (commit) via 5f4695cd06a124236520c8a28d8b65929f83bd3f (commit) via 7a0643379be273e64a6454be4be51e652ff093c4 (commit) via fdb73547220ed9e9bee0806abf388b830ac79bd5 (commit) via f327a9fd26a24b2aaf609a9b3d34258c7a992bb3 (commit) via 32a191ce4bfb75765e9d5d5117d6fd6882c453d4 (commit) via 3a20cef3d71ab55c77aa85b05217e13afabb35b4 (commit) via 3749ad49e3251dad7b392317a50ef3b1194ee63b (commit) via b6f6b0a983871d4eba677c3a760c0f72bb4404ce (commit) via fa1a066af1a7c7e0db5661e69fc576ea28a08e91 (commit) via 4d52cd36ada014bc3e9a65be06b30966cf29f9a8 (commit) via f7b6f3d967b9bebc720ba981bb0f4d8b706bc74c (commit) via d49f1c5e9400c6b5d6dc205b4dadad2fa21f6eb0 (commit) via 26e98c34dc2a1414f79b6a12de3c4ca060af7578 (commit) via 3bd59b6014c13a3f980b9988ebfca91e0a2936c0 (commit) via bf00f5287b2d0cc2dbd175ab25e7cafbda944f23 (commit) via 7a68729223c05d779188de89066de414d131dbcb (commit) via 44f02b42fb3b2278fdf8e9bd450c3f01573d1e3e (commit) via ee3d06a41ec6b5355083a3eba36cf73a5438c1c5 (commit) via 51a60973eb67b33e857473f2fe98ae25943f7648 (commit) via d526ebc603b0a83a7a1602ed4ddcf1b483077cf4 (commit) via 7a39d32f05ecb77227d304e5fe055cccbabd2739 (commit) via ecdea34fcc3bc99f9fb09bcb16f57d7d56c8328f (commit) via 397c762da4720be6f65eb19f0ab8d260f6d30043 (commit) via 52fd5775d1e90cc5beff0fbd6c9751caecd5833a (commit) via d903f7ce910879ad5439d642488e508aafd4b049 (commit) via 3609fceee75b4f3751a702ac0a7f21e5cbd67a0a (commit) via d931ba60216dfcb5f94ffc3b8e6d977b1e4dc22f (commit) via 46bbf947837f408cb7d5bd147e078e86541a3103 (commit) via a42c51b5ab54d8d318f00cf9938ce9fb1e2ac274 (commit) via 350223141073a91c272d303ee45c0d67e15562d3 (commit) via 85bafee7eb9a8c9cde16ba5b5cccc099cf33d22d (commit) via afc557d10e8d36db190bab45948f0fa74c8a0a67 (commit) via c5fcbe00afb27fc758e8877efa955e86109a0c67 (commit) via 444f61e044bb2943ccde07e42972d9b2720acd4f (commit) via 033ed9a5942e789c11130c325db487831dc417a9 (commit) via e943fa8a19a1fbe190e6fe0591d2b509e07b9878 (commit) via c61efbd684337bafc6388a3e4daff23492d9992d (commit) via ba007d3f07acb18f41d48575ca0b8700cd4a6e8e (commit) via 545d10cc6793555ab881d27207e4ae378f3caade (commit) via 557aef0b94c86d13e802e6e8e34a491304d7be2f (commit) via d42e3149005eea81458a5104d3053928da395918 (commit) via f1cd1434a4da9c26d3b546d61349a6296328a0d8 (commit) via 08348aec485a3b4731e4551af6522c68e0594547 (commit) via 67bd514adce689f4c7f537cdc446c01f7373f5a5 (commit) via e15a7075b58aef6fe7b6eb56f810d0f33bc31feb (commit) via ef42e57d470db499a41c8bca695391c3e3e5cb86 (commit) via 592644c42c58312aadf1fd1b28e95c7f0fbbb2f8 (commit) via fce1d9c2482fe6dd6c7c06d7dc10b9bef2d99626 (commit) via 5cc8169bf9c0d04d74fb82e3bcb586095635fba1 (commit) via 2d75d7e56bc00c9abe51d39c4306084b24fe8cd5 (commit) via f42d86f0b834c73b28a919ef1b4279753a6ec1bd (commit) via f281ae01a2b89d8a7d327b3f6e73b727195d8dfd (commit) via d5eae5563f99fb28c99695fb4886f1bd40d98414 (commit) via 4d1fedf46e9cbdb388728c9a986cbf89db810c73 (commit) via fe5d6e8c0f2e37bac0621a3b976d95c471891f38 (commit) via ad6ee426278ebaa9518af4573362a96b0544f4f7 (commit) via 39baf728b78bfc5ae99258fc8db1c467f01b9ae4 (commit) via 0b3b54e21f5ab827d8073ad58de92e73d8688e6b (commit) via fbefaaba2091c573aaa67567a05d5da36da8686e (commit) via 8fddbaa3fa78185772922af9cbf6a31358153796 (commit) via 810ef59a423704bea0804ef97c5ce5c420b38025 (commit) via 2531c0aa09522c7f6c07bcdc33d0dc8e778a219d (commit) via 0cacf73959a999e7b79d4e9c2f0d2f8ad49efa5f (commit) via 0700f2ef1918a4bf9de197e1b25f1e2a00eb82f5 (commit) via b138be07b4b2258a3c64245cdf13a4d7cc05b977 (commit) via 8d379cd7ac25481ef3b43da12aade24b1e47ccdf (commit) via 66ea634b4c4ed75e3c5a56acd7d312f8ad764c49 (commit) via e7bd9e9b08ef3cceada5110c6670825ee2f7375d (commit) via b821f5d314503f0117b9a10f7c8f4ae69e8720a1 (commit) via 474bbb9dbcd6c257e68874e6966c145b3b82dbdd (commit) via 184154e3e6cad37e234f31be2ebaeaa255d8834e (commit) via b015b4698e43758aafbede3f1dc4c8c1256ff79e (commit) via a9a040e1698a7caf9518c27d3394293e7fe11d59 (commit) via 307570aee1fec8c7b3374571eb7b4de9d2be11b3 (commit) via cddb5002b5c28c0cc5fe9c1e41a5e0f556b3e3a8 (commit) via f4e652b5633c14d3602be8805a2f0c49bb524147 (commit) via dd89506c1ea85240b81867db5a467e6632a7ec7a (commit) via 8abba9247230b072996213d008a69a4a64456c06 (commit) via 2c71fe6d62c3095b40ab5778ac4482dc99c0bc61 (commit) via 3c497f1129c15bd5857cc6651db13b4eaab112ea (commit) via 0854d45bbbf2e0ddfb80fc9856a3b7b7c189e175 (commit) via e41799d574e6fbcc28882c54de55931d546f86f8 (commit) via 32b91b9e019774365029f98026ed0676708ce318 (commit) via 82c283f914c23df9e11cdc50f764bfa054540f54 (commit) via b18155b7885705f794af5025173b2d1e45154d67 (commit) via b80557c7bdf12f9e924ac8b010d547ce4561848e (commit) via 990cbf087b74b8dbe286492e512f30f0daa077ec (commit) via 1b0b040bed900fb974ef9de719632118c56e6212 (commit) via 03dad03a54c86b2ea6b355c1f29354b7843da6a5 (commit) via 7d9611433b2d28ab4b183f4734065867c8887926 (commit) via 9a4afc1f9f3c31923317995c1ed90bb4668596bc (commit) via b4f520409722c8e613d9e1c720a57624c81b8269 (commit) via ac9e4f9979eaa3832f228b64b2f4794b52506e63 (commit) via 44a6b6e44dfcf5085757664176d0c4856c53b454 (commit) via 75009e4bcd96dccc4ecfc12981ca89c330ea1765 (commit) via 35ecc3553e5732ddfa8039ead56d02f002df76cf (commit) via 1abd7cd930022ba045c3c0cd34406cbe19db84d3 (commit) via 3fdaf78afeb5faa06883186e001f8a0d284b87dc (commit) via e68d5c6000e25d837079c673316d9deeba3b8913 (commit) via 0019d54b6e4bfde7ef1c211a1c5e5bab194381b2 (commit) via 2a9ac4bd83f7247539616545ef0772fea1f4a1fc (commit) via 32922840e7ea8a0536fec393352ede5b75087543 (commit) via c5e797dbb8b2b507431c665e924a41ed0def879e (commit) via f476b41fd8a92c7784a84059f615fdf8155d687e (commit) via 8049114bac1fa943a3f983b1725058d1a51602dd (commit) via 70c2432887da232d65bdc56e34ff046656e19703 (commit) via 3dd26463d47d5dd118f85ff5e96184feaa19c987 (commit) via 3a6c3599063dcaf1a19e7987d0486c5e8edf28a1 (commit) via dd563e1eb3002578fcc28f9cc4ef9d2326043a23 (commit) via 861b0df4d1b11e6fbdc26c07fe6101f02a38b3f6 (commit) via 75f3a282b76baf615b17767d3768b781bfc463a7 (commit) via a1f964ef6897343cd47f904b7cf7ad94b2b65e70 (commit) via 742e6f8f06a635bbc0cb10a36ce68d5b9987f1f5 (commit) via 8532a4f9a061883dea639b2f7942c93a6682bc49 (commit) via 6431cc641bf42551ef6b5d7019fe857909d593fc (commit) via ee6c79d1a34fba29d321ff00b19e79bda472c0d7 (commit) via f62e476990df9814b6be61a231b6b4e3ff140547 (commit) via b6b37e303786e48c305cb83011ce5fa6cf71e359 (commit) via c02c747b85cf7bba8e81a955722122e844688d4c (commit) via a427ed0cb86f56ebd84820cb0c6f3cfd2ccfa851 (commit) via 17b24d552baa2bed05a277e3df11fe81d571a6f3 (commit) via 4c3bd340804117c810c38273eee617911d475a36 (commit) via 54cb23c657045c339a1a6060ea19d3a74a1c817b (commit) via c50f03275481e3e1434b5c3153d8668dde6cefd8 (commit) via 681693c99380467de6db0954e37903b527225886 (commit) via 10d80b68e426abbe43c200bc3f29e05c12e01964 (commit) via 19593042959274fab45f6bc0ef77d6ddc4532a0f (commit) via cf54aebb968aa66b0990174db8b73c405f6e9c98 (commit) via c17e3207fb49fe0c165167873fd608bae3ca19f2 (commit) via 1f7cb7e27bac9b18834402ccff30685f69dd838c (commit) via b18c9044122b0fbe7cc6c81efb48d0be8e065a23 (commit) via 860f0a2ddc4b586d639caea1f9c7c10b381224e6 (commit) via 5a3b55ed7c0419aa09adba38db41a258118dd580 (commit) via a82dde2d3ffa850bc7c3be80d5eae8a2607ba669 (commit) via 13fb4fd1676e309efb794241eb1ca2f758671000 (commit) via 5bdb9b618942bd506a9b7ee87130e6a97c415a06 (commit) via ac4bb0054db5d8ce474c4b1e5083a64f798ec546 (commit) via 0f836cb0ef1acd6e2e67060177759e65c8c5d7fe (commit) via 8b14b4eaa33247e57c865c38fc710f4fe46836d4 (commit) via 70105facd68819c28b9a1ca5ee9062209cbba474 (commit) via 0ef2d5f805a52eaac018a8693166a1d6075f1217 (commit) via f49e4c69b3af39fb29065636b911718e793b8f66 (commit) via bd0bc879c1cb4bf1ada673a40c1d71a0345e43c6 (commit) via c60a5f83cecc02f89410a80bb4137af9c6996733 (commit) via 67c4be51a34f86d4c26fa9f1f2f79f5539493eee (commit) via aba5cec6b262c392bfd9f94176a80113d1315917 (commit) via 3f606fa7d06a209cc2cd3a97afb84951d1c4c033 (commit) via c0b749cf62a2e985c2b1f94ff919107dbd697b2c (commit) via 917da5d02766e875ec63eca09eb52b789114674c (commit) via 0842b08463d14d6c7e27dcb4cda278805cce6e5f (commit) via e63dcb1378bb6bd6b0a76c1760c4c24c27f221e5 (commit) via d5a373a10d530c797a00b3f7b815fa68cca24510 (commit) via 81afbbc09bac6913e2b83f7eb68923ff5b1911d5 (commit) via f45cefde59f9be7a021ff3f183b785f20ac62d1a (commit) via db3cfc3376f2021f7c80ba220ecada64832b5ee1 (commit) via ac88ce2536e1522052ee7bf330ae06a0ce3e1a87 (commit) via eb505ef32b09552bc6e4445f193ae3823025aab8 (commit) via 190fdec8572ad6d2398e06954d4b7bdf0f212929 (commit) via 5204329315453687e6d1b0fa4b802871cf4534dd (commit) via 34c16c55580a2f03f0b180304801b8306e9cc23e (commit) via 8640dc54d190e44a41bed9fbc05267e4f4ff887a (commit) via 092dfdd238503de5579f5559ed5d8d1ed7072d4e (commit) via f81af6f52618e1220a20c63b7841114493f2fbe3 (commit) via 66158b6753fe55a42da4a58d8cac90210604fccd (commit) via 32b48579b637eb396a88fbb7943759e900a49d80 (commit) via 56f4949cbbdd2e10a9878c593e9d5fda2c4eba49 (commit) via c236b1605056d76d19b2bba7288ebdf7b67c7fbe (commit) via 6e927fafffebccd5e7675154db805f104059996c (commit) via cfb3a869500209d1afd17b3d517ad968b226fc63 (commit) via df720de23415e9df29faf3b26b55a9d0f2c98f8a (commit) via 468fb734b4462c2c338abff8140f90a3c9d213a5 (commit) via 38be87caa4c1470151d012e46c70f09bcbe7d334 (commit) via 996f822930b02fbf6f7b1bc2fa21ad52b10ebdcd (commit) via 67cfbf8eb7cb2ad0e177b68aa134bc65297929fb (commit) via f598f1aa836f7c9a60bc59b53ebbc2faae24f5a4 (commit) via 4ae133e09c763beb5a55302fdc1502abff6ff8d3 (commit) via 40bab8d17b18ca5e6864bf282326507c59826021 (commit) via eaf6f67f67e12c4e137c8e875ac277072bf910b6 (commit) via 45a25d63ba738e8b0ce690f8f02469a82815b5f4 (commit) via 6aa2d4773701d5b491c44e2c0eda202b46b36521 (commit) via 44853be608a18c94a1ce4000446ec7f29b8f0ee3 (commit) via 5755d0059a386324c89e03f279d875496b26ea04 (commit) via b25a200204c1d72df6f97b6362a54f0914c3b0a7 (commit) via 1531df2b866df9aa52dc54219a4552e94f47b622 (commit) via 5868b4e2fb7aa7de34403cae7dbc7a827d70a8e8 (commit) via 72b5b48040ed65fdb54b8ffeb3326b456586b8c8 (commit) via 8b16e62c7a10c246744327cde38b0b1d70eb8c48 (commit) via 0b8db9ced19bf6ef3fa8a23625b47a7f9bdfdd4e (commit) via f2805bd01b011604f95f384ce1759c15503d32cc (commit) via 14a983cce69610a1ed1b57e666d29fdbef4f7cd4 (commit) via 81441f328b8f09784afdccebab2e134b1de16919 (commit) via 163868b311158618184a98560ad8cffe3a1a9164 (commit) via 609037f4821c45ed13029074c8669d52c6dc9d71 (commit) via 98cdb658e481a23c48ad894bec102ec5f060d72e (commit) via 36cf8a1eb9eaa6d01a434d007f707be972e6e383 (commit) via ef09df646a480f4f879f19222a1dfb24316c1d6d (commit) via 820e95d000911aae2ca0480ccb92e627f4ad0c48 (commit) via f274597abba00d4ae7947a9212e1db56ee801c4c (commit) via 8d6ba35827bc4025a39acace8b65f2de96613a8a (commit) via f2746f2ebec8f929986f5a7abc5e9285a7553097 (commit) via 5e27e6f896976e1d167548f740f46d1477c8c48c (commit) via b233a09f6e9bed46b65079a2d78d865b816b79c7 (commit) via 927b59403fe522d02308c7c5cc14d0c9d14f5b21 (commit) via 6e1e7dd01499d11ae949f73b061dedf3bae7b6a9 (commit) via 89fd4b82d17b1072c6c4852087a2f01b66600e8d (commit) via 2e953c76573b5e146ce77ee807e4b1d2f4f60ed3 (commit) via 59242702739b92f1a152e2a2bb32772638fdf5be (commit) via 5c5c1e3c7dee614ab108a8809507a907a629a9d3 (commit) via 8d311a813c8807a518631ae63cff55c537d3eb7e (commit) via 4063f26b6502685fe7dfbd65ea517f3ee15d8bea (commit) via 53b8df596f4b9c6ddbff408a1c00010a0c618f72 (commit) via 392a318862b49d9715de76108209558d2a60ce83 (commit) via 1107eb3df8ed7beca97a01dd6615dbe253aaff7f (commit) via 6db59302d07f985b9e50f8bd01a1cb7db807bd67 (commit) via 80c881f7938969dab169f4fc4fbf8bc3d4355fc2 (commit) via ff67d2b57946a29e18d1947efe71f26ece9e1747 (commit) via a636de1e2b12bcbc09f18c4a34c22c08cc54edaf (commit) via 661fa7c917f64231200c8ae90b59fe9146dfa958 (commit) via 9cf069f88ba43931c46b245f567b0f8371a6067c (commit) via 15c994ebdc9674bb057567370333ee0330a60ad2 (commit) via 667560c88a707ca7eeaad129e253cce371beed1d (commit) via f04e0a2b178ec95138a2fbb7d4f5623ca41385e2 (commit) via fb13502fca5a344dd35be6fc919ae7e89ce9c6ea (commit) via ca83c39ce0732237c175f60e6d5b204ce5f907e7 (commit) via fcb4541a05ea068715c8815c0294d2638721b071 (commit) via 3942cf68b2e3b808b87c0127b1aa7bf52c59696c (commit) via e51cd32de34d9a2376594f80a6f31b4fb09c4e13 (commit) via 0d6cdce5b5542250c067d846f037dfeca1bcc8e4 (commit) via 220e81345b68ed3ad15ef294f6de653fcd1a874c (commit) via 5bd29b8889995089242f0f9f80fdb70e1e9ae88c (commit) via 8451f123503effc219fb1fb816b9659b7e156653 (commit) via bd3fbf36b4da6a160d13eac37732377a9b123c6f (commit) via d9c2c17b29467367ddefbc86cf7e1759c7df27cc (commit) via 98936ae3e0bd92faf282f78a53c9a177f96294ab (commit) via fddb3ca4432b2db003e89c570dad6fb5a770296b (commit) via 9eb385edd9df75ff9b545a375ac1104ce3ad22a1 (commit) via 78c0f514be69ee761d2b64943d3df37754843be7 (commit) via c752f8f165e9b8db7bc645cc55301277cd7773be (commit) via f1ac5ba5e8881d1cb88bdc94f2b3064c1007440b (commit) via 197a026cfb650939a5c1054783fbe0e83802c9e6 (commit) via 9ed546ff499b452a0266ab6c1c53e3131a67fd9b (commit) via add4e50dea4afffd53853dfa5cbbcb172f86a99b (commit) via a2456e157223255f0e2a71f2ddd510510e42b9e4 (commit) via 4fc3367fcdfb9156ddda253b3af213b0cd585035 (commit) via 0f068c177c3834aacc1b27e32c318b53adad06f9 (commit) via c5e72de1949ded9954b456f1e3cf12f95c289b9b (commit) via 8eb64831bec333914aab3af54e2d1deded02eb90 (commit) via 21cf9364f092004a027f11b5bf574804cc8cfded (commit) via 43b8bfb213188b1017949b5c29f3071e455121e3 (commit) via 373b625e4f6275b850f5531a0515436ac4d6a0ff (commit) via 22362c65e1a0e4bc43fb49174cb597b9dfb6227e (commit) via 97eb511672a8d5804f98942791c7bad9ac73e6df (commit) via 6e1c359fe9bee71c421a671108176d47fb415d93 (commit) via fbc2a384d8d137f2332d0f8de7a23edfac84a361 (commit) via a29953180c21ba0d56fb236eb58bafd40ae68961 (commit) via 506151af519aa50594000d22c66c0620f026878f (commit) via 21c2dd842b4323ac754c3bc76c6b8af25aa26fcc (commit) via b2a7f60a4660ced5892e47eb1e7dd560313c340c (commit) via 2a668e20da7ba6ae380eb44219f285f13fd34981 (commit) via 0213e6944ef471d7341eb1ac969656c68852f153 (commit) via f2cbbb72fa9bac75bd753c7b8fefbe86c18a6a73 (commit) via 6fe3ef26c6c55256bc6e2b211a5c85872fcdbd16 (commit) via 0a5eca07ec0bb16804b8d9946a34107f46b50e3c (commit) via 44c4fe9ebfbb8eaa5a4a2386973f50b744c91edf (commit) via b816563220ef58a1a7cafd04a50319df65cb2f8e (commit) via 1271a93434b6c32d0274cfad5e79cabeac80fc32 (commit) via 513369421602f0e102453779acfd2a58db70f2a9 (commit) via e5feae98383ef72ce2ae0e849fbd6ca47172a9f3 (commit) via fc9041d0249c113cb812d69ee0b8f1411f1eea15 (commit) via 95d84f76d9a8e27eb974fce7d06b7f2e312a05e6 (commit) via c8ba39719409dc106f76c0b67f805158be01b3b4 (commit) via 210230e216764144b9a0112799d4c9046c3a8dd9 (commit) via ae5686f8d0e4f153991d5a7c0cf7406fa7d3468c (commit) via 4f9fcd356b07143a570b39cb5be72d4e3a4e83dc (commit) via 4db483f89b54b261caa08b81c64d82ef7b86a6fe (commit) via 6dc0bbbd56fc28a6d24c8d8603ccc890310406fe (commit) via 43cb7fadb4b0c3c34478b6fc2e33b12258d1dd22 (commit) via 5c31c3e4eb36cccaaf72d0f0582beed98f6665e0 (commit) via c8616203889269830b4f4e0ab087bfc722e6fc62 (commit) via 603ef7fd9d87f55da803b13ddad8f093c6fba3d7 (commit) via ef6ce1f87ec2ba47694c470fbf5787a9ede0644b (commit) via cd4fa896b1d11c26edf07bae19d262c971901827 (commit) via aee7e4a03b8b410212e2eae23d1ecc182c8da817 (commit) via 368e8de4cd5a5d97c9b5e81489bf014579211bda (commit) via 29c3edb87adedd82e816552d958f4c3540a1511b (commit) via a3eeaa63ae9900123cf88e4155d748bf37b93cce (commit) via a14c449a9085375d313c44f67152fd1481a7a58a (commit) via d4525d7288ef935ee8b9d8cf338763498850364f (commit) via 6b698bd29fb23d6d1451c6aea86f227a237295ab (commit) via 1d86036df86c3b2584b7d70ae83c14a34be113cc (commit) via 2db55ffa56a69c4b55410afb9b40ab20f4025837 (commit) via cc1139cc304b6bd4c8403d437cf08f73e06e243a (commit) via 1b3495d32e1523648da08e138482a654f8765333 (commit) via 659605fbee9e9efc22cdd5050bacd1c094970604 (commit) via 4871885b9ce79c5d257ba0c2b879405631cd0bb8 (commit) via 7a373d5e55d6eec9448da7d3de145c0165f88577 (commit) via 9de113a943ae273b76c1b3cb648ac051aaa87f10 (commit) via a7596fef6e8d6938ce0d7fcba47e896f288b12b4 (commit) via 08f29c600877a445ef2f5b4e6125563febeb1e38 (commit) via 3fe5d9bff98b4716e219516c30d71462495324f4 (commit) via f086cb372e41035260fcd9b4ed3d2cfb272f138f (commit) from 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: CMakeLists.txt | 60 +- CompileFlags.cmake | 15 +- Help/command/add_custom_command.rst | 39 +- Help/command/add_custom_target.rst | 126 +- Help/command/break.rst | 2 + Help/command/continue.rst | 12 + Help/command/ctest_submit.rst | 13 + Help/command/file.rst | 35 +- Help/command/string.rst | 7 +- Help/command/target_include_directories.rst | 3 + Help/command/target_link_libraries.rst | 3 + Help/command/try_compile.rst | 126 +- Help/command/try_run.rst | 121 +- .../INTERFACE_INCLUDE_DIRECTORIES_WARNING.txt | 30 + Help/include/INTERFACE_LINK_LIBRARIES_WARNING.txt | 23 + Help/manual/cmake-buildsystem.7.rst | 6 +- Help/manual/cmake-commands.7.rst | 1 + Help/manual/cmake-developer.7.rst | 207 +- Help/manual/cmake-language.7.rst | 16 +- Help/manual/cmake-modules.7.rst | 4 + Help/manual/cmake-packages.7.rst | 38 +- Help/manual/cmake-policies.7.rst | 8 + Help/manual/cmake-properties.7.rst | 2 + Help/manual/cmake-toolchains.7.rst | 5 +- Help/manual/cmake-variables.7.rst | 3 + Help/manual/cmake.1.rst | 120 +- Help/module/CTestCoverageCollectGCOV.rst | 1 + Help/module/FindGSL.rst | 1 + Help/module/FindIntl.rst | 1 + Help/module/FindJsonCpp.rst | 1 + Help/policy/CMP0055.rst | 17 + Help/policy/CMP0056.rst | 32 + Help/prop_gbl/JOB_POOLS.rst | 3 + Help/prop_sf/VS_SHADER_FLAGS.rst | 4 + Help/prop_tgt/ANDROID_API_MIN.rst | 7 + Help/prop_tgt/CXX_STANDARD.rst | 3 +- Help/prop_tgt/CXX_STANDARD_REQUIRED.rst | 3 +- Help/prop_tgt/C_STANDARD.rst | 3 +- Help/prop_tgt/C_STANDARD_REQUIRED.rst | 3 +- Help/prop_tgt/INTERFACE_BUILD_PROPERTY.txt | 16 + Help/prop_tgt/INTERFACE_COMPILE_DEFINITIONS.rst | 18 +- Help/prop_tgt/INTERFACE_COMPILE_FEATURES.rst | 18 +- Help/prop_tgt/INTERFACE_COMPILE_OPTIONS.rst | 18 +- Help/prop_tgt/INTERFACE_INCLUDE_DIRECTORIES.rst | 29 +- Help/prop_tgt/INTERFACE_LINK_LIBRARIES.rst | 6 +- Help/prop_tgt/INTERFACE_SOURCES.rst | 13 +- .../INTERFACE_SYSTEM_INCLUDE_DIRECTORIES.rst | 17 +- Help/prop_tgt/LINK_INTERFACE_LIBRARIES.rst | 22 +- Help/prop_tgt/LINK_INTERFACE_LIBRARIES_CONFIG.rst | 14 +- Help/release/3.0.0.rst | 473 -- Help/release/3.0.rst | 473 ++ Help/release/3.1.0.rst | 425 -- Help/release/3.1.rst | 425 ++ Help/release/3.2.rst | 280 + Help/release/index.rst | 5 +- Help/variable/CMAKE_ANDROID_API_MIN.rst | 5 + Help/variable/CMAKE_MAKE_PROGRAM.rst | 11 +- Help/variable/CMAKE_MATCH_COUNT.rst | 8 + Help/variable/CMAKE_POLICY_WARNING_CMPNNNN.rst | 2 + Help/variable/MINGW.rst | 6 + Modules/AutogenInfo.cmake.in | 1 + Modules/CMakeDetermineCCompiler.cmake | 8 +- Modules/CMakeDetermineCompiler.cmake | 31 +- Modules/CMakeDetermineCompilerABI.cmake | 2 +- Modules/CMakeDetermineCompilerId.cmake | 2 +- Modules/CMakeDetermineFortranCompiler.cmake | 8 +- ...atorDetermineCompilerMacrosAndIncludeDirs.cmake | 11 +- Modules/CMakeFindPackageMode.cmake | 7 +- Modules/CMakeFindXCode.cmake | 8 +- Modules/CMakeForceCompiler.cmake | 4 +- Modules/CMakeNinjaFindMake.cmake | 3 +- Modules/CPack.cmake | 11 +- Modules/CPackBundle.cmake | 25 + Modules/CPackRPM.cmake | 270 +- Modules/CTestCoverageCollectGCOV.cmake | 159 + Modules/CTestTargets.cmake | 3 + Modules/CheckStructHasMember.cmake | 3 +- Modules/Compiler/AppleClang-C-FeatureTests.cmake | 11 + Modules/Compiler/AppleClang-C.cmake | 32 + Modules/Compiler/AppleClang-CXX-FeatureTests.cmake | 52 + Modules/Compiler/AppleClang-CXX.cmake | 38 + Modules/Compiler/Clang-C-FeatureTests.cmake | 2 +- Modules/Compiler/Clang-C.cmake | 11 +- Modules/Compiler/Clang-CXX-FeatureTests.cmake | 54 +- Modules/Compiler/Clang-CXX-TestableFeatures.cmake | 54 + Modules/Compiler/Clang-CXX.cmake | 15 +- Modules/Compiler/GNU-C-FeatureTests.cmake | 13 +- Modules/Compiler/GNU-C.cmake | 29 +- Modules/Compiler/GNU-CXX-FeatureTests.cmake | 37 +- Modules/Compiler/GNU-CXX.cmake | 28 +- Modules/Compiler/GNU-Fortran.cmake | 5 - Modules/Compiler/HP-Fortran.cmake | 3 + Modules/Compiler/Intel-Fortran.cmake | 3 + Modules/Compiler/MSVC-CXX-FeatureTests.cmake | 106 + Modules/Compiler/MSVC-CXX.cmake | 9 + Modules/Compiler/PGI-Fortran.cmake | 5 - Modules/Compiler/SunPro-CXX-FeatureTests.cmake | 52 + Modules/Compiler/SunPro-CXX.cmake | 23 + Modules/Compiler/SunPro-Fortran.cmake | 3 + Modules/Compiler/XL-Fortran.cmake | 2 +- Modules/ExternalData.cmake | 541 +- Modules/ExternalData_config.cmake.in | 1 + Modules/ExternalProject.cmake | 745 ++- Modules/FindBoost.cmake | 4 +- Modules/FindCUDA.cmake | 21 +- Modules/FindCurses.cmake | 5 - Modules/FindGSL.cmake | 238 + Modules/FindGettext.cmake | 3 + Modules/FindGit.cmake | 4 + Modules/FindIntl.cmake | 69 + Modules/FindJsonCpp.cmake | 117 + Modules/FindLATEX.cmake | 173 +- Modules/FindMPI.cmake | 59 +- Modules/FindOpenGL.cmake | 13 - Modules/FindOpenSSL.cmake | 20 +- Modules/FindPackageHandleStandardArgs.cmake | 4 +- Modules/FindQt4.cmake | 2 +- Modules/FindUnixCommands.cmake | 12 +- Modules/FortranCInterface/CMakeLists.txt | 2 +- Modules/GetPrerequisites.cmake | 46 +- Modules/Platform/Darwin-GNU-Fortran.cmake | 2 + Modules/Platform/HP-UX-HP-Fortran.cmake | 3 + Modules/Platform/IRIX.cmake | 8 + Modules/Platform/eCos.cmake | 2 +- Modules/UseJava.cmake | 2 +- Modules/UseSWIG.cmake | 2 + Modules/WriteCompilerDetectionHeader.cmake | 149 +- Source/CMakeLists.txt | 36 +- Source/CMakeVersion.cmake | 6 +- Source/CPack/IFW/cmCPackIFWInstaller.cxx | 2 +- Source/CPack/IFW/cmCPackIFWPackage.cxx | 2 +- Source/CPack/WiX/cmCPackWIXGenerator.cxx | 7 +- Source/CPack/cmCPackArchiveGenerator.cxx | 8 +- Source/CPack/cmCPackBundleGenerator.cxx | 146 +- Source/CPack/cmCPackBundleGenerator.h | 2 + Source/CPack/cmCPackComponentGroup.cxx | 2 +- Source/CPack/cmCPackDebGenerator.cxx | 8 +- Source/CPack/cmCPackDragNDropGenerator.cxx | 44 +- Source/CPack/cmCPackDragNDropGenerator.h | 4 +- Source/CPack/cmCPackGenerator.cxx | 26 +- Source/CPack/cmCPackGenerator.h | 2 +- Source/CPack/cmCPackGeneratorFactory.cxx | 9 +- Source/CPack/cmCPackLog.cxx | 10 +- Source/CPack/cmCPackLog.h | 2 +- Source/CPack/cmCPackNSISGenerator.cxx | 36 +- Source/CPack/cmCPackNSISGenerator.h | 8 +- Source/CPack/cmCPackOSXX11Generator.cxx | 6 +- Source/CPack/cmCPackPackageMakerGenerator.cxx | 22 +- Source/CPack/cmCPackPackageMakerGenerator.h | 10 +- Source/CPack/cmCPackRPMGenerator.cxx | 4 +- Source/CPack/cmCPackSTGZGenerator.cxx | 2 - Source/CPack/cpack.cxx | 6 +- Source/CTest/cmCTestBatchTestHandler.cxx | 2 +- Source/CTest/cmCTestBuildAndTestHandler.cxx | 44 +- Source/CTest/cmCTestBuildAndTestHandler.h | 2 +- Source/CTest/cmCTestBuildCommand.cxx | 6 +- Source/CTest/cmCTestBuildHandler.cxx | 30 +- Source/CTest/cmCTestConfigureCommand.cxx | 2 +- Source/CTest/cmCTestConfigureHandler.cxx | 4 +- Source/CTest/cmCTestCoverageHandler.cxx | 184 +- Source/CTest/cmCTestCoverageHandler.h | 6 + Source/CTest/cmCTestCurl.cxx | 282 + Source/CTest/cmCTestCurl.h | 54 + .../CTest/cmCTestEmptyBinaryDirectoryCommand.cxx | 2 +- Source/CTest/cmCTestGIT.cxx | 2 +- Source/CTest/cmCTestGenericHandler.cxx | 4 +- Source/CTest/cmCTestHandlerCommand.cxx | 10 +- Source/CTest/cmCTestLaunch.cxx | 23 +- Source/CTest/cmCTestMemCheckHandler.cxx | 36 +- Source/CTest/cmCTestMultiProcessHandler.cxx | 52 +- Source/CTest/cmCTestP4.cxx | 10 +- Source/CTest/cmCTestRunScriptCommand.cxx | 2 +- Source/CTest/cmCTestRunTest.cxx | 18 +- Source/CTest/cmCTestScriptHandler.cxx | 36 +- Source/CTest/cmCTestStartCommand.cxx | 4 +- Source/CTest/cmCTestSubmitCommand.cxx | 122 +- Source/CTest/cmCTestSubmitCommand.h | 9 + Source/CTest/cmCTestSubmitHandler.cxx | 269 +- Source/CTest/cmCTestSubmitHandler.h | 5 + Source/CTest/cmCTestTestCommand.cxx | 2 +- Source/CTest/cmCTestTestHandler.cxx | 142 +- Source/CTest/cmCTestUpdateHandler.cxx | 6 +- Source/CTest/cmCTestUpdateHandler.h | 8 - Source/CTest/cmCTestUploadCommand.cxx | 2 +- Source/CTest/cmCTestVC.cxx | 2 +- Source/CTest/cmParseBlanketJSCoverage.cxx | 164 + Source/CTest/cmParseBlanketJSCoverage.h | 48 + Source/CTest/cmParseCacheCoverage.cxx | 6 +- Source/CTest/cmParseCoberturaCoverage.cxx | 48 +- Source/CTest/cmParseDelphiCoverage.cxx | 251 + Source/CTest/cmParseDelphiCoverage.h | 46 + Source/CTest/cmParseGTMCoverage.cxx | 4 +- Source/CTest/cmParseJacocoCoverage.cxx | 2 +- Source/CTest/cmParsePHPCoverage.cxx | 2 +- Source/CTest/cmProcess.cxx | 4 +- Source/CursesDialog/CMakeLists.txt | 18 +- Source/CursesDialog/cmCursesBoolWidget.h | 6 +- Source/CursesDialog/cmCursesCacheEntryComposite.h | 6 +- Source/CursesDialog/cmCursesDummyWidget.h | 6 +- Source/CursesDialog/cmCursesFilePathWidget.h | 6 +- Source/CursesDialog/cmCursesForm.h | 6 +- Source/CursesDialog/cmCursesLabelWidget.h | 6 +- Source/CursesDialog/cmCursesLongMessageForm.h | 6 +- Source/CursesDialog/cmCursesMainForm.cxx | 23 +- Source/CursesDialog/cmCursesMainForm.h | 6 +- Source/CursesDialog/cmCursesOptionsWidget.h | 6 +- Source/CursesDialog/cmCursesPathWidget.cxx | 2 +- Source/CursesDialog/cmCursesPathWidget.h | 6 +- Source/CursesDialog/cmCursesStandardIncludes.h | 42 +- Source/CursesDialog/cmCursesStringWidget.h | 6 +- Source/CursesDialog/cmCursesWidget.h | 6 +- Source/CursesDialog/form/fld_attr.c | 8 +- Source/CursesDialog/form/form.h | 10 + Source/CursesDialog/form/form.priv.h | 6 - Source/CursesDialog/form/frm_driver.c | 19 +- Source/CursesDialog/form/frm_post.c | 5 - Source/CursesDialog/form/frm_req_name.c | 6 - Source/QtDialog/CMake.desktop | 2 +- Source/QtDialog/CMakeLists.txt | 10 +- Source/QtDialog/CMakeSetupDialog.cxx | 2 +- Source/QtDialog/CMakeSetupDialog.ui | 2 +- Source/QtDialog/QCMake.h | 6 +- Source/QtDialog/QMacInstallDialog.cxx | 6 +- Source/cmAddCustomCommandCommand.cxx | 50 +- Source/cmAddCustomTargetCommand.cxx | 57 +- Source/cmAddDependenciesCommand.cxx | 6 +- Source/cmAddExecutableCommand.cxx | 14 +- Source/cmAddLibraryCommand.cxx | 51 +- Source/cmAddSubDirectoryCommand.cxx | 12 +- Source/cmAddTestCommand.cxx | 12 +- Source/cmArchiveWrite.cxx | 19 +- Source/cmArchiveWrite.h | 2 + Source/cmAuxSourceDirectoryCommand.cxx | 2 +- Source/cmBootstrapCommands1.cxx | 4 + Source/cmBreakCommand.cxx | 68 +- Source/cmBuildCommand.cxx | 2 +- Source/cmBuildNameCommand.cxx | 2 +- Source/cmCMakeMinimumRequired.cxx | 22 +- Source/cmCMakePolicyCommand.cxx | 8 +- Source/cmCPluginAPI.cxx | 5 +- Source/cmCTest.cxx | 91 +- Source/cmCTest.h | 2 +- Source/cmCacheManager.cxx | 14 +- Source/cmCallVisualStudioMacro.cxx | 19 +- Source/cmCommand.h | 2 +- Source/cmCommandArgumentParser.cxx | 6 - Source/cmCommandArgumentParser.y | 6 - Source/cmCommandArgumentParserHelper.cxx | 10 +- Source/cmCommandArgumentsHelper.cxx | 9 +- Source/cmComputeLinkDepends.cxx | 21 +- Source/cmComputeLinkInformation.cxx | 67 +- Source/cmComputeTargetDepends.cxx | 4 +- Source/cmConditionEvaluator.cxx | 21 +- Source/cmConfigure.cmake.h.in | 5 +- Source/cmConfigureFileCommand.cxx | 19 +- Source/cmContinueCommand.cxx | 39 + Source/cmContinueCommand.h | 55 + Source/cmCoreTryCompile.cxx | 76 +- Source/cmCreateTestSourceList.cxx | 8 +- Source/cmCurl.cxx | 64 + Source/cmCurl.h | 21 + Source/cmCustomCommand.cxx | 40 +- Source/cmCustomCommand.h | 11 + Source/cmCustomCommandGenerator.cxx | 6 + Source/cmCustomCommandGenerator.h | 1 + Source/cmDefinePropertyCommand.cxx | 4 +- Source/cmDepends.cxx | 12 +- Source/cmDependsC.cxx | 17 +- Source/cmDependsFortran.cxx | 14 +- Source/cmDependsFortranParser.cxx | 6 - Source/cmDependsFortranParser.y | 6 - Source/cmDependsJavaParser.cxx | 6 - Source/cmDependsJavaParser.y | 6 - Source/cmDependsJavaParserHelper.cxx | 10 +- Source/cmDocumentation.cxx | 11 +- Source/cmDocumentationFormatter.cxx | 6 +- Source/cmDynamicLoader.h | 4 +- Source/cmELF.cxx | 2 +- Source/cmExecProgramCommand.cxx | 12 +- Source/cmExecuteProcessCommand.cxx | 6 +- Source/cmExecutionStatus.h | 7 + Source/cmExportBuildFileGenerator.cxx | 6 +- Source/cmExportCommand.cxx | 26 +- Source/cmExportFileGenerator.cxx | 20 +- Source/cmExportInstallFileGenerator.cxx | 65 +- Source/cmExportInstallFileGenerator.h | 4 - Source/cmExportSet.cxx | 5 +- Source/cmExportSetMap.cxx | 7 +- Source/cmExprParser.cxx | 6 - Source/cmExprParser.y | 6 - Source/cmExprParserHelper.cxx | 2 +- Source/cmExtraCodeBlocksGenerator.cxx | 24 +- Source/cmExtraCodeLiteGenerator.cxx | 4 +- Source/cmExtraEclipseCDT4Generator.cxx | 20 +- Source/cmExtraKateGenerator.cxx | 2 +- Source/cmFileCommand.cxx | 453 +- Source/cmFileCommand.h | 1 + Source/cmFileLock.cxx | 78 + Source/cmFileLock.h | 74 + Source/cmFileLockPool.cxx | 187 + Source/cmFileLockPool.h | 102 + Source/cmFileLockResult.cxx | 111 + Source/cmFileLockResult.h | 85 + Source/cmFileLockUnix.cxx | 102 + Source/cmFileLockWin32.cxx | 126 + Source/cmFindBase.cxx | 282 +- Source/cmFindBase.h | 19 +- Source/cmFindCommon.cxx | 206 +- Source/cmFindCommon.h | 66 +- Source/cmFindLibraryCommand.cxx | 22 +- Source/cmFindPackageCommand.cxx | 322 +- Source/cmFindPackageCommand.h | 41 +- Source/cmFindPathCommand.cxx | 8 +- Source/cmFindProgramCommand.cxx | 4 +- Source/cmForEachCommand.cxx | 16 +- Source/cmFunctionCommand.cxx | 14 +- Source/cmGeneratedFileStream.cxx | 8 +- Source/cmGeneratedFileStream.h | 8 - Source/cmGeneratorExpression.cxx | 32 +- Source/cmGeneratorExpression.h | 5 + Source/cmGeneratorExpressionDAGChecker.cxx | 10 +- Source/cmGeneratorExpressionEvaluationFile.cxx | 35 +- Source/cmGeneratorExpressionEvaluationFile.h | 4 +- Source/cmGeneratorExpressionEvaluator.cxx | 83 +- Source/cmGeneratorExpressionEvaluator.h | 1 + Source/cmGeneratorExpressionParser.cxx | 10 +- Source/cmGeneratorTarget.cxx | 49 +- Source/cmGetCMakePropertyCommand.cxx | 2 +- Source/cmGetDirectoryPropertyCommand.cxx | 2 +- Source/cmGetFilenameComponentCommand.cxx | 10 +- Source/cmGetPropertyCommand.cxx | 14 +- Source/cmGetTargetPropertyCommand.cxx | 2 +- Source/cmGlobalBorlandMakefileGenerator.cxx | 1 + Source/cmGlobalGenerator.cxx | 251 +- Source/cmGlobalGenerator.h | 40 +- Source/cmGlobalKdevelopGenerator.cxx | 8 +- Source/cmGlobalNinjaGenerator.cxx | 73 +- Source/cmGlobalNinjaGenerator.h | 8 +- Source/cmGlobalUnixMakefileGenerator3.cxx | 10 +- Source/cmGlobalVisualStudio10Generator.cxx | 16 +- Source/cmGlobalVisualStudio11Generator.cxx | 4 +- Source/cmGlobalVisualStudio12Generator.cxx | 4 +- Source/cmGlobalVisualStudio71Generator.cxx | 5 + Source/cmGlobalVisualStudio7Generator.cxx | 5 + Source/cmGlobalVisualStudio8Generator.cxx | 3 +- Source/cmGlobalVisualStudioGenerator.cxx | 12 +- Source/cmGlobalXCodeGenerator.cxx | 139 +- Source/cmGlobalXCodeGenerator.h | 11 +- Source/cmGraphVizWriter.cxx | 6 +- Source/cmIfCommand.cxx | 11 +- Source/cmIncludeCommand.cxx | 10 +- Source/cmIncludeDirectoryCommand.cxx | 8 +- Source/cmInstallCommand.cxx | 103 +- Source/cmInstallExportGenerator.cxx | 2 +- Source/cmInstallFilesCommand.cxx | 9 +- Source/cmInstallProgramsCommand.cxx | 6 +- Source/cmInstallTargetGenerator.cxx | 12 +- Source/cmInstalledFile.h | 6 +- Source/cmLinkDirectoriesCommand.cxx | 2 +- Source/cmListCommand.cxx | 56 +- Source/cmListFileCache.cxx | 19 +- Source/cmLoadCacheCommand.cxx | 9 +- Source/cmLoadCommandCommand.cxx | 2 +- Source/cmLocalGenerator.cxx | 152 +- Source/cmLocalNinjaGenerator.cxx | 17 +- Source/cmLocalNinjaGenerator.h | 2 +- Source/cmLocalUnixMakefileGenerator3.cxx | 133 +- Source/cmLocalUnixMakefileGenerator3.h | 11 + Source/cmLocalVisualStudio6Generator.cxx | 8 +- Source/cmLocalVisualStudio7Generator.cxx | 22 +- Source/cmLocalVisualStudioGenerator.cxx | 4 +- Source/cmMachO.cxx | 419 ++ Source/cmMachO.h | 51 + Source/cmMacroCommand.cxx | 14 +- Source/cmMakeDepend.cxx | 21 +- Source/cmMakefile.cxx | 441 +- Source/cmMakefile.h | 51 +- Source/cmMakefileExecutableTargetGenerator.cxx | 4 +- Source/cmMakefileLibraryTargetGenerator.cxx | 27 +- Source/cmMakefileTargetGenerator.cxx | 161 +- Source/cmMakefileTargetGenerator.h | 12 - Source/cmNinjaNormalTargetGenerator.cxx | 101 +- Source/cmNinjaTargetGenerator.cxx | 87 +- Source/cmNinjaTargetGenerator.h | 3 +- Source/cmNinjaUtilityTargetGenerator.cxx | 26 +- Source/cmOSXBundleGenerator.cxx | 20 +- Source/cmOrderDirectories.cxx | 24 +- Source/cmPathLabel.cxx | 41 + Source/cmPathLabel.h | 44 + Source/cmPolicies.cxx | 34 +- Source/cmPolicies.h | 2 + Source/cmProjectCommand.cxx | 2 +- Source/cmQtAutoGenerators.cxx | 459 +- Source/cmQtAutoGenerators.h | 14 +- Source/cmRST.cxx | 9 +- Source/cmRemoveCommand.cxx | 7 +- Source/cmSearchPath.cxx | 251 + Source/cmSearchPath.h | 57 + Source/cmSeparateArgumentsCommand.cxx | 2 +- Source/cmSetCommand.cxx | 6 +- Source/cmSetPropertyCommand.cxx | 22 +- Source/cmSetTargetPropertiesCommand.cxx | 2 +- Source/cmSetTestsPropertiesCommand.cxx | 2 +- Source/cmSiteNameCommand.cxx | 4 +- Source/cmSourceFile.cxx | 4 +- Source/cmSourceFileLocation.cxx | 14 +- Source/cmSourceGroupCommand.cxx | 2 +- Source/cmStandardIncludes.cxx | 16 - Source/cmStandardIncludes.h | 333 +- Source/cmStandardLexer.h | 25 - Source/cmStringCommand.cxx | 70 +- Source/cmStringCommand.h | 2 - Source/cmSubdirCommand.cxx | 4 +- Source/cmSystemTools.cxx | 177 +- Source/cmSystemTools.h | 20 +- Source/cmTarget.cxx | 231 +- Source/cmTarget.h | 2 +- Source/cmTargetCompileDefinitionsCommand.cxx | 4 +- Source/cmTargetCompileFeaturesCommand.cxx | 14 +- Source/cmTargetCompileOptionsCommand.cxx | 14 +- Source/cmTargetIncludeDirectoriesCommand.cxx | 14 +- Source/cmTargetLinkLibrariesCommand.cxx | 12 +- Source/cmTargetSourcesCommand.cxx | 14 +- Source/cmTryRunCommand.cxx | 23 +- Source/cmUseMangledMesaCommand.cxx | 2 +- Source/cmUtilitySourceCommand.cxx | 2 +- Source/cmUuid.cxx | 2 +- Source/cmVariableWatch.cxx | 21 +- Source/cmVariableWatchCommand.cxx | 6 +- Source/cmVisualStudio10TargetGenerator.cxx | 36 +- Source/cmVisualStudioGeneratorOptions.cxx | 41 +- Source/cmVisualStudioGeneratorOptions.h | 7 + Source/cmWhileCommand.cxx | 12 +- Source/cmWriteFileCommand.cxx | 2 - Source/cmXMLParser.cxx | 2 +- Source/cm_get_date.c | 16 + Source/cm_get_date.h | 28 + Source/cm_sha2.c | 27 +- Source/cmake.cxx | 119 +- Source/cmakemain.cxx | 14 +- Source/cmcmd.cxx | 159 +- Source/ctest.cxx | 2 +- Source/kwsys/Base64.c | 24 +- Source/kwsys/Base64.h.in | 18 +- Source/kwsys/CMakeLists.txt | 226 +- Source/kwsys/CONTRIBUTING.rst | 35 + Source/kwsys/Directory.cxx | 23 +- Source/kwsys/Directory.hxx.in | 2 - Source/kwsys/DynamicLoader.cxx | 66 +- Source/kwsys/DynamicLoader.hxx.in | 15 +- Source/kwsys/EncodingC.c | 4 +- Source/kwsys/FStream.hxx.in | 10 +- Source/kwsys/Glob.cxx | 2 +- Source/kwsys/ProcessUNIX.c | 4 +- Source/kwsys/ProcessWin32.c | 12 +- Source/kwsys/README.txt | 2 + Source/kwsys/SharedForward.h.in | 16 + Source/kwsys/SystemInformation.cxx | 25 +- Source/kwsys/SystemTools.cxx | 250 +- Source/kwsys/SystemTools.hxx.in | 51 +- Source/kwsys/kwsysPlatformTests.cmake | 88 +- Source/kwsys/kwsysPlatformTestsCXX.cxx | 4 + Source/kwsys/testSystemTools.cxx | 4 +- Tests/Assembler/CMakeLists.txt | 2 +- Tests/BuildDepends/CMakeLists.txt | 34 +- Tests/BuildDepends/Project/CMakeLists.txt | 13 + Tests/CFBundleTest/VerifyResult.cmake | 9 +- Tests/CMakeLib/CMakeLists.txt | 2 + Tests/CMakeLib/PseudoMemcheck/CMakeLists.txt | 41 + .../PseudoMemcheck/NoLog}/CMakeLists.txt | 0 .../PseudoMemcheck}/memtester.cxx.in | 0 Tests/CMakeLib/testXMLSafe.cxx | 2 +- Tests/CMakeLists.txt | 136 +- Tests/CMakeTests/CheckSourceTreeTest.cmake.in | 4 +- Tests/CMakeTests/StringTest.cmake.in | 4 +- Tests/CMakeTests/StringTestScript.cmake | 11 +- Tests/CMakeTests/VersionTest.cmake.in | 88 +- Tests/CPackComponentsForAll/CMakeLists.txt | 6 + .../MyLibCPackConfig-IgnoreGroup.cmake.in | 15 +- .../RunCPackVerifyResult.cmake | 85 + Tests/CTestCoverageCollectGCOV/fakegcov.cmake | 8 + Tests/CTestCoverageCollectGCOV/test.cmake.in | 39 + Tests/CTestTestMemcheck/CMakeLists.txt | 290 - Tests/CTestTestMemcheck/test.cmake.in | 26 - Tests/CompileDefinitions/CMakeLists.txt | 6 +- .../CompileDefinitions/add_def_cmd/CMakeLists.txt | 12 + .../add_def_cmd_tprop/CMakeLists.txt | 16 + .../add_definitions_command/CMakeLists.txt | 15 - .../CMakeLists.txt | 19 - Tests/CompileFeatures/CMakeLists.txt | 259 +- Tests/CompileFeatures/cxx_auto_type.cpp | 9 +- .../cxx_generalized_initializers.cpp | 1 + .../cxx_inheriting_constructors.cpp | 2 +- Tests/CompileFeatures/cxx_variadic_templates.cpp | 23 +- Tests/CompileFeatures/default_dialect.cpp | 2 +- Tests/CompileFeatures/feature_test.c | 10 + Tests/CompileFeatures/genex_test.c | 38 + Tests/CompileFeatures/genex_test.cpp | 51 + Tests/Complex/Executable/CMakeLists.txt | 16 +- Tests/Complex/Executable/complex.cxx | 22 +- Tests/ComplexOneConfig/Executable/CMakeLists.txt | 16 +- Tests/ComplexOneConfig/Executable/complex.cxx | 22 +- Tests/CustomCommand/CMakeLists.txt | 31 +- Tests/CustomCommand/config.h.in | 1 - Tests/CustomCommand/foo.in | 3 +- Tests/CustomCommandByproducts/CMakeLists.txt | 127 + .../CustomCommandByproducts.c | 23 + .../External/CMakeLists.txt | 4 + .../External/ExternalLibrary.c | 1 + .../ProducerExe.c} | 0 Tests/CustomCommandByproducts/byproduct1.c.in | 1 + Tests/CustomCommandByproducts/byproduct2.c.in | 1 + Tests/CustomCommandByproducts/byproduct3.c.in | 1 + Tests/CustomCommandByproducts/byproduct4.c.in | 1 + Tests/CustomCommandByproducts/byproduct5.c.in | 1 + Tests/CustomCommandByproducts/byproduct6.c.in | 1 + Tests/CustomCommandByproducts/byproduct7.c.in | 1 + Tests/CustomCommandByproducts/byproduct8.c.in | 1 + Tests/CustomCommandByproducts/ninja-check.cmake | 20 + Tests/DelphiCoverage/DartConfiguration.tcl.in | 8 + Tests/DelphiCoverage/UTCovTest(UTCovTest.pas).html | 117 + Tests/DelphiCoverage/src/UTCovTest.pas | 75 + Tests/ExportImport/Export/CMakeLists.txt | 15 + .../Export/include/abs/1a/testLibAbs1a.h | 1 + .../Export/include/abs/1b/testLibAbs1b.h | 1 + .../ExportImport/Export/include/abs/testLibAbs1.h | 1 + Tests/ExportImport/Export/testLibAbs1.c | 1 + Tests/ExportImport/Import/A/CMakeLists.txt | 40 + Tests/ExportImport/Import/A/imp_testExeAbs1.c | 15 + Tests/ExternalProjectLocal/CMakeLists.txt | 28 +- Tests/ExternalProjectUpdate/CMakeLists.txt | 15 +- .../ExternalProjectUpdateTest.cmake | 96 + Tests/FindGSL/CMakeLists.txt | 9 + Tests/FindGSL/rng/CMakeLists.txt | 14 + Tests/FindGSL/rng/main.cc | 24 + Tests/FindJsonCpp/CMakeLists.txt | 10 + Tests/FindJsonCpp/Test/CMakeLists.txt | 14 + Tests/FindJsonCpp/Test/main.cxx | 8 + Tests/ForceInclude/CMakeLists.txt | 2 +- Tests/Fortran/CMakeLists.txt | 18 +- Tests/FortranC/CMakeLists.txt | 2 +- Tests/FortranOnly/CMakeLists.txt | 26 + Tests/FortranOnly/preprocess.F | 5 + Tests/FortranOnly/test_preprocess.cmake | 7 + .../SystemIncludeDirectories/CMakeLists.txt | 8 +- .../config_specific/config_iface.h | 14 + .../SystemIncludeDirectories/consumer.cpp | 2 + Tests/JavascriptCoverage/DartConfiguration.tcl.in | 8 + Tests/JavascriptCoverage/output.json.in | 448 ++ Tests/JavascriptCoverage/test.js | 53 + Tests/JavascriptCoverage/test3.js | 37 + Tests/LinkStatic/CMakeLists.txt | 2 +- Tests/Module/ExternalData/CMakeLists.txt | 3 + Tests/Module/ExternalData/Data1Check.cmake | 4 + Tests/Module/ExternalData/DataScript.dat.md5 | 1 + Tests/Module/ExternalData/MyScript1.cmake | 5 + .../WriteCompilerDetectionHeader/CMakeLists.txt | 85 +- .../WriteCompilerDetectionHeader/compile_tests.h | 25 + Tests/Module/WriteCompilerDetectionHeader/main.c | 29 + Tests/Module/WriteCompilerDetectionHeader/main.cpp | 25 +- .../WriteCompilerDetectionHeader/main_multi.c | 29 + .../WriteCompilerDetectionHeader/multi_files.cpp | 14 + Tests/ModuleDefinition/CMakeLists.txt | 2 +- Tests/OutDir/OutDir.cmake | 10 +- Tests/PDBDirectoryAndName/CMakeLists.txt | 2 +- Tests/PrecompiledHeader/CMakeLists.txt | 2 +- Tests/Preprocess/CMakeLists.txt | 2 +- Tests/QtAutogen/CMakeLists.txt | 32 + Tests/QtAutogen/autorcc_depends/CMakeLists.txt | 24 + Tests/QtAutogen/autorcc_depends/res1.qrc | 5 + Tests/QtAutogen/autorcc_depends/res1_input.txt | 1 + .../autorcc_depends/test_res1.cpp} | 0 Tests/RunCMake/CMP0019/CMakeLists.txt | 2 +- .../CMP0055-NEW-Out-of-Scope-result.txt} | 0 .../CMP0055/CMP0055-NEW-Out-of-Scope-stderr.txt | 4 + .../CMP0055/CMP0055-NEW-Out-of-Scope.cmake | 4 + .../CMP0055-NEW-Reject-Arguments-result.txt} | 0 .../CMP0055-NEW-Reject-Arguments-stderr.txt | 4 + .../CMP0055/CMP0055-NEW-Reject-Arguments.cmake | 6 + .../CMP0055-OLD-Out-of-Scope-result.txt} | 0 .../CMP0055-OLD-Out-of-Scope-stderr.txt} | 0 .../CMP0055/CMP0055-OLD-Out-of-Scope.cmake | 4 + .../CMP0055-OLD-Reject-Arguments-result.txt} | 0 .../CMP0055-OLD-Reject-Arguments-stderr.txt} | 0 .../CMP0055/CMP0055-OLD-Reject-Arguments.cmake | 6 + .../CMP0055-WARN-Out-of-Scope-result.txt} | 0 .../CMP0055/CMP0055-WARN-Out-of-Scope-stderr.txt | 9 + .../CMP0055/CMP0055-WARN-Out-of-Scope.cmake | 2 + .../CMP0055-WARN-Reject-Arguments-result.txt} | 0 .../CMP0055-WARN-Reject-Arguments-stderr.txt | 9 + .../CMP0055/CMP0055-WARN-Reject-Arguments.cmake | 4 + Tests/RunCMake/CMP0055/CMakeLists.txt | 3 + Tests/RunCMake/CMP0055/RunCMakeTest.cmake | 9 + Tests/RunCMake/CMakeLists.txt | 33 +- Tests/RunCMake/CPackRPM/CMakeLists.txt | 7 + ...ackRPM_PARTIALLY_RELOCATABLE_WARNING-stderr.txt | 1 + .../CPackRPM_PARTIALLY_RELOCATABLE_WARNING.cmake | 7 + Tests/RunCMake/CPackRPM/RunCMakeTest.cmake | 17 + .../CTestMemcheck}/CMakeLists.txt.in | 0 .../CTestMemcheck}/CTestConfig.cmake.in | 0 .../CTestMemcheck/DummyAddressSanitizer-result.txt | 1 + .../CTestMemcheck/DummyAddressSanitizer-stderr.txt | 2 + .../CTestMemcheck/DummyAddressSanitizer-stdout.txt | 2 + Tests/RunCMake/CTestMemcheck/DummyBC-result.txt | 1 + Tests/RunCMake/CTestMemcheck/DummyBC-stderr.txt | 1 + Tests/RunCMake/CTestMemcheck/DummyBC-stdout.txt | 3 + .../CTestMemcheck/DummyBCNoLogFile-result.txt | 1 + .../CTestMemcheck/DummyBCNoLogFile-stderr.txt | 3 + .../CTestMemcheck/DummyBCNoLogFile-stdout.txt | 3 + .../CTestMemcheck/DummyLeakSanitizer-result.txt | 1 + .../CTestMemcheck/DummyLeakSanitizer-stderr.txt | 2 + .../CTestMemcheck/DummyLeakSanitizer-stdout.txt | 3 + .../CTestMemcheck/DummyMemorySanitizer-result.txt | 1 + .../CTestMemcheck/DummyMemorySanitizer-stderr.txt | 2 + .../CTestMemcheck/DummyMemorySanitizer-stdout.txt | 2 + .../DummyPurify-result.txt} | 0 .../RunCMake/CTestMemcheck/DummyPurify-stderr.txt | 3 + .../RunCMake/CTestMemcheck/DummyPurify-stdout.txt | 6 + .../CTestMemcheck/DummyPurifyNoLogFile-result.txt | 1 + .../CTestMemcheck/DummyPurifyNoLogFile-stderr.txt | 2 + .../CTestMemcheck/DummyPurifyNoLogFile-stdout.txt | 3 + .../CTestMemcheck/DummyThreadSanitizer-result.txt | 1 + .../CTestMemcheck/DummyThreadSanitizer-stderr.txt | 2 + .../CTestMemcheck/DummyThreadSanitizer-stdout.txt | 13 + .../DummyUndefinedBehaviorSanitizer-result.txt | 1 + .../DummyUndefinedBehaviorSanitizer-stderr.txt | 2 + .../DummyUndefinedBehaviorSanitizer-stdout.txt | 2 + .../DummyValgrind-result.txt} | 0 .../CTestMemcheck/DummyValgrind-stderr.txt | 3 + .../CTestMemcheck/DummyValgrind-stdout.txt | 6 + .../DummyValgrindCustomOptions-result.txt | 1 + .../DummyValgrindCustomOptions-stderr.txt | 2 + .../DummyValgrindCustomOptions-stdout.txt | 6 + .../CTestMemcheck/DummyValgrindFailPost-result.txt | 1 + .../CTestMemcheck/DummyValgrindFailPost-stderr.txt | 3 + .../CTestMemcheck/DummyValgrindFailPost-stdout.txt | 6 + .../CTestMemcheck/DummyValgrindFailPre-result.txt | 1 + .../CTestMemcheck/DummyValgrindFailPre-stderr.txt | 3 + .../CTestMemcheck/DummyValgrindFailPre-stdout.txt | 1 + .../DummyValgrindIgnoreMemcheck-result.txt} | 0 .../DummyValgrindIgnoreMemcheck-stderr.txt | 3 + .../DummyValgrindIgnoreMemcheck-stdout.txt | 7 + .../DummyValgrindInvalidSupFile-result.txt | 1 + .../DummyValgrindInvalidSupFile-stderr.txt | 2 + .../DummyValgrindInvalidSupFile-stdout.txt | 1 + .../DummyValgrindNoLogFile-result.txt | 1 + .../DummyValgrindNoLogFile-stderr.txt | 2 + .../DummyValgrindNoLogFile-stdout.txt | 3 + .../DummyValgrindPrePost-result.txt} | 0 .../CTestMemcheck/DummyValgrindPrePost-stderr.txt | 3 + .../CTestMemcheck/DummyValgrindPrePost-stdout.txt | 6 + .../DummyValgrindTwoTargets-result.txt} | 0 .../DummyValgrindTwoTargets-stderr.txt | 3 + .../DummyValgrindTwoTargets-stdout.txt | 8 + .../NotExist-result.txt} | 0 Tests/RunCMake/CTestMemcheck/NotExist-stderr.txt | 1 + Tests/RunCMake/CTestMemcheck/NotExist-stdout.txt | 1 + Tests/RunCMake/CTestMemcheck/RunCMakeTest.cmake | 144 + Tests/RunCMake/CTestMemcheck/Unknown-result.txt | 1 + Tests/RunCMake/CTestMemcheck/Unknown-stderr.txt | 2 + Tests/RunCMake/CTestMemcheck/Unknown-stdout.txt | 1 + Tests/RunCMake/CTestMemcheck/test.cmake.in | 24 + .../CTestMemcheck}/testAddressSanitizer.cmake | 0 .../CTestMemcheck}/testLeakSanitizer.cmake | 0 .../CTestMemcheck}/testMemorySanitizer.cmake | 0 .../CTestMemcheck}/testThreadSanitizer.cmake | 0 .../testUndefinedBehaviorSanitizer.cmake | 0 Tests/RunCMake/CTestSubmit/BadArg-result.txt | 1 + Tests/RunCMake/CTestSubmit/BadArg-stderr.txt | 2 + Tests/RunCMake/CTestSubmit/BadFILES-result.txt | 1 + Tests/RunCMake/CTestSubmit/BadFILES-stderr.txt | 2 + Tests/RunCMake/CTestSubmit/BadPARTS-result.txt | 1 + Tests/RunCMake/CTestSubmit/BadPARTS-stderr.txt | 2 + .../CTestSubmit/CDashUploadFILES-result.txt | 1 + .../CTestSubmit/CDashUploadFILES-stderr.txt | 2 + .../RunCMake/CTestSubmit/CDashUploadFTP-result.txt | 1 + .../RunCMake/CTestSubmit/CDashUploadFTP-stderr.txt | 1 + .../CTestSubmit/CDashUploadNone-result.txt | 1 + .../CTestSubmit/CDashUploadNone-stderr.txt | 1 + .../CTestSubmit/CDashUploadPARTS-result.txt | 1 + .../CTestSubmit/CDashUploadPARTS-stderr.txt | 2 + .../CTestSubmit/CDashUploadRETRY_COUNT-result.txt | 1 + .../CTestSubmit/CDashUploadRETRY_COUNT-stderr.txt | 2 + .../CTestSubmit/CDashUploadRETRY_DELAY-result.txt | 1 + .../CTestSubmit/CDashUploadRETRY_DELAY-stderr.txt | 2 + Tests/RunCMake/CTestSubmit/CMakeLists.txt.in | 4 + Tests/RunCMake/CTestSubmit/CTestConfig.cmake.in | 6 + Tests/RunCMake/CTestSubmit/FailDrop-cp-result.txt | 1 + Tests/RunCMake/CTestSubmit/FailDrop-cp-stderr.txt | 4 + Tests/RunCMake/CTestSubmit/FailDrop-cp-stdout.txt | 1 + Tests/RunCMake/CTestSubmit/FailDrop-ftp-result.txt | 1 + Tests/RunCMake/CTestSubmit/FailDrop-ftp-stderr.txt | 3 + Tests/RunCMake/CTestSubmit/FailDrop-ftp-stdout.txt | 3 + .../RunCMake/CTestSubmit/FailDrop-http-result.txt | 1 + .../RunCMake/CTestSubmit/FailDrop-http-stderr.txt | 3 + .../RunCMake/CTestSubmit/FailDrop-http-stdout.txt | 3 + .../RunCMake/CTestSubmit/FailDrop-https-result.txt | 1 + .../RunCMake/CTestSubmit/FailDrop-https-stderr.txt | 3 + .../RunCMake/CTestSubmit/FailDrop-https-stdout.txt | 3 + Tests/RunCMake/CTestSubmit/FailDrop-scp-result.txt | 1 + Tests/RunCMake/CTestSubmit/FailDrop-scp-stderr.txt | 2 + Tests/RunCMake/CTestSubmit/FailDrop-scp-stdout.txt | 1 + .../CTestSubmit/FailDrop-xmlrpc-result.txt | 1 + .../CTestSubmit/FailDrop-xmlrpc-stderr.txt | 2 + .../CTestSubmit/FailDrop-xmlrpc-stdout.txt | 1 + .../CTestSubmit/PARTSCDashUpload-result.txt | 1 + .../CTestSubmit/PARTSCDashUpload-stderr.txt | 2 + .../CTestSubmit/PARTSCDashUploadType-result.txt | 1 + .../CTestSubmit/PARTSCDashUploadType-stderr.txt | 2 + .../CTestSubmit/RepeatRETURN_VALUE-result.txt | 1 + .../CTestSubmit/RepeatRETURN_VALUE-stderr.txt | 2 + Tests/RunCMake/CTestSubmit/RunCMakeTest.cmake | 62 + Tests/RunCMake/CTestSubmit/test.cmake.in | 16 + Tests/RunCMake/CheckModules/CMakeLists.txt | 1 + .../{CMP0054 => CommandLine}/CMakeLists.txt | 0 .../RunCMake/CommandLine/D_nested_cache-stderr.txt | 1 + Tests/RunCMake/CommandLine/D_nested_cache.cmake | 1 + .../CommandLine/D_typed_nested_cache-stderr.txt | 1 + .../CommandLine/D_typed_nested_cache.cmake | 1 + .../E_tar-bad-from1-result.txt} | 0 .../CommandLine/E_tar-bad-from1-stderr.txt | 1 + .../E_tar-bad-from2-result.txt} | 0 .../CommandLine/E_tar-bad-from2-stderr.txt | 1 + .../E_tar-bad-from3-result.txt} | 0 .../CommandLine/E_tar-bad-from3-stderr.txt | 2 + Tests/RunCMake/CommandLine/E_tar-bad-from3.txt | 1 + .../E_tar-bad-from4-result.txt} | 0 .../CommandLine/E_tar-bad-from4-stderr.txt | 2 + Tests/RunCMake/CommandLine/E_tar-bad-from4.txt | 2 + .../E_tar-bad-from5-result.txt} | 0 .../CommandLine/E_tar-bad-from5-stderr.txt | 2 + Tests/RunCMake/CommandLine/E_tar-bad-from5.txt | 2 + .../E_tar-bad-mtime1-result.txt} | 0 .../CommandLine/E_tar-bad-mtime1-stderr.txt | 2 + .../E_tar-bad-opt1-result.txt} | 0 .../RunCMake/CommandLine/E_tar-bad-opt1-stderr.txt | 1 + .../E_tar-end-opt1-result.txt} | 0 .../RunCMake/CommandLine/E_tar-end-opt1-stderr.txt | 2 + Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 21 + .../LinkImplementationFeatureCycle.cmake | 8 +- .../LinkImplementationFeatureCycleSolved.cmake | 6 +- .../RunCMake/CompileFeatures/NonValidTarget1.cmake | 2 +- .../RunCMake/CompileFeatures/NonValidTarget2.cmake | 2 + .../NotAFeature_OriginDebugCommand-result.txt} | 0 .../NotAFeature_OriginDebugCommand-stderr.txt | 5 + ....cmake => NotAFeature_OriginDebugCommand.cmake} | 0 ..._OriginDebug_target_compile_features-stderr.txt | 5 - Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake | 38 +- .../CompileFeatures/generate_feature_list.cmake | 14 + .../BadCustom1-result.txt} | 0 Tests/RunCMake/ExternalData/BadCustom1-stderr.txt | 9 + Tests/RunCMake/ExternalData/BadCustom1.cmake | 5 + .../BadCustom2-result.txt} | 0 Tests/RunCMake/ExternalData/BadCustom2-stderr.txt | 9 + Tests/RunCMake/ExternalData/BadCustom2.cmake | 5 + .../BadCustom3-result.txt} | 0 Tests/RunCMake/ExternalData/BadCustom3-stderr.txt | 7 + Tests/RunCMake/ExternalData/BadCustom3.cmake | 5 + .../BadCustom4-result.txt} | 0 Tests/RunCMake/ExternalData/BadCustom4-stderr.txt | 7 + Tests/RunCMake/ExternalData/BadCustom4.cmake | 6 + Tests/RunCMake/ExternalData/RunCMakeTest.cmake | 4 + .../ExternalProject/Add_StepDependencies.cmake | 20 + .../Add_StepDependencies_no_target.cmake | 10 + .../ExternalProject/CMAKE_CACHE_ARGS.cmake | 21 + .../ExternalProject/CMAKE_CACHE_DEFAULT_ARGS.cmake | 21 + .../RunCMake/ExternalProject/CMAKE_CACHE_mix.cmake | 29 + Tests/RunCMake/ExternalProject/CMakeLists.txt | 3 + .../RunCMake/ExternalProject/NO_DEPENDS-stderr.txt | 36 + Tests/RunCMake/ExternalProject/NO_DEPENDS.cmake | 18 + Tests/RunCMake/ExternalProject/RunCMakeTest.cmake | 8 + Tests/RunCMake/FPHSA/RunCMakeTest.cmake | 2 + .../CarryPermissions-result.txt} | 0 .../CarryPermissions-stderr.txt} | 0 .../RunCMake/File_Generate/CarryPermissions.cmake | 5 + .../GenerateSource-result.txt} | 0 .../GenerateSource-stderr.txt} | 0 Tests/RunCMake/File_Generate/GenerateSource.cmake | 12 + .../OutputNameMatchesObjects-result.txt} | 0 .../OutputNameMatchesObjects-stderr.txt | 9 + .../File_Generate/OutputNameMatchesObjects.cmake | 10 + .../OutputNameMatchesOtherSources-result.txt} | 0 .../OutputNameMatchesOtherSources-stderr.txt} | 0 .../OutputNameMatchesOtherSources.cmake | 14 + .../OutputNameMatchesSources-result.txt} | 0 .../OutputNameMatchesSources-stderr.txt | 7 + .../File_Generate/OutputNameMatchesSources.cmake | 12 + .../ReRunCMake-result.txt} | 0 .../ReRunCMake-stderr.txt} | 0 Tests/RunCMake/File_Generate/ReRunCMake.cmake | 5 + Tests/RunCMake/File_Generate/RunCMakeTest.cmake | 57 + .../RunCMake/{CMP0022 => File_Generate}/empty.cpp | 0 Tests/RunCMake/File_Generate/input_script.sh | 3 + .../ValidTarget-TARGET_PDB_FILE-check.cmake | 2 +- Tests/RunCMake/Languages/CMakeLists.txt | 1 + .../Languages/LINK_LANGUAGE-genex-stderr.txt | 2 +- .../link-libraries-TARGET_FILE-genex-stderr.txt | 2 +- Tests/RunCMake/README.rst | 2 +- Tests/RunCMake/RunCMake.cmake | 17 +- .../MultiBadOutDir-result.txt} | 0 .../MultiBadOutDir-stderr.txt | 6 + .../MultiBadOutDir.cmake | 12 + .../MultiNoOutFileVar-result.txt} | 0 .../MultiNoOutFileVar-stderr.txt | 5 + .../MultiNoOutFileVar.cmake | 11 + .../MultiNoOutdir-result.txt} | 0 .../MultiNoOutdir-stderr.txt | 5 + .../MultiNoOutdir.cmake | 11 + .../RunCMakeTest.cmake | 4 + .../AppendNoOutput-result.txt} | 0 .../add_custom_command/AppendNoOutput-stderr.txt | 4 + .../add_custom_command/AppendNoOutput.cmake | 1 + .../AppendNotOutput-result.txt} | 0 .../add_custom_command/AppendNotOutput-stderr.txt | 5 + .../add_custom_command/AppendNotOutput.cmake | 1 + .../BadArgument-result.txt} | 0 .../add_custom_command/BadArgument-stderr.txt | 4 + .../RunCMake/add_custom_command/BadArgument.cmake | 1 + Tests/RunCMake/add_custom_command/CMakeLists.txt | 3 + .../NoArguments-result.txt} | 0 .../add_custom_command/NoArguments-stderr.txt | 4 + .../RunCMake/add_custom_command/NoArguments.cmake | 1 + .../NoOutputOrTarget-result.txt} | 0 .../add_custom_command/NoOutputOrTarget-stderr.txt | 4 + .../add_custom_command/NoOutputOrTarget.cmake | 1 + .../OutputAndTarget-result.txt} | 0 .../add_custom_command/OutputAndTarget-stderr.txt | 5 + .../add_custom_command/OutputAndTarget.cmake | 1 + .../RunCMake/add_custom_command/RunCMakeTest.cmake | 10 + .../SourceByproducts-result.txt} | 0 .../add_custom_command/SourceByproducts-stderr.txt | 4 + .../add_custom_command/SourceByproducts.cmake | 1 + .../SourceUsesTerminal-result.txt} | 0 .../SourceUsesTerminal-stderr.txt | 4 + .../add_custom_command/SourceUsesTerminal.cmake | 1 + .../BadTargetName-result.txt} | 0 .../add_custom_target/BadTargetName-stderr.txt | 17 + .../RunCMake/add_custom_target/BadTargetName.cmake | 3 + .../ByproductsNoCommand-result.txt} | 0 .../ByproductsNoCommand-stderr.txt | 4 + .../add_custom_target/ByproductsNoCommand.cmake | 1 + Tests/RunCMake/add_custom_target/CMakeLists.txt | 3 + .../NoArguments-result.txt} | 0 .../add_custom_target/NoArguments-stderr.txt | 4 + Tests/RunCMake/add_custom_target/NoArguments.cmake | 1 + .../RunCMake/add_custom_target/RunCMakeTest.cmake | 6 + .../UsesTerminalNoCommand-result.txt} | 0 .../UsesTerminalNoCommand-stderr.txt | 4 + .../add_custom_target/UsesTerminalNoCommand.cmake | 1 + .../configure_file/RerunCMake-rerun-stderr.txt | 1 + .../configure_file/RerunCMake-rerun-stdout.txt | 3 + .../RunCMake/configure_file/RerunCMake-stderr.txt | 1 + .../RunCMake/configure_file/RerunCMake-stdout.txt | 3 + Tests/RunCMake/configure_file/RerunCMake.cmake | 8 + Tests/RunCMake/configure_file/RunCMakeTest.cmake | 35 + .../RunCMake/configure_file/UnknownArg-stderr.txt | 10 + Tests/RunCMake/configure_file/UnknownArg.cmake | 2 + Tests/RunCMake/continue/CMakeLists.txt | 3 + .../RunCMake/continue/ContinueForEachInLists.cmake | 10 + Tests/RunCMake/continue/ContinueForeach-stdout.txt | 4 + Tests/RunCMake/continue/ContinueForeach.cmake | 8 + .../continue/ContinueNestedForeach-stdout.txt | 6 + .../RunCMake/continue/ContinueNestedForeach.cmake | 13 + Tests/RunCMake/continue/ContinueWhile-stdout.txt | 6 + Tests/RunCMake/continue/ContinueWhile.cmake | 10 + .../NoArgumentsToContinue-result.txt} | 0 .../continue/NoArgumentsToContinue-stderr.txt | 4 + .../RunCMake/continue/NoArgumentsToContinue.cmake | 3 + .../NoEnclosingBlock-result.txt} | 0 .../RunCMake/continue/NoEnclosingBlock-stderr.txt | 5 + Tests/RunCMake/continue/NoEnclosingBlock.cmake | 1 + .../NoEnclosingBlockInFunction-result.txt} | 0 .../continue/NoEnclosingBlockInFunction-stderr.txt | 6 + .../continue/NoEnclosingBlockInFunction.cmake | 8 + Tests/RunCMake/continue/RunCMakeTest.cmake | 9 + .../LOCK-error-file-create-fail-result.txt} | 0 .../file/LOCK-error-file-create-fail-stderr.txt | 8 + .../file/LOCK-error-file-create-fail.cmake | 3 + .../LOCK-error-guard-incorrect-result.txt} | 0 .../file/LOCK-error-guard-incorrect-stderr.txt | 6 + .../RunCMake/file/LOCK-error-guard-incorrect.cmake | 1 + .../LOCK-error-incorrect-timeout-result.txt} | 0 .../file/LOCK-error-incorrect-timeout-stderr.txt | 4 + .../LOCK-error-incorrect-timeout-trail-result.txt} | 0 .../LOCK-error-incorrect-timeout-trail-stderr.txt | 4 + .../file/LOCK-error-incorrect-timeout-trail.cmake | 1 + .../file/LOCK-error-incorrect-timeout.cmake | 1 + .../LOCK-error-lock-fail-result.txt} | 0 .../RunCMake/file/LOCK-error-lock-fail-stderr.txt | 6 + Tests/RunCMake/file/LOCK-error-lock-fail.cmake | 6 + .../LOCK-error-negative-timeout-result.txt} | 0 .../file/LOCK-error-negative-timeout-stderr.txt | 4 + .../file/LOCK-error-negative-timeout.cmake | 1 + .../LOCK-error-no-function-result.txt} | 0 .../file/LOCK-error-no-function-stderr.txt | 8 + Tests/RunCMake/file/LOCK-error-no-function.cmake | 1 + .../LOCK-error-no-guard-result.txt} | 0 Tests/RunCMake/file/LOCK-error-no-guard-stderr.txt | 4 + Tests/RunCMake/file/LOCK-error-no-guard.cmake | 1 + .../LOCK-error-no-path-result.txt} | 0 Tests/RunCMake/file/LOCK-error-no-path-stderr.txt | 4 + Tests/RunCMake/file/LOCK-error-no-path.cmake | 1 + .../LOCK-error-no-result-variable-result.txt} | 0 .../file/LOCK-error-no-result-variable-stderr.txt | 4 + .../file/LOCK-error-no-result-variable.cmake | 1 + .../LOCK-error-no-timeout-result.txt} | 0 .../RunCMake/file/LOCK-error-no-timeout-stderr.txt | 4 + Tests/RunCMake/file/LOCK-error-no-timeout.cmake | 1 + .../LOCK-error-timeout-result.txt} | 0 Tests/RunCMake/file/LOCK-error-timeout-stderr.txt | 12 + Tests/RunCMake/file/LOCK-error-timeout-stdout.txt | 1 + Tests/RunCMake/file/LOCK-error-timeout.cmake | 17 + .../LOCK-error-unknown-option-result.txt} | 0 .../file/LOCK-error-unknown-option-stderr.txt | 6 + .../RunCMake/file/LOCK-error-unknown-option.cmake | 1 + Tests/RunCMake/file/LOCK-stdout.txt | 11 + Tests/RunCMake/file/LOCK.cmake | 40 + Tests/RunCMake/file/RunCMakeTest.cmake | 14 + .../file/subdir_test_unlock/CMakeLists.txt | 2 + Tests/RunCMake/file/timeout-script.cmake | 5 + Tests/RunCMake/find_library/CMakeLists.txt | 3 + Tests/RunCMake/find_library/Created-stderr.txt | 2 + Tests/RunCMake/find_library/Created.cmake | 16 + Tests/RunCMake/find_library/RunCMakeTest.cmake | 3 + Tests/RunCMake/return/CMakeLists.txt | 3 + .../ReturnFromForeach-result.txt} | 0 Tests/RunCMake/return/ReturnFromForeach.cmake | 10 + Tests/RunCMake/return/RunCMakeTest.cmake | 3 + Tests/RunCMake/string/RegexClear-stderr.txt | 54 + Tests/RunCMake/string/RegexClear.cmake | 54 + Tests/RunCMake/string/RunCMakeTest.cmake | 7 + Tests/RunCMake/string/UTF-16BE-stderr.txt | 2 + Tests/RunCMake/string/UTF-16BE.cmake | 4 + Tests/RunCMake/string/UTF-16BE.txt | Bin 0 -> 83 bytes Tests/RunCMake/string/UTF-16LE-stderr.txt | 2 + Tests/RunCMake/string/UTF-16LE.cmake | 4 + Tests/RunCMake/string/UTF-16LE.txt | Bin 0 -> 83 bytes Tests/RunCMake/string/UTF-32BE-stderr.txt | 2 + Tests/RunCMake/string/UTF-32BE.cmake | 4 + Tests/RunCMake/string/UTF-32BE.txt | Bin 0 -> 165 bytes Tests/RunCMake/string/UTF-32LE-stderr.txt | 2 + Tests/RunCMake/string/UTF-32LE.cmake | 4 + Tests/RunCMake/string/UTF-32LE.txt | Bin 0 -> 165 bytes Tests/RunCMake/string/cmake/Finddummy.cmake | 4 + Tests/RunCMake/string/subdir/CMakeLists.txt | 2 + .../try_compile/BadLinkLibraries-stderr.txt | 4 +- Tests/RunCMake/try_compile/CMP0056-stderr.txt | 13 + Tests/RunCMake/try_compile/CMP0056-stdout.txt | 4 + Tests/RunCMake/try_compile/CMP0056.cmake | 67 + .../RerunCMake-nowork-ninja-no-console-stdout.txt | 1 + .../RerunCMake-rerun-ninja-no-console-stdout.txt | 5 + .../try_compile/RerunCMake-rerun-stderr.txt | 2 + .../try_compile/RerunCMake-rerun-stdout.txt | 3 + Tests/RunCMake/try_compile/RerunCMake-stderr.txt | 2 + Tests/RunCMake/try_compile/RerunCMake-stdout.txt | 3 + Tests/RunCMake/try_compile/RerunCMake.cmake | 7 + Tests/RunCMake/try_compile/RunCMakeTest.cmake | 35 + .../BadLinkLibraries-result.txt} | 0 Tests/RunCMake/try_run/BadLinkLibraries-stderr.txt | 5 + Tests/RunCMake/try_run/BadLinkLibraries.cmake | 4 + Tests/RunCMake/try_run/CMakeLists.txt | 3 + Tests/RunCMake/try_run/RunCMakeTest.cmake | 3 + Tests/RunCMake/{try_compile => try_run}/src.c | 0 Tests/SourceFileProperty/CMakeLists.txt | 19 + Tests/SourceFileProperty/ICaseTest.c | 7 + Tests/SourceFileProperty/main.c | 13 + Tests/StringFileTest/CMakeLists.txt | 2 +- Tests/TryCompile/CMakeLists.txt | 4 +- Tests/Tutorial/Step2/tutorial.cxx | 8 +- Tests/Tutorial/Step3/tutorial.cxx | 8 +- Tests/Tutorial/Step4/tutorial.cxx | 8 +- Tests/Tutorial/Step5/tutorial.cxx | 8 +- Tests/Tutorial/Step6/tutorial.cxx | 8 +- Tests/Tutorial/Step7/tutorial.cxx | 8 +- Tests/VSNsightTegra/CMakeLists.txt | 1 + Tests/VSWinStorePhone/CMakeLists.txt | 2 + .../Direct3DApp1/SimplePixelShader.hlsl | 4 + .../Direct3DApp1/SimpleVertexShader.hlsl | 4 + Utilities/KWIML/test/CMakeLists.txt | 2 +- Utilities/Release/create-cmake-release.cmake | 1 + Utilities/Release/dash2win64_release.cmake | 7 +- Utilities/Release/dashmacmini5_release.cmake | 11 +- Utilities/Release/linux64_release.cmake | 23 + Utilities/Release/upload_release.cmake | 2 +- Utilities/cmThirdParty.h.in | 6 +- Utilities/cm_bzlib.h | 4 +- Utilities/cm_curl.h | 6 +- Utilities/cm_expat.h | 4 +- Utilities/cm_jsoncpp_reader.h | 23 + Utilities/cm_jsoncpp_value.h | 23 + Utilities/cm_jsoncpp_writer.h | 23 + Utilities/cm_libarchive.h | 4 +- Utilities/cm_lzma.h | 4 +- Utilities/cm_xmlrpc.h | 4 +- Utilities/cm_zlib.h | 4 +- Utilities/cmcompress/cmcompress.h | 6 +- Utilities/{cmlibarchive => cmcurl}/.gitattributes | 0 .../cmcurl/CMake/CurlCheckCSourceCompiles.cmake | 79 +- Utilities/cmcurl/CMake/CurlCheckCSourceRuns.cmake | 91 +- Utilities/cmcurl/CMake/CurlTests.c | 257 +- Utilities/cmcurl/CMake/FindCARES.cmake | 42 + Utilities/cmcurl/CMake/FindLibSSH2.cmake | 35 + Utilities/cmcurl/CMake/Macros.cmake | 89 + Utilities/cmcurl/CMake/OtherTests.cmake | 359 +- .../cmcurl/CMake/Platforms/WindowsCache.cmake | 122 + Utilities/cmcurl/CMake/Utilities.cmake | 31 + Utilities/cmcurl/CMakeLists.txt | 1561 ++--- Utilities/cmcurl/COPYING | 2 +- Utilities/cmcurl/Platforms/WindowsCache.cmake | 120 - Utilities/cmcurl/Platforms/config-aix.h | 483 -- Utilities/cmcurl/README-CMake.txt | 66 + Utilities/cmcurl/Testing/CMakeLists.txt | 19 - Utilities/cmcurl/Testing/curlgtk.c | 95 - Utilities/cmcurl/Testing/ftpget.c | 84 - Utilities/cmcurl/Testing/ftpgetresp.c | 64 - Utilities/cmcurl/Testing/ftpupload.c | 93 - Utilities/cmcurl/Testing/getinmemory.c | 83 - Utilities/cmcurl/Testing/http-post.c | 35 - Utilities/cmcurl/Testing/httpput.c | 100 - Utilities/cmcurl/Testing/multithread.c | 70 - Utilities/cmcurl/Testing/persistant.c | 53 - Utilities/cmcurl/Testing/postit2.c | 92 - Utilities/cmcurl/Testing/sepheaders.c | 80 - Utilities/cmcurl/Testing/simple.c | 28 - Utilities/cmcurl/Testing/simplessl.c | 120 - Utilities/cmcurl/Testing/testconfig.h.in | 7 - Utilities/cmcurl/Testing/win32sockets.c | 49 - Utilities/cmcurl/amigaos.c | 74 - Utilities/cmcurl/amigaos.h | 58 - Utilities/cmcurl/arpa_telnet.h | 101 - Utilities/cmcurl/base64.c | 366 -- Utilities/cmcurl/base64.h | 28 - Utilities/cmcurl/ca-bundle.h | 1 - Utilities/cmcurl/config.h.in | 720 --- Utilities/cmcurl/connect.c | 905 --- Utilities/cmcurl/connect.h | 46 - Utilities/cmcurl/content_encoding.c | 424 -- Utilities/cmcurl/content_encoding.h | 41 - Utilities/cmcurl/cookie.c | 1019 ---- Utilities/cmcurl/cookie.h | 107 - Utilities/cmcurl/curl/curl.h | 1644 ------ Utilities/cmcurl/curl/curlver.h | 56 - Utilities/cmcurl/curl/easy.h | 81 - Utilities/cmcurl/curl/mprintf.h | 80 - Utilities/cmcurl/curl/multi.h | 327 -- Utilities/cmcurl/curl/stdcheaders.h | 34 - Utilities/cmcurl/curl/types.h | 1 - Utilities/cmcurl/{Testing => }/curltest.c | 0 Utilities/cmcurl/curlx.h | 107 - Utilities/cmcurl/dict.c | 280 - Utilities/cmcurl/dict.h | 30 - Utilities/cmcurl/easy.c | 895 --- Utilities/cmcurl/easyif.h | 40 - Utilities/cmcurl/escape.c | 181 - Utilities/cmcurl/escape.h | 30 - Utilities/cmcurl/file.c | 407 -- Utilities/cmcurl/file.h | 31 - Utilities/cmcurl/formdata.c | 1694 ------ Utilities/cmcurl/formdata.h | 97 - Utilities/cmcurl/ftp.c | 3865 ------------- Utilities/cmcurl/ftp.h | 43 - Utilities/cmcurl/getenv.c | 69 - Utilities/cmcurl/getinfo.c | 234 - Utilities/cmcurl/getinfo.h | 28 - Utilities/cmcurl/gtls.c | 640 --- Utilities/cmcurl/gtls.h | 46 - Utilities/cmcurl/hash.c | 315 - Utilities/cmcurl/hash.h | 61 - Utilities/cmcurl/hostares.c | 307 - Utilities/cmcurl/hostasyn.c | 174 - Utilities/cmcurl/hostip.c | 636 --- Utilities/cmcurl/hostip.h | 271 - Utilities/cmcurl/hostip4.c | 389 -- Utilities/cmcurl/hostip6.c | 306 - Utilities/cmcurl/hostsyn.c | 138 - Utilities/cmcurl/hostthre.c | 840 --- Utilities/cmcurl/http.c | 2422 -------- Utilities/cmcurl/http.h | 85 - Utilities/cmcurl/http_chunks.c | 360 -- Utilities/cmcurl/http_chunks.h | 104 - Utilities/cmcurl/http_digest.c | 504 -- Utilities/cmcurl/http_digest.h | 58 - Utilities/cmcurl/http_negotiate.c | 327 -- Utilities/cmcurl/http_negotiate.h | 39 - Utilities/cmcurl/http_ntlm.c | 1111 ---- Utilities/cmcurl/http_ntlm.h | 146 - Utilities/cmcurl/if2ip.c | 134 - Utilities/cmcurl/if2ip.h | 67 - Utilities/cmcurl/include/curl/curl.h | 2338 ++++++++ Utilities/cmcurl/include/curl/curlbuild.h.cmake | 218 + Utilities/cmcurl/include/curl/curlrules.h | 262 + Utilities/cmcurl/include/curl/curlver.h | 69 + Utilities/cmcurl/include/curl/easy.h | 102 + Utilities/cmcurl/include/curl/mprintf.h | 81 + Utilities/cmcurl/include/curl/multi.h | 399 ++ Utilities/cmcurl/include/curl/stdcheaders.h | 33 + Utilities/cmcurl/include/curl/typecheck-gcc.h | 610 ++ Utilities/cmcurl/inet_ntoa_r.h | 44 - Utilities/cmcurl/inet_ntop.c | 224 - Utilities/cmcurl/inet_ntop.h | 37 - Utilities/cmcurl/inet_pton.c | 241 - Utilities/cmcurl/inet_pton.h | 42 - Utilities/cmcurl/krb4.c | 425 -- Utilities/cmcurl/krb4.h | 70 - Utilities/cmcurl/ldap.c | 702 --- Utilities/cmcurl/ldap.h | 29 - Utilities/cmcurl/lib/CMakeLists.txt | 147 + Utilities/cmcurl/lib/Makefile.inc | 71 + Utilities/cmcurl/lib/amigaos.c | 77 + Utilities/cmcurl/lib/amigaos.h | 39 + Utilities/cmcurl/lib/arpa_telnet.h | 104 + Utilities/cmcurl/lib/asyn-ares.c | 694 +++ Utilities/cmcurl/lib/asyn-thread.c | 701 +++ Utilities/cmcurl/lib/asyn.h | 168 + Utilities/cmcurl/lib/base64.c | 314 + Utilities/cmcurl/lib/bundles.c | 110 + Utilities/cmcurl/lib/bundles.h | 45 + Utilities/cmcurl/lib/conncache.c | 283 + Utilities/cmcurl/lib/conncache.h | 55 + Utilities/cmcurl/lib/connect.c | 1340 +++++ Utilities/cmcurl/lib/connect.h | 122 + Utilities/cmcurl/lib/content_encoding.c | 435 ++ Utilities/cmcurl/lib/content_encoding.h | 48 + Utilities/cmcurl/lib/cookie.c | 1365 +++++ Utilities/cmcurl/lib/cookie.h | 104 + Utilities/cmcurl/lib/curl_addrinfo.c | 527 ++ Utilities/cmcurl/lib/curl_addrinfo.h | 97 + Utilities/cmcurl/lib/curl_base64.h | 35 + Utilities/cmcurl/lib/curl_config.h.cmake | 955 ++++ Utilities/cmcurl/lib/curl_fnmatch.c | 427 ++ Utilities/cmcurl/lib/curl_fnmatch.h | 44 + Utilities/cmcurl/lib/curl_gethostname.c | 100 + Utilities/cmcurl/lib/curl_gethostname.h | 31 + Utilities/cmcurl/lib/curl_gssapi.c | 75 + Utilities/cmcurl/lib/curl_gssapi.h | 60 + Utilities/cmcurl/lib/curl_hmac.h | 67 + Utilities/cmcurl/lib/curl_ldap.h | 35 + Utilities/cmcurl/lib/curl_md4.h | 33 + Utilities/cmcurl/lib/curl_md5.h | 63 + Utilities/cmcurl/lib/curl_memory.h | 140 + Utilities/cmcurl/lib/curl_memrchr.c | 62 + Utilities/cmcurl/lib/curl_memrchr.h | 44 + Utilities/cmcurl/lib/curl_multibyte.c | 82 + Utilities/cmcurl/lib/curl_multibyte.h | 90 + Utilities/cmcurl/lib/curl_ntlm.c | 248 + Utilities/cmcurl/lib/curl_ntlm.h | 44 + Utilities/cmcurl/lib/curl_ntlm_core.c | 651 +++ Utilities/cmcurl/lib/curl_ntlm_core.h | 89 + Utilities/cmcurl/lib/curl_ntlm_msgs.c | 1010 ++++ Utilities/cmcurl/lib/curl_ntlm_msgs.h | 177 + Utilities/cmcurl/lib/curl_ntlm_wb.c | 435 ++ Utilities/cmcurl/lib/curl_ntlm_wb.h | 37 + Utilities/cmcurl/lib/curl_rtmp.c | 311 + Utilities/cmcurl/lib/curl_rtmp.h | 33 + Utilities/cmcurl/lib/curl_sasl.c | 741 +++ Utilities/cmcurl/lib/curl_sasl.h | 158 + Utilities/cmcurl/lib/curl_sasl_sspi.c | 696 +++ Utilities/cmcurl/lib/curl_sec.h | 51 + Utilities/cmcurl/lib/curl_setup.h | 708 +++ Utilities/cmcurl/lib/curl_setup_once.h | 551 ++ Utilities/cmcurl/lib/curl_sspi.c | 257 + Utilities/cmcurl/lib/curl_sspi.h | 315 + Utilities/cmcurl/lib/curl_threads.c | 135 + Utilities/cmcurl/lib/curl_threads.h | 57 + Utilities/cmcurl/lib/curlx.h | 119 + Utilities/cmcurl/lib/dict.c | 283 + Utilities/cmcurl/lib/dict.h | 29 + Utilities/cmcurl/lib/dotdot.c | 170 + Utilities/cmcurl/lib/dotdot.h | 25 + Utilities/cmcurl/lib/easy.c | 1182 ++++ Utilities/cmcurl/lib/easyif.h | 33 + Utilities/cmcurl/lib/escape.c | 233 + Utilities/cmcurl/lib/escape.h | 33 + Utilities/cmcurl/lib/file.c | 583 ++ Utilities/cmcurl/lib/file.h | 41 + Utilities/cmcurl/lib/fileinfo.c | 54 + Utilities/cmcurl/lib/fileinfo.h | 33 + Utilities/cmcurl/lib/formdata.c | 1596 ++++++ Utilities/cmcurl/lib/formdata.h | 98 + Utilities/cmcurl/lib/ftp.c | 4586 +++++++++++++++ Utilities/cmcurl/lib/ftp.h | 160 + Utilities/cmcurl/lib/ftplistparser.c | 1053 ++++ Utilities/cmcurl/lib/ftplistparser.h | 41 + Utilities/cmcurl/lib/getenv.c | 53 + Utilities/cmcurl/lib/getinfo.c | 381 ++ Utilities/cmcurl/lib/getinfo.h | 27 + Utilities/cmcurl/lib/gopher.c | 169 + Utilities/cmcurl/lib/gopher.h | 29 + Utilities/cmcurl/lib/hash.c | 400 ++ Utilities/cmcurl/lib/hash.h | 106 + Utilities/cmcurl/lib/hmac.c | 133 + Utilities/cmcurl/lib/hostasyn.c | 157 + Utilities/cmcurl/lib/hostcheck.c | 148 + Utilities/cmcurl/lib/hostcheck.h | 32 + Utilities/cmcurl/lib/hostip.c | 857 +++ Utilities/cmcurl/lib/hostip.h | 250 + Utilities/cmcurl/lib/hostip4.c | 310 + Utilities/cmcurl/lib/hostip6.c | 224 + Utilities/cmcurl/lib/hostsyn.c | 111 + Utilities/cmcurl/lib/http.c | 3664 ++++++++++++ Utilities/cmcurl/lib/http.h | 223 + Utilities/cmcurl/lib/http2.c | 1036 ++++ Utilities/cmcurl/lib/http2.h | 50 + Utilities/cmcurl/lib/http_chunks.c | 385 ++ Utilities/cmcurl/lib/http_chunks.h | 91 + Utilities/cmcurl/lib/http_digest.c | 598 ++ Utilities/cmcurl/lib/http_digest.h | 57 + Utilities/cmcurl/lib/http_negotiate.c | 243 + Utilities/cmcurl/lib/http_negotiate.h | 42 + Utilities/cmcurl/lib/http_negotiate_sspi.c | 290 + Utilities/cmcurl/lib/http_proxy.c | 598 ++ Utilities/cmcurl/lib/http_proxy.h | 41 + Utilities/cmcurl/lib/idn_win32.c | 85 + Utilities/cmcurl/lib/if2ip.c | 218 + Utilities/cmcurl/lib/if2ip.h | 74 + Utilities/cmcurl/lib/imap.c | 2893 ++++++++++ Utilities/cmcurl/lib/imap.h | 111 + Utilities/cmcurl/lib/inet_ntop.c | 199 + Utilities/cmcurl/lib/inet_ntop.h | 38 + Utilities/cmcurl/lib/inet_pton.c | 234 + Utilities/cmcurl/lib/inet_pton.h | 37 + Utilities/cmcurl/lib/krb5.c | 342 ++ Utilities/cmcurl/lib/ldap.c | 709 +++ Utilities/cmcurl/lib/libcurl.rc | 63 + Utilities/cmcurl/lib/llist.c | 212 + Utilities/cmcurl/lib/llist.h | 57 + Utilities/cmcurl/lib/md4.c | 282 + Utilities/cmcurl/lib/md5.c | 541 ++ Utilities/cmcurl/lib/memdebug.c | 490 ++ Utilities/cmcurl/lib/memdebug.h | 176 + Utilities/cmcurl/lib/mprintf.c | 1138 ++++ Utilities/cmcurl/lib/multi.c | 2835 +++++++++ Utilities/cmcurl/lib/multihandle.h | 142 + Utilities/cmcurl/lib/multiif.h | 97 + Utilities/cmcurl/lib/netrc.c | 201 + Utilities/cmcurl/lib/netrc.h | 36 + Utilities/cmcurl/lib/non-ascii.c | 343 ++ Utilities/cmcurl/lib/non-ascii.h | 63 + Utilities/cmcurl/lib/nonblock.c | 91 + Utilities/cmcurl/lib/nonblock.h | 31 + Utilities/cmcurl/lib/nwlib.c | 329 ++ Utilities/cmcurl/lib/nwos.c | 88 + Utilities/cmcurl/lib/openldap.c | 640 +++ Utilities/cmcurl/lib/parsedate.c | 583 ++ Utilities/cmcurl/lib/parsedate.h | 31 + Utilities/cmcurl/lib/pingpong.c | 517 ++ Utilities/cmcurl/lib/pingpong.h | 150 + Utilities/cmcurl/lib/pipeline.c | 340 ++ Utilities/cmcurl/lib/pipeline.h | 44 + Utilities/cmcurl/lib/pop3.c | 2339 ++++++++ Utilities/cmcurl/lib/pop3.h | 110 + Utilities/cmcurl/lib/progress.c | 494 ++ Utilities/cmcurl/lib/progress.h | 73 + Utilities/cmcurl/lib/rawstr.c | 142 + Utilities/cmcurl/lib/rawstr.h | 47 + Utilities/cmcurl/lib/rtsp.c | 809 +++ Utilities/cmcurl/lib/rtsp.h | 69 + Utilities/cmcurl/lib/security.c | 601 ++ Utilities/cmcurl/lib/select.c | 574 ++ Utilities/cmcurl/lib/select.h | 114 + Utilities/cmcurl/lib/sendf.c | 686 +++ Utilities/cmcurl/lib/sendf.h | 90 + Utilities/cmcurl/lib/setup-os400.h | 239 + Utilities/cmcurl/lib/setup-vms.h | 399 ++ Utilities/cmcurl/lib/share.c | 254 + Utilities/cmcurl/lib/share.h | 61 + Utilities/cmcurl/lib/sigpipe.h | 78 + Utilities/cmcurl/lib/slist.c | 143 + Utilities/cmcurl/lib/slist.h | 40 + Utilities/cmcurl/lib/smtp.c | 2378 ++++++++ Utilities/cmcurl/lib/smtp.h | 106 + Utilities/cmcurl/lib/sockaddr.h | 43 + Utilities/cmcurl/lib/socks.c | 755 +++ Utilities/cmcurl/lib/socks.h | 77 + Utilities/cmcurl/lib/socks_gssapi.c | 534 ++ Utilities/cmcurl/lib/socks_sspi.c | 604 ++ Utilities/cmcurl/lib/speedcheck.c | 74 + Utilities/cmcurl/lib/speedcheck.h | 33 + Utilities/cmcurl/lib/splay.c | 288 + Utilities/cmcurl/lib/splay.h | 66 + Utilities/cmcurl/lib/ssh.c | 3302 +++++++++++ Utilities/cmcurl/lib/ssh.h | 183 + Utilities/cmcurl/lib/strdup.c | 52 + Utilities/cmcurl/lib/strdup.h | 30 + Utilities/cmcurl/lib/strequal.c | 79 + Utilities/cmcurl/lib/strequal.h | 31 + Utilities/cmcurl/lib/strerror.c | 1127 ++++ Utilities/cmcurl/lib/strerror.h | 37 + Utilities/cmcurl/lib/strtok.c | 66 + Utilities/cmcurl/lib/strtok.h | 34 + Utilities/cmcurl/lib/strtoofft.c | 188 + Utilities/cmcurl/lib/strtoofft.h | 68 + Utilities/cmcurl/lib/telnet.c | 1680 ++++++ Utilities/cmcurl/lib/telnet.h | 29 + Utilities/cmcurl/lib/tftp.c | 1375 +++++ Utilities/cmcurl/lib/tftp.h | 29 + Utilities/cmcurl/lib/timeval.c | 134 + Utilities/cmcurl/lib/timeval.h | 58 + Utilities/cmcurl/lib/transfer.c | 1993 +++++++ Utilities/cmcurl/lib/transfer.h | 70 + Utilities/cmcurl/lib/url.c | 6032 ++++++++++++++++++++ Utilities/cmcurl/lib/url.h | 82 + Utilities/cmcurl/lib/urldata.h | 1705 ++++++ Utilities/cmcurl/lib/version.c | 349 ++ Utilities/cmcurl/lib/vtls/axtls.c | 684 +++ Utilities/cmcurl/lib/vtls/axtls.h | 72 + Utilities/cmcurl/lib/vtls/curl_darwinssl.c | 2485 ++++++++ Utilities/cmcurl/lib/vtls/curl_darwinssl.h | 77 + Utilities/cmcurl/lib/vtls/curl_schannel.c | 1346 +++++ Utilities/cmcurl/lib/vtls/curl_schannel.h | 137 + Utilities/cmcurl/lib/vtls/cyassl.c | 655 +++ Utilities/cmcurl/lib/vtls/cyassl.h | 69 + Utilities/cmcurl/lib/vtls/gskit.c | 1053 ++++ Utilities/cmcurl/lib/vtls/gskit.h | 65 + Utilities/cmcurl/lib/vtls/gtls.c | 1323 +++++ Utilities/cmcurl/lib/vtls/gtls.h | 79 + Utilities/cmcurl/lib/vtls/nss.c | 1943 +++++++ Utilities/cmcurl/lib/vtls/nssg.h | 89 + Utilities/cmcurl/lib/vtls/openssl.c | 2918 ++++++++++ Utilities/cmcurl/lib/vtls/openssl.h | 101 + Utilities/cmcurl/lib/vtls/polarssl.c | 746 +++ Utilities/cmcurl/lib/vtls/polarssl.h | 73 + Utilities/cmcurl/lib/vtls/polarssl_threadlock.c | 156 + Utilities/cmcurl/lib/vtls/polarssl_threadlock.h | 53 + Utilities/cmcurl/lib/vtls/qssl.c | 527 ++ Utilities/cmcurl/lib/vtls/qssl.h | 62 + Utilities/cmcurl/lib/vtls/vtls.c | 705 +++ Utilities/cmcurl/lib/vtls/vtls.h | 132 + Utilities/cmcurl/lib/warnless.c | 486 ++ Utilities/cmcurl/lib/warnless.h | 107 + Utilities/cmcurl/lib/wildcard.c | 77 + Utilities/cmcurl/lib/wildcard.h | 58 + Utilities/cmcurl/lib/x509asn1.c | 1183 ++++ Utilities/cmcurl/lib/x509asn1.h | 129 + Utilities/cmcurl/llist.c | 138 - Utilities/cmcurl/llist.h | 60 - Utilities/cmcurl/md5.c | 352 -- Utilities/cmcurl/md5.h | 29 - Utilities/cmcurl/memdebug.c | 298 - Utilities/cmcurl/memdebug.h | 125 - Utilities/cmcurl/memory.h | 50 - Utilities/cmcurl/mprintf.c | 1218 ---- Utilities/cmcurl/multi.c | 1988 ------- Utilities/cmcurl/multiif.h | 46 - Utilities/cmcurl/netrc.c | 247 - Utilities/cmcurl/netrc.h | 34 - Utilities/cmcurl/nwlib.c | 300 - Utilities/cmcurl/parsedate.c | 425 -- Utilities/cmcurl/parsedate.h | 28 - Utilities/cmcurl/progress.c | 424 -- Utilities/cmcurl/progress.h | 70 - Utilities/cmcurl/security.c | 493 -- Utilities/cmcurl/select.c | 315 - Utilities/cmcurl/select.h | 60 - Utilities/cmcurl/sendf.c | 663 --- Utilities/cmcurl/sendf.h | 72 - Utilities/cmcurl/setup.h | 390 -- Utilities/cmcurl/setup_once.h | 153 - Utilities/cmcurl/share.c | 219 - Utilities/cmcurl/share.h | 56 - Utilities/cmcurl/sockaddr.h | 38 - Utilities/cmcurl/socks.c | 592 -- Utilities/cmcurl/socks.h | 41 - Utilities/cmcurl/speedcheck.c | 75 - Utilities/cmcurl/speedcheck.h | 34 - Utilities/cmcurl/splay.c | 425 -- Utilities/cmcurl/splay.h | 54 - Utilities/cmcurl/ssh.c | 979 ---- Utilities/cmcurl/ssh.h | 49 - Utilities/cmcurl/sslgen.c | 618 -- Utilities/cmcurl/sslgen.h | 84 - Utilities/cmcurl/ssluse.c | 1950 ------- Utilities/cmcurl/ssluse.h | 71 - Utilities/cmcurl/strdup.c | 46 - Utilities/cmcurl/strdup.h | 34 - Utilities/cmcurl/strequal.c | 101 - Utilities/cmcurl/strequal.h | 38 - Utilities/cmcurl/strerror.c | 751 --- Utilities/cmcurl/strerror.h | 34 - Utilities/cmcurl/strtok.c | 68 - Utilities/cmcurl/strtok.h | 38 - Utilities/cmcurl/strtoofft.c | 165 - Utilities/cmcurl/strtoofft.h | 73 - Utilities/cmcurl/telnet.c | 1403 ----- Utilities/cmcurl/telnet.h | 30 - Utilities/cmcurl/tftp.c | 816 --- Utilities/cmcurl/tftp.h | 31 - Utilities/cmcurl/timeval.c | 116 - Utilities/cmcurl/timeval.h | 76 - Utilities/cmcurl/transfer.c | 2494 -------- Utilities/cmcurl/transfer.h | 51 - Utilities/cmcurl/url.c | 4252 -------------- Utilities/cmcurl/url.h | 85 - Utilities/cmcurl/urldata.h | 1340 ----- Utilities/cmcurl/version.c | 249 - .../{cmlibarchive => cmjsoncpp}/.gitattributes | 0 Utilities/cmjsoncpp/CMakeLists.txt | 25 + Utilities/cmjsoncpp/LICENSE | 55 + Utilities/cmjsoncpp/README-CMake.txt | 66 + Utilities/cmjsoncpp/include/json/assertions.h | 41 + Utilities/cmjsoncpp/include/json/config.h | 119 + Utilities/cmjsoncpp/include/json/features.h | 57 + Utilities/cmjsoncpp/include/json/forwards.h | 43 + Utilities/cmjsoncpp/include/json/json.h | 14 + Utilities/cmjsoncpp/include/json/reader.h | 274 + Utilities/cmjsoncpp/include/json/value.h | 1088 ++++ Utilities/cmjsoncpp/include/json/version.h | 14 + Utilities/cmjsoncpp/include/json/writer.h | 213 + .../cmjsoncpp/src/lib_json/json_batchallocator.h | 121 + .../cmjsoncpp/src/lib_json/json_internalarray.inl | 360 ++ .../cmjsoncpp/src/lib_json/json_internalmap.inl | 473 ++ Utilities/cmjsoncpp/src/lib_json/json_reader.cpp | 885 +++ Utilities/cmjsoncpp/src/lib_json/json_tool.h | 87 + Utilities/cmjsoncpp/src/lib_json/json_value.cpp | 1482 +++++ .../cmjsoncpp/src/lib_json/json_valueiterator.inl | 241 + Utilities/cmjsoncpp/src/lib_json/json_writer.cpp | 703 +++ Utilities/cmlibarchive/CMakeLists.txt | 10 +- .../cmlibarchive/libarchive/archive_getdate.c | 8 +- Utilities/cmliblzma/CMakeLists.txt | 7 +- Utilities/cmliblzma/common/sysdefs.h | 4 +- Utilities/cmliblzma/config.h.in | 4 +- Utilities/cmzlib/CMakeLists.txt | 18 +- bootstrap | 59 +- 1423 files changed, 129945 insertions(+), 60549 deletions(-) create mode 100644 Help/command/continue.rst create mode 100644 Help/include/INTERFACE_INCLUDE_DIRECTORIES_WARNING.txt create mode 100644 Help/include/INTERFACE_LINK_LIBRARIES_WARNING.txt create mode 100644 Help/module/CTestCoverageCollectGCOV.rst create mode 100644 Help/module/FindGSL.rst create mode 100644 Help/module/FindIntl.rst create mode 100644 Help/module/FindJsonCpp.rst create mode 100644 Help/policy/CMP0055.rst create mode 100644 Help/policy/CMP0056.rst create mode 100644 Help/prop_sf/VS_SHADER_FLAGS.rst create mode 100644 Help/prop_tgt/ANDROID_API_MIN.rst create mode 100644 Help/prop_tgt/INTERFACE_BUILD_PROPERTY.txt delete mode 100644 Help/release/3.0.0.rst create mode 100644 Help/release/3.0.rst delete mode 100644 Help/release/3.1.0.rst create mode 100644 Help/release/3.1.rst create mode 100644 Help/release/3.2.rst create mode 100644 Help/variable/CMAKE_ANDROID_API_MIN.rst create mode 100644 Help/variable/CMAKE_MATCH_COUNT.rst create mode 100644 Help/variable/MINGW.rst create mode 100644 Modules/CTestCoverageCollectGCOV.cmake create mode 100644 Modules/Compiler/AppleClang-C-FeatureTests.cmake create mode 100644 Modules/Compiler/AppleClang-CXX-FeatureTests.cmake create mode 100644 Modules/Compiler/Clang-CXX-TestableFeatures.cmake create mode 100644 Modules/Compiler/MSVC-CXX-FeatureTests.cmake create mode 100644 Modules/Compiler/MSVC-CXX.cmake create mode 100644 Modules/Compiler/SunPro-CXX-FeatureTests.cmake create mode 100644 Modules/FindGSL.cmake create mode 100644 Modules/FindIntl.cmake create mode 100644 Modules/FindJsonCpp.cmake create mode 100644 Source/CTest/cmCTestCurl.cxx create mode 100644 Source/CTest/cmCTestCurl.h create mode 100644 Source/CTest/cmParseBlanketJSCoverage.cxx create mode 100644 Source/CTest/cmParseBlanketJSCoverage.h create mode 100644 Source/CTest/cmParseDelphiCoverage.cxx create mode 100644 Source/CTest/cmParseDelphiCoverage.h create mode 100644 Source/cmContinueCommand.cxx create mode 100644 Source/cmContinueCommand.h create mode 100644 Source/cmCurl.cxx create mode 100644 Source/cmCurl.h create mode 100644 Source/cmFileLock.cxx create mode 100644 Source/cmFileLock.h create mode 100644 Source/cmFileLockPool.cxx create mode 100644 Source/cmFileLockPool.h create mode 100644 Source/cmFileLockResult.cxx create mode 100644 Source/cmFileLockResult.h create mode 100644 Source/cmFileLockUnix.cxx create mode 100644 Source/cmFileLockWin32.cxx create mode 100644 Source/cmMachO.cxx create mode 100644 Source/cmMachO.h create mode 100644 Source/cmPathLabel.cxx create mode 100644 Source/cmPathLabel.h create mode 100644 Source/cmSearchPath.cxx create mode 100644 Source/cmSearchPath.h delete mode 100644 Source/cmStandardIncludes.cxx create mode 100644 Source/cm_get_date.c create mode 100644 Source/cm_get_date.h create mode 100644 Source/kwsys/CONTRIBUTING.rst create mode 100644 Tests/CMakeLib/PseudoMemcheck/CMakeLists.txt rename Tests/{CTestTestMemcheck/NoLogDummyChecker => CMakeLib/PseudoMemcheck/NoLog}/CMakeLists.txt (100%) rename Tests/{CTestTestMemcheck => CMakeLib/PseudoMemcheck}/memtester.cxx.in (100%) create mode 100644 Tests/CTestCoverageCollectGCOV/fakegcov.cmake create mode 100644 Tests/CTestCoverageCollectGCOV/test.cmake.in delete mode 100644 Tests/CTestTestMemcheck/CMakeLists.txt delete mode 100644 Tests/CTestTestMemcheck/test.cmake.in create mode 100644 Tests/CompileDefinitions/add_def_cmd/CMakeLists.txt create mode 100644 Tests/CompileDefinitions/add_def_cmd_tprop/CMakeLists.txt delete mode 100644 Tests/CompileDefinitions/add_definitions_command/CMakeLists.txt delete mode 100644 Tests/CompileDefinitions/add_definitions_command_with_target_prop/CMakeLists.txt create mode 100644 Tests/CompileFeatures/feature_test.c create mode 100644 Tests/CompileFeatures/genex_test.c delete mode 100644 Tests/CustomCommand/config.h.in create mode 100644 Tests/CustomCommandByproducts/CMakeLists.txt create mode 100644 Tests/CustomCommandByproducts/CustomCommandByproducts.c create mode 100644 Tests/CustomCommandByproducts/External/CMakeLists.txt create mode 100644 Tests/CustomCommandByproducts/External/ExternalLibrary.c copy Tests/{CMakeOnly/LinkInterfaceLoop/main.c => CustomCommandByproducts/ProducerExe.c} (100%) create mode 100644 Tests/CustomCommandByproducts/byproduct1.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct2.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct3.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct4.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct5.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct6.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct7.c.in create mode 100644 Tests/CustomCommandByproducts/byproduct8.c.in create mode 100644 Tests/CustomCommandByproducts/ninja-check.cmake create mode 100644 Tests/DelphiCoverage/DartConfiguration.tcl.in create mode 100644 Tests/DelphiCoverage/UTCovTest(UTCovTest.pas).html create mode 100644 Tests/DelphiCoverage/src/UTCovTest.pas create mode 100644 Tests/ExportImport/Export/include/abs/1a/testLibAbs1a.h create mode 100644 Tests/ExportImport/Export/include/abs/1b/testLibAbs1b.h create mode 100644 Tests/ExportImport/Export/include/abs/testLibAbs1.h create mode 100644 Tests/ExportImport/Export/testLibAbs1.c create mode 100644 Tests/ExportImport/Import/A/imp_testExeAbs1.c create mode 100644 Tests/FindGSL/CMakeLists.txt create mode 100644 Tests/FindGSL/rng/CMakeLists.txt create mode 100644 Tests/FindGSL/rng/main.cc create mode 100644 Tests/FindJsonCpp/CMakeLists.txt create mode 100644 Tests/FindJsonCpp/Test/CMakeLists.txt create mode 100644 Tests/FindJsonCpp/Test/main.cxx create mode 100644 Tests/FortranOnly/preprocess.F create mode 100644 Tests/FortranOnly/test_preprocess.cmake create mode 100644 Tests/IncludeDirectories/SystemIncludeDirectories/config_specific/config_iface.h create mode 100644 Tests/JavascriptCoverage/DartConfiguration.tcl.in create mode 100644 Tests/JavascriptCoverage/output.json.in create mode 100644 Tests/JavascriptCoverage/test.js create mode 100644 Tests/JavascriptCoverage/test3.js create mode 100644 Tests/Module/ExternalData/DataScript.dat.md5 create mode 100644 Tests/Module/ExternalData/MyScript1.cmake create mode 100644 Tests/Module/WriteCompilerDetectionHeader/compile_tests.h create mode 100644 Tests/Module/WriteCompilerDetectionHeader/main.c create mode 100644 Tests/Module/WriteCompilerDetectionHeader/main_multi.c create mode 100644 Tests/Module/WriteCompilerDetectionHeader/multi_files.cpp create mode 100644 Tests/QtAutogen/autorcc_depends/CMakeLists.txt create mode 100644 Tests/QtAutogen/autorcc_depends/res1.qrc create mode 100644 Tests/QtAutogen/autorcc_depends/res1_input.txt copy Tests/{CTestTestCycle/simple.cxx => QtAutogen/autorcc_depends/test_res1.cpp} (100%) rename Tests/RunCMake/{CompileFeatures/NotAFeature_OriginDebug_target_compile_features-result.txt => CMP0055/CMP0055-NEW-Out-of-Scope-result.txt} (100%) create mode 100644 Tests/RunCMake/CMP0055/CMP0055-NEW-Out-of-Scope-stderr.txt create mode 100644 Tests/RunCMake/CMP0055/CMP0055-NEW-Out-of-Scope.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CMP0055/CMP0055-NEW-Reject-Arguments-result.txt} (100%) create mode 100644 Tests/RunCMake/CMP0055/CMP0055-NEW-Reject-Arguments-stderr.txt create mode 100644 Tests/RunCMake/CMP0055/CMP0055-NEW-Reject-Arguments.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CMP0055/CMP0055-OLD-Out-of-Scope-result.txt} (100%) copy Tests/RunCMake/{CMP0022/CMP0022-NOWARN-exe-stderr.txt => CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt} (100%) create mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CMP0055/CMP0055-OLD-Reject-Arguments-result.txt} (100%) copy Tests/RunCMake/{CMP0022/CMP0022-NOWARN-exe-stderr.txt => CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt} (100%) create mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CMP0055/CMP0055-WARN-Out-of-Scope-result.txt} (100%) create mode 100644 Tests/RunCMake/CMP0055/CMP0055-WARN-Out-of-Scope-stderr.txt create mode 100644 Tests/RunCMake/CMP0055/CMP0055-WARN-Out-of-Scope.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CMP0055/CMP0055-WARN-Reject-Arguments-result.txt} (100%) create mode 100644 Tests/RunCMake/CMP0055/CMP0055-WARN-Reject-Arguments-stderr.txt create mode 100644 Tests/RunCMake/CMP0055/CMP0055-WARN-Reject-Arguments.cmake create mode 100644 Tests/RunCMake/CMP0055/CMakeLists.txt create mode 100644 Tests/RunCMake/CMP0055/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/CPackRPM/CMakeLists.txt create mode 100644 Tests/RunCMake/CPackRPM/CPackRPM_PARTIALLY_RELOCATABLE_WARNING-stderr.txt create mode 100644 Tests/RunCMake/CPackRPM/CPackRPM_PARTIALLY_RELOCATABLE_WARNING.cmake create mode 100644 Tests/RunCMake/CPackRPM/RunCMakeTest.cmake rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/CMakeLists.txt.in (100%) rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/CTestConfig.cmake.in (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/DummyAddressSanitizer-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyAddressSanitizer-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyAddressSanitizer-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyBC-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyBC-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyBC-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyBCNoLogFile-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyBCNoLogFile-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyBCNoLogFile-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyLeakSanitizer-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyLeakSanitizer-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyLeakSanitizer-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyMemorySanitizer-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyMemorySanitizer-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyMemorySanitizer-stdout.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CTestMemcheck/DummyPurify-result.txt} (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/DummyPurify-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyPurify-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyPurifyNoLogFile-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyPurifyNoLogFile-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyPurifyNoLogFile-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyThreadSanitizer-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyThreadSanitizer-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyThreadSanitizer-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyUndefinedBehaviorSanitizer-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyUndefinedBehaviorSanitizer-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyUndefinedBehaviorSanitizer-stdout.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CTestMemcheck/DummyValgrind-result.txt} (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrind-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrind-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindCustomOptions-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindCustomOptions-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindCustomOptions-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindFailPost-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindFailPost-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindFailPost-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindFailPre-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindFailPre-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindFailPre-stdout.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CTestMemcheck/DummyValgrindIgnoreMemcheck-result.txt} (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindIgnoreMemcheck-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindIgnoreMemcheck-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindInvalidSupFile-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindInvalidSupFile-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindInvalidSupFile-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindNoLogFile-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindNoLogFile-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindNoLogFile-stdout.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CTestMemcheck/DummyValgrindPrePost-result.txt} (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindPrePost-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindPrePost-stdout.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CTestMemcheck/DummyValgrindTwoTargets-result.txt} (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindTwoTargets-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/DummyValgrindTwoTargets-stdout.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => CTestMemcheck/NotExist-result.txt} (100%) create mode 100644 Tests/RunCMake/CTestMemcheck/NotExist-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/NotExist-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/CTestMemcheck/Unknown-result.txt create mode 100644 Tests/RunCMake/CTestMemcheck/Unknown-stderr.txt create mode 100644 Tests/RunCMake/CTestMemcheck/Unknown-stdout.txt create mode 100644 Tests/RunCMake/CTestMemcheck/test.cmake.in rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/testAddressSanitizer.cmake (100%) rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/testLeakSanitizer.cmake (100%) rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/testMemorySanitizer.cmake (100%) rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/testThreadSanitizer.cmake (100%) rename Tests/{CTestTestMemcheck => RunCMake/CTestMemcheck}/testUndefinedBehaviorSanitizer.cmake (100%) create mode 100644 Tests/RunCMake/CTestSubmit/BadArg-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/BadArg-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/BadFILES-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/BadFILES-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/BadPARTS-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/BadPARTS-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadFILES-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadFILES-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadFTP-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadFTP-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadNone-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadNone-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadPARTS-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadPARTS-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadRETRY_COUNT-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadRETRY_COUNT-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadRETRY_DELAY-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/CDashUploadRETRY_DELAY-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/CMakeLists.txt.in create mode 100644 Tests/RunCMake/CTestSubmit/CTestConfig.cmake.in create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-cp-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-cp-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-cp-stdout.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-ftp-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-ftp-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-ftp-stdout.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-http-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-http-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-http-stdout.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-https-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-https-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-https-stdout.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-scp-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-scp-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-scp-stdout.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-xmlrpc-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-xmlrpc-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/FailDrop-xmlrpc-stdout.txt create mode 100644 Tests/RunCMake/CTestSubmit/PARTSCDashUpload-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/PARTSCDashUpload-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/PARTSCDashUploadType-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/PARTSCDashUploadType-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/RepeatRETURN_VALUE-result.txt create mode 100644 Tests/RunCMake/CTestSubmit/RepeatRETURN_VALUE-stderr.txt create mode 100644 Tests/RunCMake/CTestSubmit/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/CTestSubmit/test.cmake.in copy Tests/RunCMake/{CMP0054 => CommandLine}/CMakeLists.txt (100%) create mode 100644 Tests/RunCMake/CommandLine/D_nested_cache-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/D_nested_cache.cmake create mode 100644 Tests/RunCMake/CommandLine/D_typed_nested_cache-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/D_typed_nested_cache.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-from1-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from1-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-from2-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from2-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-from3-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from3-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from3.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-from4-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from4-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from4.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-from5-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from5-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-from5.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-mtime1-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-mtime1-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-bad-opt1-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-bad-opt1-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_tar-end-opt1-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_tar-end-opt1-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CompileFeatures/NotAFeature_OriginDebugCommand-result.txt} (100%) create mode 100644 Tests/RunCMake/CompileFeatures/NotAFeature_OriginDebugCommand-stderr.txt rename Tests/RunCMake/CompileFeatures/{NotAFeature_OriginDebug_target_compile_features.cmake => NotAFeature_OriginDebugCommand.cmake} (100%) delete mode 100644 Tests/RunCMake/CompileFeatures/NotAFeature_OriginDebug_target_compile_features-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => ExternalData/BadCustom1-result.txt} (100%) create mode 100644 Tests/RunCMake/ExternalData/BadCustom1-stderr.txt create mode 100644 Tests/RunCMake/ExternalData/BadCustom1.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => ExternalData/BadCustom2-result.txt} (100%) create mode 100644 Tests/RunCMake/ExternalData/BadCustom2-stderr.txt create mode 100644 Tests/RunCMake/ExternalData/BadCustom2.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => ExternalData/BadCustom3-result.txt} (100%) create mode 100644 Tests/RunCMake/ExternalData/BadCustom3-stderr.txt create mode 100644 Tests/RunCMake/ExternalData/BadCustom3.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => ExternalData/BadCustom4-result.txt} (100%) create mode 100644 Tests/RunCMake/ExternalData/BadCustom4-stderr.txt create mode 100644 Tests/RunCMake/ExternalData/BadCustom4.cmake create mode 100644 Tests/RunCMake/ExternalProject/Add_StepDependencies.cmake create mode 100644 Tests/RunCMake/ExternalProject/Add_StepDependencies_no_target.cmake create mode 100644 Tests/RunCMake/ExternalProject/CMAKE_CACHE_ARGS.cmake create mode 100644 Tests/RunCMake/ExternalProject/CMAKE_CACHE_DEFAULT_ARGS.cmake create mode 100644 Tests/RunCMake/ExternalProject/CMAKE_CACHE_mix.cmake create mode 100644 Tests/RunCMake/ExternalProject/CMakeLists.txt create mode 100644 Tests/RunCMake/ExternalProject/NO_DEPENDS-stderr.txt create mode 100644 Tests/RunCMake/ExternalProject/NO_DEPENDS.cmake create mode 100644 Tests/RunCMake/ExternalProject/RunCMakeTest.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => File_Generate/CarryPermissions-result.txt} (100%) copy Tests/RunCMake/{CMP0022/CMP0022-NOWARN-exe-stderr.txt => File_Generate/CarryPermissions-stderr.txt} (100%) create mode 100644 Tests/RunCMake/File_Generate/CarryPermissions.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => File_Generate/GenerateSource-result.txt} (100%) copy Tests/RunCMake/{CMP0022/CMP0022-NOWARN-exe-stderr.txt => File_Generate/GenerateSource-stderr.txt} (100%) create mode 100644 Tests/RunCMake/File_Generate/GenerateSource.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => File_Generate/OutputNameMatchesObjects-result.txt} (100%) create mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesObjects-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesObjects.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => File_Generate/OutputNameMatchesOtherSources-result.txt} (100%) copy Tests/RunCMake/{CMP0022/CMP0022-NOWARN-exe-stderr.txt => File_Generate/OutputNameMatchesOtherSources-stderr.txt} (100%) create mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => File_Generate/OutputNameMatchesSources-result.txt} (100%) create mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesSources-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesSources.cmake copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => File_Generate/ReRunCMake-result.txt} (100%) copy Tests/RunCMake/{CMP0022/CMP0022-NOWARN-exe-stderr.txt => File_Generate/ReRunCMake-stderr.txt} (100%) create mode 100644 Tests/RunCMake/File_Generate/ReRunCMake.cmake copy Tests/RunCMake/{CMP0022 => File_Generate}/empty.cpp (100%) create mode 100755 Tests/RunCMake/File_Generate/input_script.sh copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => WriteCompilerDetectionHeader/MultiBadOutDir-result.txt} (100%) create mode 100644 Tests/RunCMake/WriteCompilerDetectionHeader/MultiBadOutDir-stderr.txt create mode 100644 Tests/RunCMake/WriteCompilerDetectionHeader/MultiBadOutDir.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => WriteCompilerDetectionHeader/MultiNoOutFileVar-result.txt} (100%) create mode 100644 Tests/RunCMake/WriteCompilerDetectionHeader/MultiNoOutFileVar-stderr.txt create mode 100644 Tests/RunCMake/WriteCompilerDetectionHeader/MultiNoOutFileVar.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => WriteCompilerDetectionHeader/MultiNoOutdir-result.txt} (100%) create mode 100644 Tests/RunCMake/WriteCompilerDetectionHeader/MultiNoOutdir-stderr.txt create mode 100644 Tests/RunCMake/WriteCompilerDetectionHeader/MultiNoOutdir.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/AppendNoOutput-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/AppendNoOutput-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/AppendNoOutput.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/AppendNotOutput-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/AppendNotOutput-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/AppendNotOutput.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/BadArgument-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/BadArgument-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/BadArgument.cmake create mode 100644 Tests/RunCMake/add_custom_command/CMakeLists.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/NoArguments-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/NoArguments-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/NoArguments.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/NoOutputOrTarget-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/NoOutputOrTarget-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/NoOutputOrTarget.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/OutputAndTarget-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/OutputAndTarget-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/OutputAndTarget.cmake create mode 100644 Tests/RunCMake/add_custom_command/RunCMakeTest.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/SourceByproducts-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/SourceByproducts-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/SourceByproducts.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/SourceUsesTerminal-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/SourceUsesTerminal-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/SourceUsesTerminal.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_target/BadTargetName-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_target/BadTargetName-stderr.txt create mode 100644 Tests/RunCMake/add_custom_target/BadTargetName.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_target/ByproductsNoCommand-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_target/ByproductsNoCommand-stderr.txt create mode 100644 Tests/RunCMake/add_custom_target/ByproductsNoCommand.cmake create mode 100644 Tests/RunCMake/add_custom_target/CMakeLists.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_target/NoArguments-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_target/NoArguments-stderr.txt create mode 100644 Tests/RunCMake/add_custom_target/NoArguments.cmake create mode 100644 Tests/RunCMake/add_custom_target/RunCMakeTest.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_target/UsesTerminalNoCommand-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_target/UsesTerminalNoCommand-stderr.txt create mode 100644 Tests/RunCMake/add_custom_target/UsesTerminalNoCommand.cmake create mode 100644 Tests/RunCMake/configure_file/RerunCMake-rerun-stderr.txt create mode 100644 Tests/RunCMake/configure_file/RerunCMake-rerun-stdout.txt create mode 100644 Tests/RunCMake/configure_file/RerunCMake-stderr.txt create mode 100644 Tests/RunCMake/configure_file/RerunCMake-stdout.txt create mode 100644 Tests/RunCMake/configure_file/RerunCMake.cmake create mode 100644 Tests/RunCMake/configure_file/UnknownArg-stderr.txt create mode 100644 Tests/RunCMake/configure_file/UnknownArg.cmake create mode 100644 Tests/RunCMake/continue/CMakeLists.txt create mode 100644 Tests/RunCMake/continue/ContinueForEachInLists.cmake create mode 100644 Tests/RunCMake/continue/ContinueForeach-stdout.txt create mode 100644 Tests/RunCMake/continue/ContinueForeach.cmake create mode 100644 Tests/RunCMake/continue/ContinueNestedForeach-stdout.txt create mode 100644 Tests/RunCMake/continue/ContinueNestedForeach.cmake create mode 100644 Tests/RunCMake/continue/ContinueWhile-stdout.txt create mode 100644 Tests/RunCMake/continue/ContinueWhile.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => continue/NoArgumentsToContinue-result.txt} (100%) create mode 100644 Tests/RunCMake/continue/NoArgumentsToContinue-stderr.txt create mode 100644 Tests/RunCMake/continue/NoArgumentsToContinue.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => continue/NoEnclosingBlock-result.txt} (100%) create mode 100644 Tests/RunCMake/continue/NoEnclosingBlock-stderr.txt create mode 100644 Tests/RunCMake/continue/NoEnclosingBlock.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => continue/NoEnclosingBlockInFunction-result.txt} (100%) create mode 100644 Tests/RunCMake/continue/NoEnclosingBlockInFunction-stderr.txt create mode 100644 Tests/RunCMake/continue/NoEnclosingBlockInFunction.cmake create mode 100644 Tests/RunCMake/continue/RunCMakeTest.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-file-create-fail-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-file-create-fail-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-file-create-fail.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-guard-incorrect-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-guard-incorrect-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-guard-incorrect.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-incorrect-timeout-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-incorrect-timeout-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-incorrect-timeout-trail-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-incorrect-timeout-trail-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-incorrect-timeout-trail.cmake create mode 100644 Tests/RunCMake/file/LOCK-error-incorrect-timeout.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-lock-fail-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-lock-fail-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-lock-fail.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-negative-timeout-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-negative-timeout-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-negative-timeout.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-no-function-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-no-function-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-no-function.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-no-guard-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-no-guard-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-no-guard.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-no-path-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-no-path-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-no-path.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-no-result-variable-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-no-result-variable-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-no-result-variable.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-no-timeout-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-no-timeout-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-no-timeout.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-timeout-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-timeout-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-timeout-stdout.txt create mode 100644 Tests/RunCMake/file/LOCK-error-timeout.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => file/LOCK-error-unknown-option-result.txt} (100%) create mode 100644 Tests/RunCMake/file/LOCK-error-unknown-option-stderr.txt create mode 100644 Tests/RunCMake/file/LOCK-error-unknown-option.cmake create mode 100644 Tests/RunCMake/file/LOCK-stdout.txt create mode 100644 Tests/RunCMake/file/LOCK.cmake create mode 100644 Tests/RunCMake/file/subdir_test_unlock/CMakeLists.txt create mode 100644 Tests/RunCMake/file/timeout-script.cmake create mode 100644 Tests/RunCMake/find_library/CMakeLists.txt create mode 100644 Tests/RunCMake/find_library/Created-stderr.txt create mode 100644 Tests/RunCMake/find_library/Created.cmake create mode 100644 Tests/RunCMake/find_library/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/return/CMakeLists.txt copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => return/ReturnFromForeach-result.txt} (100%) create mode 100644 Tests/RunCMake/return/ReturnFromForeach.cmake create mode 100644 Tests/RunCMake/return/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/string/RegexClear-stderr.txt create mode 100644 Tests/RunCMake/string/RegexClear.cmake create mode 100644 Tests/RunCMake/string/UTF-16BE-stderr.txt create mode 100644 Tests/RunCMake/string/UTF-16BE.cmake create mode 100644 Tests/RunCMake/string/UTF-16BE.txt create mode 100644 Tests/RunCMake/string/UTF-16LE-stderr.txt create mode 100644 Tests/RunCMake/string/UTF-16LE.cmake create mode 100644 Tests/RunCMake/string/UTF-16LE.txt create mode 100644 Tests/RunCMake/string/UTF-32BE-stderr.txt create mode 100644 Tests/RunCMake/string/UTF-32BE.cmake create mode 100644 Tests/RunCMake/string/UTF-32BE.txt create mode 100644 Tests/RunCMake/string/UTF-32LE-stderr.txt create mode 100644 Tests/RunCMake/string/UTF-32LE.cmake create mode 100644 Tests/RunCMake/string/UTF-32LE.txt create mode 100644 Tests/RunCMake/string/cmake/Finddummy.cmake create mode 100644 Tests/RunCMake/string/subdir/CMakeLists.txt create mode 100644 Tests/RunCMake/try_compile/CMP0056-stderr.txt create mode 100644 Tests/RunCMake/try_compile/CMP0056-stdout.txt create mode 100644 Tests/RunCMake/try_compile/CMP0056.cmake create mode 100644 Tests/RunCMake/try_compile/RerunCMake-nowork-ninja-no-console-stdout.txt create mode 100644 Tests/RunCMake/try_compile/RerunCMake-rerun-ninja-no-console-stdout.txt create mode 100644 Tests/RunCMake/try_compile/RerunCMake-rerun-stderr.txt create mode 100644 Tests/RunCMake/try_compile/RerunCMake-rerun-stdout.txt create mode 100644 Tests/RunCMake/try_compile/RerunCMake-stderr.txt create mode 100644 Tests/RunCMake/try_compile/RerunCMake-stdout.txt create mode 100644 Tests/RunCMake/try_compile/RerunCMake.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => try_run/BadLinkLibraries-result.txt} (100%) create mode 100644 Tests/RunCMake/try_run/BadLinkLibraries-stderr.txt create mode 100644 Tests/RunCMake/try_run/BadLinkLibraries.cmake create mode 100644 Tests/RunCMake/try_run/CMakeLists.txt create mode 100644 Tests/RunCMake/try_run/RunCMakeTest.cmake copy Tests/RunCMake/{try_compile => try_run}/src.c (100%) create mode 100644 Tests/SourceFileProperty/CMakeLists.txt create mode 100644 Tests/SourceFileProperty/ICaseTest.c create mode 100644 Tests/SourceFileProperty/main.c create mode 100644 Utilities/Release/linux64_release.cmake create mode 100644 Utilities/cm_jsoncpp_reader.h create mode 100644 Utilities/cm_jsoncpp_value.h create mode 100644 Utilities/cm_jsoncpp_writer.h copy Utilities/{cmlibarchive => cmcurl}/.gitattributes (100%) create mode 100644 Utilities/cmcurl/CMake/FindCARES.cmake create mode 100644 Utilities/cmcurl/CMake/FindLibSSH2.cmake create mode 100644 Utilities/cmcurl/CMake/Macros.cmake create mode 100644 Utilities/cmcurl/CMake/Platforms/WindowsCache.cmake create mode 100644 Utilities/cmcurl/CMake/Utilities.cmake delete mode 100644 Utilities/cmcurl/Platforms/WindowsCache.cmake delete mode 100644 Utilities/cmcurl/Platforms/config-aix.h create mode 100644 Utilities/cmcurl/README-CMake.txt delete mode 100644 Utilities/cmcurl/Testing/CMakeLists.txt delete mode 100644 Utilities/cmcurl/Testing/curlgtk.c delete mode 100644 Utilities/cmcurl/Testing/ftpget.c delete mode 100644 Utilities/cmcurl/Testing/ftpgetresp.c delete mode 100644 Utilities/cmcurl/Testing/ftpupload.c delete mode 100644 Utilities/cmcurl/Testing/getinmemory.c delete mode 100644 Utilities/cmcurl/Testing/http-post.c delete mode 100644 Utilities/cmcurl/Testing/httpput.c delete mode 100644 Utilities/cmcurl/Testing/multithread.c delete mode 100644 Utilities/cmcurl/Testing/persistant.c delete mode 100644 Utilities/cmcurl/Testing/postit2.c delete mode 100644 Utilities/cmcurl/Testing/sepheaders.c delete mode 100644 Utilities/cmcurl/Testing/simple.c delete mode 100644 Utilities/cmcurl/Testing/simplessl.c delete mode 100644 Utilities/cmcurl/Testing/testconfig.h.in delete mode 100644 Utilities/cmcurl/Testing/win32sockets.c delete mode 100644 Utilities/cmcurl/amigaos.c delete mode 100644 Utilities/cmcurl/amigaos.h delete mode 100644 Utilities/cmcurl/arpa_telnet.h delete mode 100644 Utilities/cmcurl/base64.c delete mode 100644 Utilities/cmcurl/base64.h delete mode 100644 Utilities/cmcurl/ca-bundle.h delete mode 100644 Utilities/cmcurl/config.h.in delete mode 100644 Utilities/cmcurl/connect.c delete mode 100644 Utilities/cmcurl/connect.h delete mode 100644 Utilities/cmcurl/content_encoding.c delete mode 100644 Utilities/cmcurl/content_encoding.h delete mode 100644 Utilities/cmcurl/cookie.c delete mode 100644 Utilities/cmcurl/cookie.h delete mode 100644 Utilities/cmcurl/curl/curl.h delete mode 100644 Utilities/cmcurl/curl/curlver.h delete mode 100644 Utilities/cmcurl/curl/easy.h delete mode 100644 Utilities/cmcurl/curl/mprintf.h delete mode 100644 Utilities/cmcurl/curl/multi.h delete mode 100644 Utilities/cmcurl/curl/stdcheaders.h delete mode 100644 Utilities/cmcurl/curl/types.h rename Utilities/cmcurl/{Testing => }/curltest.c (100%) delete mode 100644 Utilities/cmcurl/curlx.h delete mode 100644 Utilities/cmcurl/dict.c delete mode 100644 Utilities/cmcurl/dict.h delete mode 100644 Utilities/cmcurl/easy.c delete mode 100644 Utilities/cmcurl/easyif.h delete mode 100644 Utilities/cmcurl/escape.c delete mode 100644 Utilities/cmcurl/escape.h delete mode 100644 Utilities/cmcurl/file.c delete mode 100644 Utilities/cmcurl/file.h delete mode 100644 Utilities/cmcurl/formdata.c delete mode 100644 Utilities/cmcurl/formdata.h delete mode 100644 Utilities/cmcurl/ftp.c delete mode 100644 Utilities/cmcurl/ftp.h delete mode 100644 Utilities/cmcurl/getenv.c delete mode 100644 Utilities/cmcurl/getinfo.c delete mode 100644 Utilities/cmcurl/getinfo.h delete mode 100644 Utilities/cmcurl/gtls.c delete mode 100644 Utilities/cmcurl/gtls.h delete mode 100644 Utilities/cmcurl/hash.c delete mode 100644 Utilities/cmcurl/hash.h delete mode 100644 Utilities/cmcurl/hostares.c delete mode 100644 Utilities/cmcurl/hostasyn.c delete mode 100644 Utilities/cmcurl/hostip.c delete mode 100644 Utilities/cmcurl/hostip.h delete mode 100644 Utilities/cmcurl/hostip4.c delete mode 100644 Utilities/cmcurl/hostip6.c delete mode 100644 Utilities/cmcurl/hostsyn.c delete mode 100644 Utilities/cmcurl/hostthre.c delete mode 100644 Utilities/cmcurl/http.c delete mode 100644 Utilities/cmcurl/http.h delete mode 100644 Utilities/cmcurl/http_chunks.c delete mode 100644 Utilities/cmcurl/http_chunks.h delete mode 100644 Utilities/cmcurl/http_digest.c delete mode 100644 Utilities/cmcurl/http_digest.h delete mode 100644 Utilities/cmcurl/http_negotiate.c delete mode 100644 Utilities/cmcurl/http_negotiate.h delete mode 100644 Utilities/cmcurl/http_ntlm.c delete mode 100644 Utilities/cmcurl/http_ntlm.h delete mode 100644 Utilities/cmcurl/if2ip.c delete mode 100644 Utilities/cmcurl/if2ip.h create mode 100644 Utilities/cmcurl/include/curl/curl.h create mode 100644 Utilities/cmcurl/include/curl/curlbuild.h.cmake create mode 100644 Utilities/cmcurl/include/curl/curlrules.h create mode 100644 Utilities/cmcurl/include/curl/curlver.h create mode 100644 Utilities/cmcurl/include/curl/easy.h create mode 100644 Utilities/cmcurl/include/curl/mprintf.h create mode 100644 Utilities/cmcurl/include/curl/multi.h create mode 100644 Utilities/cmcurl/include/curl/stdcheaders.h create mode 100644 Utilities/cmcurl/include/curl/typecheck-gcc.h delete mode 100644 Utilities/cmcurl/inet_ntoa_r.h delete mode 100644 Utilities/cmcurl/inet_ntop.c delete mode 100644 Utilities/cmcurl/inet_ntop.h delete mode 100644 Utilities/cmcurl/inet_pton.c delete mode 100644 Utilities/cmcurl/inet_pton.h delete mode 100644 Utilities/cmcurl/krb4.c delete mode 100644 Utilities/cmcurl/krb4.h delete mode 100644 Utilities/cmcurl/ldap.c delete mode 100644 Utilities/cmcurl/ldap.h create mode 100644 Utilities/cmcurl/lib/CMakeLists.txt create mode 100644 Utilities/cmcurl/lib/Makefile.inc create mode 100644 Utilities/cmcurl/lib/amigaos.c create mode 100644 Utilities/cmcurl/lib/amigaos.h create mode 100644 Utilities/cmcurl/lib/arpa_telnet.h create mode 100644 Utilities/cmcurl/lib/asyn-ares.c create mode 100644 Utilities/cmcurl/lib/asyn-thread.c create mode 100644 Utilities/cmcurl/lib/asyn.h create mode 100644 Utilities/cmcurl/lib/base64.c create mode 100644 Utilities/cmcurl/lib/bundles.c create mode 100644 Utilities/cmcurl/lib/bundles.h create mode 100644 Utilities/cmcurl/lib/conncache.c create mode 100644 Utilities/cmcurl/lib/conncache.h create mode 100644 Utilities/cmcurl/lib/connect.c create mode 100644 Utilities/cmcurl/lib/connect.h create mode 100644 Utilities/cmcurl/lib/content_encoding.c create mode 100644 Utilities/cmcurl/lib/content_encoding.h create mode 100644 Utilities/cmcurl/lib/cookie.c create mode 100644 Utilities/cmcurl/lib/cookie.h create mode 100644 Utilities/cmcurl/lib/curl_addrinfo.c create mode 100644 Utilities/cmcurl/lib/curl_addrinfo.h create mode 100644 Utilities/cmcurl/lib/curl_base64.h create mode 100644 Utilities/cmcurl/lib/curl_config.h.cmake create mode 100644 Utilities/cmcurl/lib/curl_fnmatch.c create mode 100644 Utilities/cmcurl/lib/curl_fnmatch.h create mode 100644 Utilities/cmcurl/lib/curl_gethostname.c create mode 100644 Utilities/cmcurl/lib/curl_gethostname.h create mode 100644 Utilities/cmcurl/lib/curl_gssapi.c create mode 100644 Utilities/cmcurl/lib/curl_gssapi.h create mode 100644 Utilities/cmcurl/lib/curl_hmac.h create mode 100644 Utilities/cmcurl/lib/curl_ldap.h create mode 100644 Utilities/cmcurl/lib/curl_md4.h create mode 100644 Utilities/cmcurl/lib/curl_md5.h create mode 100644 Utilities/cmcurl/lib/curl_memory.h create mode 100644 Utilities/cmcurl/lib/curl_memrchr.c create mode 100644 Utilities/cmcurl/lib/curl_memrchr.h create mode 100644 Utilities/cmcurl/lib/curl_multibyte.c create mode 100644 Utilities/cmcurl/lib/curl_multibyte.h create mode 100644 Utilities/cmcurl/lib/curl_ntlm.c create mode 100644 Utilities/cmcurl/lib/curl_ntlm.h create mode 100644 Utilities/cmcurl/lib/curl_ntlm_core.c create mode 100644 Utilities/cmcurl/lib/curl_ntlm_core.h create mode 100644 Utilities/cmcurl/lib/curl_ntlm_msgs.c create mode 100644 Utilities/cmcurl/lib/curl_ntlm_msgs.h create mode 100644 Utilities/cmcurl/lib/curl_ntlm_wb.c create mode 100644 Utilities/cmcurl/lib/curl_ntlm_wb.h create mode 100644 Utilities/cmcurl/lib/curl_rtmp.c create mode 100644 Utilities/cmcurl/lib/curl_rtmp.h create mode 100644 Utilities/cmcurl/lib/curl_sasl.c create mode 100644 Utilities/cmcurl/lib/curl_sasl.h create mode 100644 Utilities/cmcurl/lib/curl_sasl_sspi.c create mode 100644 Utilities/cmcurl/lib/curl_sec.h create mode 100644 Utilities/cmcurl/lib/curl_setup.h create mode 100644 Utilities/cmcurl/lib/curl_setup_once.h create mode 100644 Utilities/cmcurl/lib/curl_sspi.c create mode 100644 Utilities/cmcurl/lib/curl_sspi.h create mode 100644 Utilities/cmcurl/lib/curl_threads.c create mode 100644 Utilities/cmcurl/lib/curl_threads.h create mode 100644 Utilities/cmcurl/lib/curlx.h create mode 100644 Utilities/cmcurl/lib/dict.c create mode 100644 Utilities/cmcurl/lib/dict.h create mode 100644 Utilities/cmcurl/lib/dotdot.c create mode 100644 Utilities/cmcurl/lib/dotdot.h create mode 100644 Utilities/cmcurl/lib/easy.c create mode 100644 Utilities/cmcurl/lib/easyif.h create mode 100644 Utilities/cmcurl/lib/escape.c create mode 100644 Utilities/cmcurl/lib/escape.h create mode 100644 Utilities/cmcurl/lib/file.c create mode 100644 Utilities/cmcurl/lib/file.h create mode 100644 Utilities/cmcurl/lib/fileinfo.c create mode 100644 Utilities/cmcurl/lib/fileinfo.h create mode 100644 Utilities/cmcurl/lib/formdata.c create mode 100644 Utilities/cmcurl/lib/formdata.h create mode 100644 Utilities/cmcurl/lib/ftp.c create mode 100644 Utilities/cmcurl/lib/ftp.h create mode 100644 Utilities/cmcurl/lib/ftplistparser.c create mode 100644 Utilities/cmcurl/lib/ftplistparser.h create mode 100644 Utilities/cmcurl/lib/getenv.c create mode 100644 Utilities/cmcurl/lib/getinfo.c create mode 100644 Utilities/cmcurl/lib/getinfo.h create mode 100644 Utilities/cmcurl/lib/gopher.c create mode 100644 Utilities/cmcurl/lib/gopher.h create mode 100644 Utilities/cmcurl/lib/hash.c create mode 100644 Utilities/cmcurl/lib/hash.h create mode 100644 Utilities/cmcurl/lib/hmac.c create mode 100644 Utilities/cmcurl/lib/hostasyn.c create mode 100644 Utilities/cmcurl/lib/hostcheck.c create mode 100644 Utilities/cmcurl/lib/hostcheck.h create mode 100644 Utilities/cmcurl/lib/hostip.c create mode 100644 Utilities/cmcurl/lib/hostip.h create mode 100644 Utilities/cmcurl/lib/hostip4.c create mode 100644 Utilities/cmcurl/lib/hostip6.c create mode 100644 Utilities/cmcurl/lib/hostsyn.c create mode 100644 Utilities/cmcurl/lib/http.c create mode 100644 Utilities/cmcurl/lib/http.h create mode 100644 Utilities/cmcurl/lib/http2.c create mode 100644 Utilities/cmcurl/lib/http2.h create mode 100644 Utilities/cmcurl/lib/http_chunks.c create mode 100644 Utilities/cmcurl/lib/http_chunks.h create mode 100644 Utilities/cmcurl/lib/http_digest.c create mode 100644 Utilities/cmcurl/lib/http_digest.h create mode 100644 Utilities/cmcurl/lib/http_negotiate.c create mode 100644 Utilities/cmcurl/lib/http_negotiate.h create mode 100644 Utilities/cmcurl/lib/http_negotiate_sspi.c create mode 100644 Utilities/cmcurl/lib/http_proxy.c create mode 100644 Utilities/cmcurl/lib/http_proxy.h create mode 100644 Utilities/cmcurl/lib/idn_win32.c create mode 100644 Utilities/cmcurl/lib/if2ip.c create mode 100644 Utilities/cmcurl/lib/if2ip.h create mode 100644 Utilities/cmcurl/lib/imap.c create mode 100644 Utilities/cmcurl/lib/imap.h create mode 100644 Utilities/cmcurl/lib/inet_ntop.c create mode 100644 Utilities/cmcurl/lib/inet_ntop.h create mode 100644 Utilities/cmcurl/lib/inet_pton.c create mode 100644 Utilities/cmcurl/lib/inet_pton.h create mode 100644 Utilities/cmcurl/lib/krb5.c create mode 100644 Utilities/cmcurl/lib/ldap.c create mode 100644 Utilities/cmcurl/lib/libcurl.rc create mode 100644 Utilities/cmcurl/lib/llist.c create mode 100644 Utilities/cmcurl/lib/llist.h create mode 100644 Utilities/cmcurl/lib/md4.c create mode 100644 Utilities/cmcurl/lib/md5.c create mode 100644 Utilities/cmcurl/lib/memdebug.c create mode 100644 Utilities/cmcurl/lib/memdebug.h create mode 100644 Utilities/cmcurl/lib/mprintf.c create mode 100644 Utilities/cmcurl/lib/multi.c create mode 100644 Utilities/cmcurl/lib/multihandle.h create mode 100644 Utilities/cmcurl/lib/multiif.h create mode 100644 Utilities/cmcurl/lib/netrc.c create mode 100644 Utilities/cmcurl/lib/netrc.h create mode 100644 Utilities/cmcurl/lib/non-ascii.c create mode 100644 Utilities/cmcurl/lib/non-ascii.h create mode 100644 Utilities/cmcurl/lib/nonblock.c create mode 100644 Utilities/cmcurl/lib/nonblock.h create mode 100644 Utilities/cmcurl/lib/nwlib.c create mode 100644 Utilities/cmcurl/lib/nwos.c create mode 100644 Utilities/cmcurl/lib/openldap.c create mode 100644 Utilities/cmcurl/lib/parsedate.c create mode 100644 Utilities/cmcurl/lib/parsedate.h create mode 100644 Utilities/cmcurl/lib/pingpong.c create mode 100644 Utilities/cmcurl/lib/pingpong.h create mode 100644 Utilities/cmcurl/lib/pipeline.c create mode 100644 Utilities/cmcurl/lib/pipeline.h create mode 100644 Utilities/cmcurl/lib/pop3.c create mode 100644 Utilities/cmcurl/lib/pop3.h create mode 100644 Utilities/cmcurl/lib/progress.c create mode 100644 Utilities/cmcurl/lib/progress.h create mode 100644 Utilities/cmcurl/lib/rawstr.c create mode 100644 Utilities/cmcurl/lib/rawstr.h create mode 100644 Utilities/cmcurl/lib/rtsp.c create mode 100644 Utilities/cmcurl/lib/rtsp.h create mode 100644 Utilities/cmcurl/lib/security.c create mode 100644 Utilities/cmcurl/lib/select.c create mode 100644 Utilities/cmcurl/lib/select.h create mode 100644 Utilities/cmcurl/lib/sendf.c create mode 100644 Utilities/cmcurl/lib/sendf.h create mode 100644 Utilities/cmcurl/lib/setup-os400.h create mode 100644 Utilities/cmcurl/lib/setup-vms.h create mode 100644 Utilities/cmcurl/lib/share.c create mode 100644 Utilities/cmcurl/lib/share.h create mode 100644 Utilities/cmcurl/lib/sigpipe.h create mode 100644 Utilities/cmcurl/lib/slist.c create mode 100644 Utilities/cmcurl/lib/slist.h create mode 100644 Utilities/cmcurl/lib/smtp.c create mode 100644 Utilities/cmcurl/lib/smtp.h create mode 100644 Utilities/cmcurl/lib/sockaddr.h create mode 100644 Utilities/cmcurl/lib/socks.c create mode 100644 Utilities/cmcurl/lib/socks.h create mode 100644 Utilities/cmcurl/lib/socks_gssapi.c create mode 100644 Utilities/cmcurl/lib/socks_sspi.c create mode 100644 Utilities/cmcurl/lib/speedcheck.c create mode 100644 Utilities/cmcurl/lib/speedcheck.h create mode 100644 Utilities/cmcurl/lib/splay.c create mode 100644 Utilities/cmcurl/lib/splay.h create mode 100644 Utilities/cmcurl/lib/ssh.c create mode 100644 Utilities/cmcurl/lib/ssh.h create mode 100644 Utilities/cmcurl/lib/strdup.c create mode 100644 Utilities/cmcurl/lib/strdup.h create mode 100644 Utilities/cmcurl/lib/strequal.c create mode 100644 Utilities/cmcurl/lib/strequal.h create mode 100644 Utilities/cmcurl/lib/strerror.c create mode 100644 Utilities/cmcurl/lib/strerror.h create mode 100644 Utilities/cmcurl/lib/strtok.c create mode 100644 Utilities/cmcurl/lib/strtok.h create mode 100644 Utilities/cmcurl/lib/strtoofft.c create mode 100644 Utilities/cmcurl/lib/strtoofft.h create mode 100644 Utilities/cmcurl/lib/telnet.c create mode 100644 Utilities/cmcurl/lib/telnet.h create mode 100644 Utilities/cmcurl/lib/tftp.c create mode 100644 Utilities/cmcurl/lib/tftp.h create mode 100644 Utilities/cmcurl/lib/timeval.c create mode 100644 Utilities/cmcurl/lib/timeval.h create mode 100644 Utilities/cmcurl/lib/transfer.c create mode 100644 Utilities/cmcurl/lib/transfer.h create mode 100644 Utilities/cmcurl/lib/url.c create mode 100644 Utilities/cmcurl/lib/url.h create mode 100644 Utilities/cmcurl/lib/urldata.h create mode 100644 Utilities/cmcurl/lib/version.c create mode 100644 Utilities/cmcurl/lib/vtls/axtls.c create mode 100644 Utilities/cmcurl/lib/vtls/axtls.h create mode 100644 Utilities/cmcurl/lib/vtls/curl_darwinssl.c create mode 100644 Utilities/cmcurl/lib/vtls/curl_darwinssl.h create mode 100644 Utilities/cmcurl/lib/vtls/curl_schannel.c create mode 100644 Utilities/cmcurl/lib/vtls/curl_schannel.h create mode 100644 Utilities/cmcurl/lib/vtls/cyassl.c create mode 100644 Utilities/cmcurl/lib/vtls/cyassl.h create mode 100644 Utilities/cmcurl/lib/vtls/gskit.c create mode 100644 Utilities/cmcurl/lib/vtls/gskit.h create mode 100644 Utilities/cmcurl/lib/vtls/gtls.c create mode 100644 Utilities/cmcurl/lib/vtls/gtls.h create mode 100644 Utilities/cmcurl/lib/vtls/nss.c create mode 100644 Utilities/cmcurl/lib/vtls/nssg.h create mode 100644 Utilities/cmcurl/lib/vtls/openssl.c create mode 100644 Utilities/cmcurl/lib/vtls/openssl.h create mode 100644 Utilities/cmcurl/lib/vtls/polarssl.c create mode 100644 Utilities/cmcurl/lib/vtls/polarssl.h create mode 100644 Utilities/cmcurl/lib/vtls/polarssl_threadlock.c create mode 100644 Utilities/cmcurl/lib/vtls/polarssl_threadlock.h create mode 100644 Utilities/cmcurl/lib/vtls/qssl.c create mode 100644 Utilities/cmcurl/lib/vtls/qssl.h create mode 100644 Utilities/cmcurl/lib/vtls/vtls.c create mode 100644 Utilities/cmcurl/lib/vtls/vtls.h create mode 100644 Utilities/cmcurl/lib/warnless.c create mode 100644 Utilities/cmcurl/lib/warnless.h create mode 100644 Utilities/cmcurl/lib/wildcard.c create mode 100644 Utilities/cmcurl/lib/wildcard.h create mode 100644 Utilities/cmcurl/lib/x509asn1.c create mode 100644 Utilities/cmcurl/lib/x509asn1.h delete mode 100644 Utilities/cmcurl/llist.c delete mode 100644 Utilities/cmcurl/llist.h delete mode 100644 Utilities/cmcurl/md5.c delete mode 100644 Utilities/cmcurl/md5.h delete mode 100644 Utilities/cmcurl/memdebug.c delete mode 100644 Utilities/cmcurl/memdebug.h delete mode 100644 Utilities/cmcurl/memory.h delete mode 100644 Utilities/cmcurl/mprintf.c delete mode 100644 Utilities/cmcurl/multi.c delete mode 100644 Utilities/cmcurl/multiif.h delete mode 100644 Utilities/cmcurl/netrc.c delete mode 100644 Utilities/cmcurl/netrc.h delete mode 100644 Utilities/cmcurl/nwlib.c delete mode 100644 Utilities/cmcurl/parsedate.c delete mode 100644 Utilities/cmcurl/parsedate.h delete mode 100644 Utilities/cmcurl/progress.c delete mode 100644 Utilities/cmcurl/progress.h delete mode 100644 Utilities/cmcurl/security.c delete mode 100644 Utilities/cmcurl/select.c delete mode 100644 Utilities/cmcurl/select.h delete mode 100644 Utilities/cmcurl/sendf.c delete mode 100644 Utilities/cmcurl/sendf.h delete mode 100644 Utilities/cmcurl/setup.h delete mode 100644 Utilities/cmcurl/setup_once.h delete mode 100644 Utilities/cmcurl/share.c delete mode 100644 Utilities/cmcurl/share.h delete mode 100644 Utilities/cmcurl/sockaddr.h delete mode 100644 Utilities/cmcurl/socks.c delete mode 100644 Utilities/cmcurl/socks.h delete mode 100644 Utilities/cmcurl/speedcheck.c delete mode 100644 Utilities/cmcurl/speedcheck.h delete mode 100644 Utilities/cmcurl/splay.c delete mode 100644 Utilities/cmcurl/splay.h delete mode 100644 Utilities/cmcurl/ssh.c delete mode 100644 Utilities/cmcurl/ssh.h delete mode 100644 Utilities/cmcurl/sslgen.c delete mode 100644 Utilities/cmcurl/sslgen.h delete mode 100644 Utilities/cmcurl/ssluse.c delete mode 100644 Utilities/cmcurl/ssluse.h delete mode 100644 Utilities/cmcurl/strdup.c delete mode 100644 Utilities/cmcurl/strdup.h delete mode 100644 Utilities/cmcurl/strequal.c delete mode 100644 Utilities/cmcurl/strequal.h delete mode 100644 Utilities/cmcurl/strerror.c delete mode 100644 Utilities/cmcurl/strerror.h delete mode 100644 Utilities/cmcurl/strtok.c delete mode 100644 Utilities/cmcurl/strtok.h delete mode 100644 Utilities/cmcurl/strtoofft.c delete mode 100644 Utilities/cmcurl/strtoofft.h delete mode 100644 Utilities/cmcurl/telnet.c delete mode 100644 Utilities/cmcurl/telnet.h delete mode 100644 Utilities/cmcurl/tftp.c delete mode 100644 Utilities/cmcurl/tftp.h delete mode 100644 Utilities/cmcurl/timeval.c delete mode 100644 Utilities/cmcurl/timeval.h delete mode 100644 Utilities/cmcurl/transfer.c delete mode 100644 Utilities/cmcurl/transfer.h delete mode 100644 Utilities/cmcurl/url.c delete mode 100644 Utilities/cmcurl/url.h delete mode 100644 Utilities/cmcurl/urldata.h delete mode 100644 Utilities/cmcurl/version.c copy Utilities/{cmlibarchive => cmjsoncpp}/.gitattributes (100%) create mode 100644 Utilities/cmjsoncpp/CMakeLists.txt create mode 100644 Utilities/cmjsoncpp/LICENSE create mode 100644 Utilities/cmjsoncpp/README-CMake.txt create mode 100644 Utilities/cmjsoncpp/include/json/assertions.h create mode 100644 Utilities/cmjsoncpp/include/json/config.h create mode 100644 Utilities/cmjsoncpp/include/json/features.h create mode 100644 Utilities/cmjsoncpp/include/json/forwards.h create mode 100644 Utilities/cmjsoncpp/include/json/json.h create mode 100644 Utilities/cmjsoncpp/include/json/reader.h create mode 100644 Utilities/cmjsoncpp/include/json/value.h create mode 100644 Utilities/cmjsoncpp/include/json/version.h create mode 100644 Utilities/cmjsoncpp/include/json/writer.h create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_batchallocator.h create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_internalarray.inl create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_internalmap.inl create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_reader.cpp create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_tool.h create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_value.cpp create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_valueiterator.inl create mode 100644 Utilities/cmjsoncpp/src/lib_json/json_writer.cpp hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 10:54:24 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 10:54:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1021-gd045ee3 Message-ID: <20150205155424.4DF09AA941@public.kitware.com> 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 d045ee3b5288d8bb5596141bf20a1fb0d4e2a14c (commit) via 892b854f57f48381751b79bfc52048ea57bb0376 (commit) from 15d314cef30f00cf4ef57f625e778a26a0dd6bfb (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=d045ee3b5288d8bb5596141bf20a1fb0d4e2a14c commit d045ee3b5288d8bb5596141bf20a1fb0d4e2a14c Merge: 15d314c 892b854 Author: Brad King AuthorDate: Thu Feb 5 10:54:23 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 10:54:23 2015 -0500 Merge topic 'FindBoost-per-config-libraries' into next 892b854f FindBoost: Search for debug and release libraries separately (#15364) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=892b854f57f48381751b79bfc52048ea57bb0376 commit 892b854f57f48381751b79bfc52048ea57bb0376 Author: Gunther Laure AuthorDate: Mon Jan 26 18:13:44 2015 +0100 Commit: Brad King CommitDate: Thu Feb 5 10:50:49 2015 -0500 FindBoost: Search for debug and release libraries separately (#15364) Split Boost_LIBRARY_DIR into Boost_LIBRARY_DIR_[RELEASE,DEBUG] to allow libraries to be grouped into per-config directories. diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake index 99293c1..466090b 100644 --- a/Modules/FindBoost.cmake +++ b/Modules/FindBoost.cmake @@ -49,7 +49,8 @@ # and saves search results persistently in CMake cache entries:: # # Boost_INCLUDE_DIR - Directory containing Boost headers -# Boost_LIBRARY_DIR - Directory containing Boost libraries +# Boost_LIBRARY_DIR_RELEASE - Directory containing release Boost libraries +# Boost_LIBRARY_DIR_DEBUG - Directory containing debug Boost libraries # Boost__LIBRARY_DEBUG - Component library debug variant # Boost__LIBRARY_RELEASE - Component library release variant # @@ -65,7 +66,8 @@ # using the above hints (excluding BOOST_INCLUDEDIR and # Boost_ADDITIONAL_VERSIONS), "lib" directories near Boost_INCLUDE_DIR, # and the library name configuration settings below. It saves the -# library directory in Boost_LIBRARY_DIR and individual library +# library directories in Boost_LIBRARY_DIR_DEBUG and +# Boost_LIBRARY_DIR_RELEASE and individual library # locations in Boost__LIBRARY_DEBUG and Boost__LIBRARY_RELEASE. # When one changes settings used by previous searches in the same build # tree (excluding environment variables) this module discards previous @@ -118,6 +120,8 @@ # "/usr/lib/libboost_system.so". This does not # affect linking and should not be enabled unless # the user needs this information. +# Boost_LIBRARY_DIR - Default value for Boost_LIBRARY_DIR_RELEASE and +# Boost_LIBRARY_DIR_DEBUG. # # On Visual Studio and Borland compilers Boost headers request automatic # linking to corresponding libraries. This requires matching libraries @@ -283,6 +287,14 @@ macro(_Boost_ADJUST_LIB_VARS basename) ) endmacro() +# Detect changes in used variables. +# Compares the current variable value with the last one. +# In short form: +# v != v_LAST -> CHANGED = 1 +# v is defined, v_LAST not -> CHANGED = 1 +# v is not defined, but v_LAST is -> CHANGED = 1 +# otherwise -> CHANGED = 0 +# CHANGED is returned in variable named ${changed_var} macro(_Boost_CHANGE_DETECT changed_var) set(${changed_var} 0) foreach(v ${ARGN}) @@ -305,23 +317,33 @@ macro(_Boost_CHANGE_DETECT changed_var) endforeach() endmacro() -macro(_Boost_FIND_LIBRARY var) +# +# Find the given library (var). +# Use 'build_type' to support different lib paths for RELEASE or DEBUG builds +# +macro(_Boost_FIND_LIBRARY var build_type) + find_library(${var} ${ARGN}) if(${var}) - # If this is the first library found then save Boost_LIBRARY_DIR. - if(NOT Boost_LIBRARY_DIR) + # If this is the first library found then save Boost_LIBRARY_DIR_[RELEASE,DEBUG]. + if(NOT Boost_LIBRARY_DIR_${build_type}) get_filename_component(_dir "${${var}}" PATH) - set(Boost_LIBRARY_DIR "${_dir}" CACHE PATH "Boost library directory" FORCE) + set(Boost_LIBRARY_DIR_${build_type} "${_dir}" CACHE PATH "Boost library directory ${build_type}" FORCE) endif() elseif(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT) - # Try component-specific hints but do not save Boost_LIBRARY_DIR. + # Try component-specific hints but do not save Boost_LIBRARY_DIR_[RELEASE,DEBUG]. find_library(${var} HINTS ${_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT} ${ARGN}) endif() - # If Boost_LIBRARY_DIR is known then search only there. - if(Boost_LIBRARY_DIR) - set(_boost_LIBRARY_SEARCH_DIRS ${Boost_LIBRARY_DIR} NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) + # If Boost_LIBRARY_DIR_[RELEASE,DEBUG] is known then search only there. + if(Boost_LIBRARY_DIR_${build_type}) + set(_boost_LIBRARY_SEARCH_DIRS_${build_type} ${Boost_LIBRARY_DIR_${build_type}} NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) + if(Boost_DEBUG) + message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " + " Boost_LIBRARY_DIR_${build_type} = ${Boost_LIBRARY_DIR_${build_type}}" + " _boost_LIBRARY_SEARCH_DIRS_${build_type} = ${_boost_LIBRARY_SEARCH_DIRS_${build_type}}") + endif() endif() endmacro() @@ -456,6 +478,16 @@ endfunction() # main. #------------------------------------------------------------------------------- + +# If the user sets Boost_LIBRARY_DIR, use it as the default for both +# configurations. +if(NOT Boost_LIBRARY_DIR_RELEASE AND Boost_LIBRARY_DIR) + set(Boost_LIBRARY_DIR_RELEASE "${Boost_LIBRARY_DIR}") +endif() +if(NOT Boost_LIBRARY_DIR_DEBUG AND Boost_LIBRARY_DIR) + set(Boost_LIBRARY_DIR_DEBUG "${Boost_LIBRARY_DIR}") +endif() + if(NOT DEFINED Boost_USE_MULTITHREADED) set(Boost_USE_MULTITHREADED TRUE) endif() @@ -846,49 +878,54 @@ endif() # ------------------------------------------------------------------------ # Begin finding boost libraries # ------------------------------------------------------------------------ -set(_Boost_VARS_LIB BOOST_LIBRARYDIR Boost_LIBRARY_DIR) -_Boost_CHANGE_DETECT(_Boost_CHANGE_LIBDIR ${_Boost_VARS_DIR} ${_Boost_VARS_LIB} Boost_INCLUDE_DIR) -# Clear Boost_LIBRARY_DIR if it did not change but other input affecting the -# location did. We will find a new one based on the new inputs. -if(_Boost_CHANGE_LIBDIR AND NOT _Boost_LIBRARY_DIR_CHANGED) - unset(Boost_LIBRARY_DIR CACHE) -endif() -if(Boost_LIBRARY_DIR) - set(_boost_LIBRARY_SEARCH_DIRS ${Boost_LIBRARY_DIR} NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) -else() - set(_boost_LIBRARY_SEARCH_DIRS "") - if(BOOST_LIBRARYDIR) - list(APPEND _boost_LIBRARY_SEARCH_DIRS ${BOOST_LIBRARYDIR}) - elseif(_ENV_BOOST_LIBRARYDIR) - list(APPEND _boost_LIBRARY_SEARCH_DIRS ${_ENV_BOOST_LIBRARYDIR}) - endif() - - if(BOOST_ROOT) - list(APPEND _boost_LIBRARY_SEARCH_DIRS ${BOOST_ROOT}/lib ${BOOST_ROOT}/stage/lib) - elseif(_ENV_BOOST_ROOT) - list(APPEND _boost_LIBRARY_SEARCH_DIRS ${_ENV_BOOST_ROOT}/lib ${_ENV_BOOST_ROOT}/stage/lib) +foreach(c DEBUG RELEASE) + set(_Boost_VARS_LIB_${c} BOOST_LIBRARYDIR Boost_LIBRARY_DIR_${c}) + _Boost_CHANGE_DETECT(_Boost_CHANGE_LIBDIR_${c} ${_Boost_VARS_DIR} ${_Boost_VARS_LIB_${c}} Boost_INCLUDE_DIR) + # Clear Boost_LIBRARY_DIR_${c} if it did not change but other input affecting the + # location did. We will find a new one based on the new inputs. + if(_Boost_CHANGE_LIBDIR_${c} AND NOT _Boost_LIBRARY_DIR_${c}_CHANGED) + unset(Boost_LIBRARY_DIR_${c} CACHE) endif() - list(APPEND _boost_LIBRARY_SEARCH_DIRS - ${Boost_INCLUDE_DIR}/lib - ${Boost_INCLUDE_DIR}/../lib - ${Boost_INCLUDE_DIR}/stage/lib - ) - if( Boost_NO_SYSTEM_PATHS ) - list(APPEND _boost_LIBRARY_SEARCH_DIRS NO_CMAKE_SYSTEM_PATH) + # If Boost_LIBRARY_DIR_[RELEASE,DEBUG] is set, prefer its value. + if(Boost_LIBRARY_DIR_${c}) + set(_boost_LIBRARY_SEARCH_DIRS_${c} ${Boost_LIBRARY_DIR_${c}} NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) else() - list(APPEND _boost_LIBRARY_SEARCH_DIRS PATHS - C:/boost/lib - C:/boost - /sw/local/lib + set(_boost_LIBRARY_SEARCH_DIRS_${c} "") + if(BOOST_LIBRARYDIR) + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} ${BOOST_LIBRARYDIR}) + elseif(_ENV_BOOST_LIBRARYDIR) + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} ${_ENV_BOOST_LIBRARYDIR}) + endif() + + if(BOOST_ROOT) + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} ${BOOST_ROOT}/lib ${BOOST_ROOT}/stage/lib) + elseif(_ENV_BOOST_ROOT) + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} ${_ENV_BOOST_ROOT}/lib ${_ENV_BOOST_ROOT}/stage/lib) + endif() + + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} + ${Boost_INCLUDE_DIR}/lib + ${Boost_INCLUDE_DIR}/../lib + ${Boost_INCLUDE_DIR}/stage/lib ) + if( Boost_NO_SYSTEM_PATHS ) + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} NO_CMAKE_SYSTEM_PATH) + else() + list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} PATHS + C:/boost/lib + C:/boost + /sw/local/lib + ) + endif() endif() -endif() +endforeach() if(Boost_DEBUG) message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " - "_boost_LIBRARY_SEARCH_DIRS = ${_boost_LIBRARY_SEARCH_DIRS}") + "_boost_LIBRARY_SEARCH_DIRS_RELEASE = ${_boost_LIBRARY_SEARCH_DIRS_RELEASE}" + "_boost_LIBRARY_SEARCH_DIRS_DEBUG = ${_boost_LIBRARY_SEARCH_DIRS_DEBUG}") endif() # Support preference of static libs by adjusting CMAKE_FIND_LIBRARY_SUFFIXES @@ -1002,10 +1039,16 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS}) "Searching for ${UPPERCOMPONENT}_LIBRARY_RELEASE: ${_boost_RELEASE_NAMES}") endif() + # if Boost_LIBRARY_DIR_RELEASE is not defined, + # but Boost_LIBRARY_DIR_DEBUG is, look there first for RELEASE libs + if(NOT Boost_LIBRARY_DIR_RELEASE AND Boost_LIBRARY_DIR_DEBUG) + list(INSERT _boost_LIBRARY_SEARCH_DIRS_RELEASE 0 ${Boost_LIBRARY_DIR_DEBUG}) + endif() + # Avoid passing backslashes to _Boost_FIND_LIBRARY due to macro re-parsing. - string(REPLACE "\\" "/" _boost_LIBRARY_SEARCH_DIRS_tmp "${_boost_LIBRARY_SEARCH_DIRS}") + string(REPLACE "\\" "/" _boost_LIBRARY_SEARCH_DIRS_tmp "${_boost_LIBRARY_SEARCH_DIRS_RELEASE}") - _Boost_FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE + _Boost_FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE RELEASE NAMES ${_boost_RELEASE_NAMES} HINTS ${_boost_LIBRARY_SEARCH_DIRS_tmp} NAMES_PER_DIR @@ -1038,10 +1081,16 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS}) "Searching for ${UPPERCOMPONENT}_LIBRARY_DEBUG: ${_boost_DEBUG_NAMES}") endif() + # if Boost_LIBRARY_DIR_DEBUG is not defined, + # but Boost_LIBRARY_DIR_RELEASE is, look there first for DEBUG libs + if(NOT Boost_LIBRARY_DIR_DEBUG AND Boost_LIBRARY_DIR_RELEASE) + list(INSERT _boost_LIBRARY_SEARCH_DIRS_DEBUG 0 ${Boost_LIBRARY_DIR_RELEASE}) + endif() + # Avoid passing backslashes to _Boost_FIND_LIBRARY due to macro re-parsing. - string(REPLACE "\\" "/" _boost_LIBRARY_SEARCH_DIRS_tmp "${_boost_LIBRARY_SEARCH_DIRS}") + string(REPLACE "\\" "/" _boost_LIBRARY_SEARCH_DIRS_tmp "${_boost_LIBRARY_SEARCH_DIRS_DEBUG}") - _Boost_FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG + _Boost_FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG DEBUG NAMES ${_boost_DEBUG_NAMES} HINTS ${_boost_LIBRARY_SEARCH_DIRS_tmp} NAMES_PER_DIR @@ -1067,7 +1116,16 @@ endif() # ------------------------------------------------------------------------ set(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR}) -set(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIR}) +set(Boost_LIBRARY_DIRS) +if(Boost_LIBRARY_DIR_RELEASE) + list(APPEND Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIR_RELEASE}) +endif() +if(Boost_LIBRARY_DIR_DEBUG) + list(APPEND Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIR_DEBUG}) +endif() +if(Boost_LIBRARY_DIRS) + list(REMOVE_DUPLICATES Boost_LIBRARY_DIRS) +endif() # The above setting of Boost_FOUND was based only on the header files. # Update it for the requested component libraries. ----------------------------------------------------------------------- Summary of changes: Modules/FindBoost.cmake | 156 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 107 insertions(+), 49 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 10:57:46 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 10:57:46 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1023-ge3c8a3a Message-ID: <20150205155746.11240AA9F0@public.kitware.com> 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 e3c8a3a0ff84d1b4eaf2b9089eeb67d51f6c4cbd (commit) via 39e0aa5390964953e1462f0efed0058c172a0a26 (commit) from d045ee3b5288d8bb5596141bf20a1fb0d4e2a14c (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=e3c8a3a0ff84d1b4eaf2b9089eeb67d51f6c4cbd commit e3c8a3a0ff84d1b4eaf2b9089eeb67d51f6c4cbd Merge: d045ee3 39e0aa5 Author: Brad King AuthorDate: Thu Feb 5 10:57:45 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 10:57:45 2015 -0500 Merge topic 'FindBoost-per-config-libraries' into next 39e0aa53 Help: Add notes for topic 'FindBoost-per-config-libraries' http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=39e0aa5390964953e1462f0efed0058c172a0a26 commit 39e0aa5390964953e1462f0efed0058c172a0a26 Author: Brad King AuthorDate: Thu Feb 5 10:57:34 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 10:57:34 2015 -0500 Help: Add notes for topic 'FindBoost-per-config-libraries' diff --git a/Help/release/dev/FindBoost-per-config-libraries.rst b/Help/release/dev/FindBoost-per-config-libraries.rst new file mode 100644 index 0000000..e6ef70f --- /dev/null +++ b/Help/release/dev/FindBoost-per-config-libraries.rst @@ -0,0 +1,5 @@ +FindBoost-per-config-libraries +------------------------------ + +* The :module:`FindBoost` module now tracks the directories containing + libraries separately for RELEASE and DEBUG configurations. ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindBoost-per-config-libraries.rst | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 Help/release/dev/FindBoost-per-config-libraries.rst hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 5 11:20:49 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 5 Feb 2015 11:20:49 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1027-g8918fa8 Message-ID: <20150205162050.5088CAA7E8@public.kitware.com> 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 8918fa8bac9d8a9ce83f7f970a55c184da23d25e (commit) via 1814cf744ce69ab97ce4a8fe8183b4d4f7f75cf4 (commit) via 54e900abfbbddde560a853355b448e1b86681741 (commit) via 393a45e2e1fa2f0d9657d4a686257d828cd918e4 (commit) from e3c8a3a0ff84d1b4eaf2b9089eeb67d51f6c4cbd (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=8918fa8bac9d8a9ce83f7f970a55c184da23d25e commit 8918fa8bac9d8a9ce83f7f970a55c184da23d25e Merge: e3c8a3a 1814cf7 Author: Brad King AuthorDate: Thu Feb 5 11:20:41 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 11:20:41 2015 -0500 Merge topic 'add-CheckFortranCompilerFlag' into next 1814cf74 Help: Add notes for topic 'add-CheckFortranCompilerFlag' 54e900ab CheckFortranCompilerFlag: Add test case 393a45e2 CheckFortranCompilerFlag: Add module to check Fortran flag existence http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1814cf744ce69ab97ce4a8fe8183b4d4f7f75cf4 commit 1814cf744ce69ab97ce4a8fe8183b4d4f7f75cf4 Author: Brad King AuthorDate: Thu Feb 5 11:18:41 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 11:18:41 2015 -0500 Help: Add notes for topic 'add-CheckFortranCompilerFlag' diff --git a/Help/release/dev/add-CheckFortranCompilerFlag.rst b/Help/release/dev/add-CheckFortranCompilerFlag.rst new file mode 100644 index 0000000..718b53e --- /dev/null +++ b/Help/release/dev/add-CheckFortranCompilerFlag.rst @@ -0,0 +1,6 @@ +add-CheckFortranCompilerFlag +---------------------------- + +* The :module:`CheckFortranCompilerFlag` module was introduced + to check ``Fortran`` compiler flags, much like the + :module:`CheckCCompilerFlag` module already does for ``C``. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=54e900abfbbddde560a853355b448e1b86681741 commit 54e900abfbbddde560a853355b448e1b86681741 Author: Brad King AuthorDate: Thu Feb 5 11:18:13 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 11:18:13 2015 -0500 CheckFortranCompilerFlag: Add test case Extend the FortranOnly test with a case covering this module. diff --git a/Tests/FortranOnly/CMakeLists.txt b/Tests/FortranOnly/CMakeLists.txt index 1b2651d..9bf0303 100644 --- a/Tests/FortranOnly/CMakeLists.txt +++ b/Tests/FortranOnly/CMakeLists.txt @@ -65,6 +65,13 @@ if(NOT CMAKE_Fortran_COMPILER_ID STREQUAL XL) message(SEND_ERROR "CHECK_Fortran_SOURCE_COMPILES for HAVE_PRINT failed:\n" "${err}") endif() + + unset(Fortran_BOGUS_FLAG CACHE) + include(CheckFortranCompilerFlag) + CHECK_Fortran_COMPILER_FLAG(-_this_is_not_a_flag_ Fortran_BOGUS_FLAG) + if (Fortran_BOGUS_FLAG) + message (SEND_ERROR "CHECK_Fortran_COMPILER_FLAG() succeeded, but should have failed") + endif () endif() # Test generation of preprocessed sources. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=393a45e2e1fa2f0d9657d4a686257d828cd918e4 commit 393a45e2e1fa2f0d9657d4a686257d828cd918e4 Author: Nicolas Bock AuthorDate: Mon Feb 2 17:07:04 2015 -0700 Commit: Brad King CommitDate: Thu Feb 5 11:16:59 2015 -0500 CheckFortranCompilerFlag: Add module to check Fortran flag existence Copy the CheckCCompilerFlag module and replace 'C' with 'Fortran'. Also update the common patterns module to match some Fortran compiler messages. diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst index db56010..76058f9 100644 --- a/Help/manual/cmake-modules.7.rst +++ b/Help/manual/cmake-modules.7.rst @@ -22,6 +22,7 @@ All Modules /module/CheckCXXSourceCompiles /module/CheckCXXSourceRuns /module/CheckCXXSymbolExists + /module/CheckFortranCompilerFlag /module/CheckFortranFunctionExists /module/CheckFortranSourceCompiles /module/CheckFunctionExists diff --git a/Help/module/CheckFortranCompilerFlag.rst b/Help/module/CheckFortranCompilerFlag.rst new file mode 100644 index 0000000..58bf6ec --- /dev/null +++ b/Help/module/CheckFortranCompilerFlag.rst @@ -0,0 +1 @@ +.. cmake-module:: ../../Modules/CheckFortranCompilerFlag.cmake diff --git a/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake b/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake index 19b2bbc..3141d60 100644 --- a/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake +++ b/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake @@ -21,9 +21,9 @@ macro (CHECK_COMPILER_FLAG_COMMON_PATTERNS _VAR) set(${_VAR} - FAIL_REGEX "unrecognized .*option" # GNU + FAIL_REGEX "[Uu]nrecogni[sz]ed .*option" # GNU, NAG FAIL_REGEX "unknown .*option" # Clang - FAIL_REGEX "ignoring unknown option" # MSVC + FAIL_REGEX "ignoring unknown option" # MSVC, Intel FAIL_REGEX "warning D9002" # MSVC, any lang FAIL_REGEX "option.*not supported" # Intel FAIL_REGEX "invalid argument .*option" # Intel @@ -35,6 +35,7 @@ macro (CHECK_COMPILER_FLAG_COMMON_PATTERNS _VAR) FAIL_REGEX "command option .* contains an incorrect subargument" # XL FAIL_REGEX "not supported in this configuration. ignored" # AIX FAIL_REGEX "File with unknown suffix passed to linker" # PGI + FAIL_REGEX "[Uu]nknown switch" # PGI FAIL_REGEX "WARNING: unknown flag:" # Open64 FAIL_REGEX "Incorrect command line option:" # Borland FAIL_REGEX "Warning: illegal option" # SunStudio 12 diff --git a/Modules/CheckFortranCompilerFlag.cmake b/Modules/CheckFortranCompilerFlag.cmake new file mode 100644 index 0000000..53fd8d6 --- /dev/null +++ b/Modules/CheckFortranCompilerFlag.cmake @@ -0,0 +1,66 @@ +#.rst: +# CheckFortranCompilerFlag +# ------------------------ +# +# Check whether the Fortran compiler supports a given flag. +# +# CHECK_Fortran_COMPILER_FLAG( ) +# +# :: +# +# - the compiler flag +# - variable to store the result +# Will be created as an internal cache variable. +# +# This internally calls the check_fortran_source_compiles macro and +# sets CMAKE_REQUIRED_DEFINITIONS to . See help for +# CheckFortranSourceCompiles for a listing of variables that can +# otherwise modify the build. The result only tells that the compiler +# does not give an error message when it encounters the flag. If the +# flag has any effect or even a specific one is beyond the scope of +# this module. + +#============================================================================= +# Copyright 2015 Nicolas Bock +# Copyright 2006-2011 Kitware, Inc. +# Copyright 2006 Alexander Neundorf +# Copyright 2011 Matthias Kretz +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + +include(CheckFortranSourceCompiles) +include(CMakeCheckCompilerFlagCommonPatterns) + +macro (CHECK_Fortran_COMPILER_FLAG _FLAG _RESULT) + set(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") + set(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") + + # Normalize locale during test compilation. + set(_CheckFortranCompilerFlag_LOCALE_VARS LC_ALL LC_MESSAGES LANG) + foreach(v ${_CheckFortranCompilerFlag_LOCALE_VARS}) + set(_CheckFortranCompilerFlag_SAVED_${v} "$ENV{${v}}") + set(ENV{${v}} C) + endforeach() + CHECK_COMPILER_FLAG_COMMON_PATTERNS(_CheckFortranCompilerFlag_COMMON_PATTERNS) + CHECK_Fortran_SOURCE_COMPILES(" program test\n stop\n end program" ${_RESULT} + # Some compilers do not fail with a bad flag + FAIL_REGEX "command line option .* is valid for .* but not for Fortran" # GNU + ${_CheckFortranCompilerFlag_COMMON_PATTERNS} + ) + foreach(v ${_CheckFortranCompilerFlag_LOCALE_VARS}) + set(ENV{${v}} ${_CheckFortranCompilerFlag_SAVED_${v}}) + unset(_CheckFortranCompilerFlag_SAVED_${v}) + endforeach() + unset(_CheckFortranCompilerFlag_LOCALE_VARS) + unset(_CheckFortranCompilerFlag_COMMON_PATTERNS) + + set (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") +endmacro () ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-modules.7.rst | 1 + Help/module/CheckFortranCompilerFlag.rst | 1 + Help/release/dev/add-CheckFortranCompilerFlag.rst | 6 ++ Modules/CMakeCheckCompilerFlagCommonPatterns.cmake | 5 +- Modules/CheckFortranCompilerFlag.cmake | 66 ++++++++++++++++++++ Tests/FortranOnly/CMakeLists.txt | 7 +++ 6 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 Help/module/CheckFortranCompilerFlag.rst create mode 100644 Help/release/dev/add-CheckFortranCompilerFlag.rst create mode 100644 Modules/CheckFortranCompilerFlag.cmake hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 5 14:41:37 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 5 Feb 2015 14:41:37 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1034-g72bef67 Message-ID: <20150205194139.03CD925ED@public.kitware.com> 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 72bef67dd5494a872e34131f0cb194a9ede3edd9 (commit) via 25494fff607913d74d6d0b8b18b1a146c116d9a5 (commit) via 4af6da7c5346707d93a35e124c4d56bfb63906d4 (commit) via aecbd1b4d41fccb3266d43484df6ad460d59a4af (commit) via 41c5bce7dbc60d427229a719ff3ae307d2b3d1e9 (commit) via 33d6cc7ef3c4df40ac33570e60f2d478001ee70a (commit) via aae86094c63ddb5f312c23670d4e7a19ba84ad45 (commit) from 8918fa8bac9d8a9ce83f7f970a55c184da23d25e (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=72bef67dd5494a872e34131f0cb194a9ede3edd9 commit 72bef67dd5494a872e34131f0cb194a9ede3edd9 Merge: 8918fa8 25494ff Author: Stephen Kelly AuthorDate: Thu Feb 5 14:41:30 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 14:41:30 2015 -0500 Merge topic 'export-interface-source-files' into next 25494fff Add release notes for export-interface-source-files. 4af6da7c Allow export of targets with INTERFACE_SOURCES. aecbd1b4 Tests: Move build-property-paths test stderr files. 41c5bce7 Tests: Run build-property-paths tests with a parameter. 33d6cc7e Tests: Split part of include_directories test to a generic location. aae86094 RunCMake: Remove unneeded files. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=25494fff607913d74d6d0b8b18b1a146c116d9a5 commit 25494fff607913d74d6d0b8b18b1a146c116d9a5 Author: Stephen Kelly AuthorDate: Thu Feb 5 20:40:51 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:40:51 2015 +0100 Add release notes for export-interface-source-files. diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst new file mode 100644 index 0000000..a26092a --- /dev/null +++ b/Help/release/dev/export-interface-source-files.rst @@ -0,0 +1,6 @@ +export-interface-source-files +----------------------------- + +* It is now possible to export targets which populate the + :prop_tgt:`TARGET_SOURCES` target property using the + :command:`install(EXPORT)` and :command:`export()` commands. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4af6da7c5346707d93a35e124c4d56bfb63906d4 commit 4af6da7c5346707d93a35e124c4d56bfb63906d4 Author: Stephen Kelly AuthorDate: Fri Nov 28 18:58:38 2014 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:20:02 2015 +0100 Allow export of targets with INTERFACE_SOURCES. Use the same rules for paths in source and binary dirs in installed INTERFACE_SOURCES as are used for INTERFACE_INCLUDE_DIRECTORIES. diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index 832240a..d6f148d 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -22,10 +22,6 @@ items will populate the :prop_tgt:`SOURCES` property of following arguments specify sources. Repeated calls for the same ```` append items in the order called. -Targets with :prop_tgt:`INTERFACE_SOURCES` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Arguments to ``target_sources`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Help/prop_tgt/INTERFACE_SOURCES.rst b/Help/prop_tgt/INTERFACE_SOURCES.rst index 696ee95..a224b68 100644 --- a/Help/prop_tgt/INTERFACE_SOURCES.rst +++ b/Help/prop_tgt/INTERFACE_SOURCES.rst @@ -12,10 +12,6 @@ When target dependencies are specified using :command:`target_link_libraries`, CMake will read this property from all target dependencies to determine the sources of the consumer. -Targets with ``INTERFACE_SOURCES`` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Contents of ``INTERFACE_SOURCES`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Source/cmExportBuildFileGenerator.cxx b/Source/cmExportBuildFileGenerator.cxx index a28ec48..b1203dd 100644 --- a/Source/cmExportBuildFileGenerator.cxx +++ b/Source/cmExportBuildFileGenerator.cxx @@ -68,16 +68,6 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) tei != this->Exports.end(); ++tei) { cmTarget* te = *tei; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } this->GenerateImportTargetCode(os, te); te->AppendBuildInterfaceIncludes(); @@ -87,6 +77,9 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateInterfaceProperty("INTERFACE_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); + this->PopulateInterfaceProperty("INTERFACE_SOURCES", te, + cmGeneratorExpression::BuildInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_COMPILE_DEFINITIONS", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index af4ce8b..71728be 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -224,7 +224,7 @@ static bool isSubDirectory(const char* a, const char* b) //---------------------------------------------------------------------------- static bool checkInterfaceDirs(const std::string &prepro, - cmTarget *target) + cmTarget *target, const std::string& prop) { const char* installDir = target->GetMakefile()->GetSafeDefinition("CMAKE_INSTALL_PREFIX"); @@ -250,20 +250,27 @@ static bool checkInterfaceDirs(const std::string &prepro, std::ostringstream e; if (genexPos != std::string::npos) { - switch (target->GetPolicyStatusCMP0041()) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - case cmPolicies::WARN: - messageType = cmake::WARNING; - e << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; - break; - case cmPolicies::OLD: - continue; - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::NEW: - hadFatalError = true; - break; // Issue fatal message. + switch (target->GetPolicyStatusCMP0041()) + { + case cmPolicies::WARN: + messageType = cmake::WARNING; + e << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; + break; + case cmPolicies::OLD: + continue; + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::NEW: + hadFatalError = true; + break; // Issue fatal message. + } + } + else + { + hadFatalError = true; } } if (cmHasLiteralPrefix(li->c_str(), "${_IMPORT_PREFIX}")) @@ -272,8 +279,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (!cmSystemTools::FileIsFullPath(li->c_str())) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains relative path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains relative path:\n" " \"" << *li << "\""; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -289,32 +296,35 @@ static bool checkInterfaceDirs(const std::string &prepro, (!inBinary || isSubDirectory(installDir, topBinaryDir)) && (!inSource || isSubDirectory(installDir, topSourceDir)); - if (!shouldContinue) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - switch(target->GetPolicyStatusCMP0052()) + if (!shouldContinue) { - case cmPolicies::WARN: + switch(target->GetPolicyStatusCMP0052()) { - std::ostringstream s; - s << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; - s << "Directory:\n \"" << *li << "\"\nin " - "INTERFACE_INCLUDE_DIRECTORIES of target \"" - << target->GetName() << "\" is a subdirectory of the install " - "directory:\n \"" << installDir << "\"\nhowever it is also " - "a subdirectory of the " << (inBinary ? "build" : "source") - << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) - << "\"" << std::endl; - target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, - s.str()); + case cmPolicies::WARN: + { + std::ostringstream s; + s << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; + s << "Directory:\n \"" << *li << "\"\nin " + "INTERFACE_INCLUDE_DIRECTORIES of target \"" + << target->GetName() << "\" is a subdirectory of the install " + "directory:\n \"" << installDir << "\"\nhowever it is also " + "a subdirectory of the " << (inBinary ? "build" : "source") + << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) + << "\"" << std::endl; + target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, + s.str()); + } + case cmPolicies::OLD: + shouldContinue = true; + break; + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::NEW: + break; } - case cmPolicies::OLD: - shouldContinue = true; - break; - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::NEW: - break; } } if (shouldContinue) @@ -324,8 +334,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (inBinary) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the build directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -333,8 +343,8 @@ static bool checkInterfaceDirs(const std::string &prepro, { if (inSource) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the source directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -365,6 +375,46 @@ static void prefixItems(std::string &exportDirs) } //---------------------------------------------------------------------------- +void cmExportFileGenerator::PopulateSourcesInterface( + cmTargetExport *tei, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets) +{ + cmTarget *target = tei->Target; + assert(preprocessRule == cmGeneratorExpression::InstallInterface); + + const char *propName = "INTERFACE_SOURCES"; + const char *input = target->GetProperty(propName); + + if (!input) + { + return; + } + + if (!*input) + { + properties[propName] = ""; + return; + } + + std::string prepro = cmGeneratorExpression::Preprocess(input, + preprocessRule, + true); + if (!prepro.empty()) + { + this->ResolveTargetsInGeneratorExpressions(prepro, target, + missingTargets); + + if (!checkInterfaceDirs(prepro, target, propName)) + { + return; + } + properties[propName] = prepro; + } +} + +//---------------------------------------------------------------------------- void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( cmTargetExport *tei, cmGeneratorExpression::PreprocessContext preprocessRule, @@ -424,7 +474,7 @@ void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( this->ResolveTargetsInGeneratorExpressions(prepro, target, missingTargets); - if (!checkInterfaceDirs(prepro, target)) + if (!checkInterfaceDirs(prepro, target, propName)) { return; } diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h index 919924e..b6f4166 100644 --- a/Source/cmExportFileGenerator.h +++ b/Source/cmExportFileGenerator.h @@ -139,6 +139,11 @@ protected: cmGeneratorExpression::PreprocessContext preprocessRule, ImportPropertyMap &properties, std::vector &missingTargets); + void PopulateSourcesInterface( + cmTargetExport *target, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets); void SetImportLinkInterface(const std::string& config, std::string const& suffix, diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index 98ed818..a0d9013 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -123,6 +123,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) bool require2_8_12 = false; bool require3_0_0 = false; + bool require3_1_0 = false; bool requiresConfigFiles = false; // Create all the imported targets. for(std::vector::const_iterator @@ -131,17 +132,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { cmTarget* te = (*tei)->Target; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } - requiresConfigFiles = requiresConfigFiles || te->GetType() != cmTarget::INTERFACE_LIBRARY; @@ -152,6 +142,9 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateIncludeDirectoriesInterface(*tei, cmGeneratorExpression::InstallInterface, properties, missingTargets); + this->PopulateSourcesInterface(*tei, + cmGeneratorExpression::InstallInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::InstallInterface, @@ -190,6 +183,13 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { require3_0_0 = true; } + if(te->GetProperty("INTERFACE_SOURCES")) + { + // We can only generate INTERFACE_SOURCES in CMake 3.3, but CMake 3.1 + // can consume them. + require3_1_0 = true; + } + this->PopulateInterfaceProperty("INTERFACE_POSITION_INDEPENDENT_CODE", te, properties); this->PopulateCompatibleInterfaceProperties(te, properties); @@ -197,7 +197,11 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->GenerateInterfaceProperties(te, os, properties); } - if (require3_0_0) + if (require3_1_0) + { + this->GenerateRequiredCMakeVersion(os, "3.1.0"); + } + else if (require3_0_0) { this->GenerateRequiredCMakeVersion(os, "3.0.0"); } diff --git a/Tests/ExportImport/Export/Interface/CMakeLists.txt b/Tests/ExportImport/Export/Interface/CMakeLists.txt index 523fc29..00a5375 100644 --- a/Tests/ExportImport/Export/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Export/Interface/CMakeLists.txt @@ -29,7 +29,17 @@ target_compile_features(use_auto_type INTERFACE cxx_auto_type) add_library(use_c_restrict INTERFACE) target_compile_features(use_c_restrict INTERFACE c_restrict) -install(TARGETS headeronly sharediface use_auto_type use_c_restrict +add_library(source_target INTERFACE) +target_sources(source_target INTERFACE + $ + $/src/source_target_for_install.cpp> +) +install(FILES + source_target_for_install.cpp + DESTINATION src +) + +install(TARGETS headeronly sharediface use_auto_type use_c_restrict source_target EXPORT expInterface ) install(TARGETS sharedlib diff --git a/Tests/ExportImport/Export/Interface/source_target.cpp b/Tests/ExportImport/Export/Interface/source_target.cpp new file mode 100644 index 0000000..037191c --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target.cpp @@ -0,0 +1,13 @@ + +#ifndef USE_FROM_BUILD_DIR +#error Expected define USE_FROM_BUILD_DIR +#endif + +#ifdef USE_FROM_INSTALL_DIR +#error Unexpected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Export/Interface/source_target_for_install.cpp b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp new file mode 100644 index 0000000..64514ed --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp @@ -0,0 +1,13 @@ + +#ifdef USE_FROM_BUILD_DIR +#error Unexpected define USE_FROM_BUILD_DIR +#endif + +#ifndef USE_FROM_INSTALL_DIR +#error Expected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Import/Interface/CMakeLists.txt b/Tests/ExportImport/Import/Interface/CMakeLists.txt index 4028405..51d518e 100644 --- a/Tests/ExportImport/Import/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Import/Interface/CMakeLists.txt @@ -82,6 +82,14 @@ endmacro() do_try_compile(bld) +add_executable(source_target_test_bld source_target_test.cpp) +target_link_libraries(source_target_test_bld bld::source_target) +target_compile_definitions(source_target_test_bld PRIVATE USE_FROM_BUILD_DIR) + +add_executable(source_target_test_exp source_target_test.cpp) +target_link_libraries(source_target_test_exp exp::source_target) +target_compile_definitions(source_target_test_exp PRIVATE USE_FROM_INSTALL_DIR) + add_executable(headeronlytest_exp headeronlytest.cpp) target_link_libraries(headeronlytest_exp exp::headeronly) diff --git a/Tests/ExportImport/Import/Interface/source_target_test.cpp b/Tests/ExportImport/Import/Interface/source_target_test.cpp new file mode 100644 index 0000000..0e8ec5f --- /dev/null +++ b/Tests/ExportImport/Import/Interface/source_target_test.cpp @@ -0,0 +1,7 @@ + +extern int source_symbol(); + +int main() +{ + return source_symbol() - 42; +} diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 7a09a2c..c7bef67 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -193,6 +193,9 @@ add_RunCMake_test(ExternalProject) set(build-property-paths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) add_RunCMake_test(build-property-paths_INCLUDE_DIRECTORIES TEST_DIR build-property-paths) +set(build-property-paths_SOURCES_ARGS -DTEST_PROP=SOURCES) +add_RunCMake_test(build-property-paths_SOURCES TEST_DIR build-property-paths) + if(RPMBUILD) add_RunCMake_test(CPackRPM) endif() diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/TargetSources/ExportBuild-result.txt index d00491f..573541a 100644 --- a/Tests/RunCMake/TargetSources/ExportBuild-result.txt +++ b/Tests/RunCMake/TargetSources/ExportBuild-result.txt @@ -1 +1 @@ -1 +0 diff --git a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt b/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt b/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall.cmake b/Tests/RunCMake/TargetSources/ExportInstall.cmake deleted file mode 100644 index 8e7c9f9..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall.cmake +++ /dev/null @@ -1,6 +0,0 @@ - -add_library(iface INTERFACE) -target_sources(iface INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/empty_1.cpp") - -install(TARGETS iface EXPORT exp) -install(EXPORT exp DESTINATION cmake) diff --git a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake index 1b4ef0b..4416ef9 100644 --- a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake +++ b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake @@ -10,4 +10,3 @@ endif() run_cmake(CMP0026-LOCATION) run_cmake(RelativePathInInterface) run_cmake(ExportBuild) -run_cmake(ExportInstall) diff --git a/Tests/RunCMake/CMP0004/CMP0004-NEW-result.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/CMP0004/CMP0004-NEW-result.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..fa39ff8 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/prefix/BinInInstallPrefix-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..bed2424 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/BinaryDirectoryInInterface-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake index 67ee7de..7001f3f 100644 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_BINARY_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_BINARY_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake b/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake index fab7717..f5f3005 100644 --- a/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake +++ b/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake @@ -1,6 +1,11 @@ enable_language(CXX) add_library(testTarget empty.cpp) -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/dir") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/dir") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_INSTALL_PREFIX}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt new file mode 100644 index 0000000..02a8198 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/InstallInBinDir-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt new file mode 100644 index 0000000..aece1ab --- /dev/null +++ b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/copy/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt new file mode 100644 index 0000000..2311af9 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" contains relative path in its INTERFACE_SOURCES: + + "empty.cpp" diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake b/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake index 070a381..489c3a1 100644 --- a/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake +++ b/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake @@ -2,7 +2,12 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "$<1:empty.cpp>") +endif() add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") target_link_libraries(userTarget testTarget) diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..f0f002c --- /dev/null +++ b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains relative path: + + "empty.cpp" diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake b/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake index 4c4727d..e974aac 100644 --- a/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake +++ b/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake @@ -2,8 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") - +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib ) diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..187ccdf --- /dev/null +++ b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake index f814a3c..d80cbec 100644 --- a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake +++ b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/TargetSources/ExportInstall-result.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/TargetSources/ExportInstall-result.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..6a123f7 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/prefix/src/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/export-NOWARN.cmake b/Tests/RunCMake/build-property-paths/export-NOWARN.cmake index 50720a0..592572c 100644 --- a/Tests/RunCMake/build-property-paths/export-NOWARN.cmake +++ b/Tests/RunCMake/build-property-paths/export-NOWARN.cmake @@ -1,19 +1,34 @@ enable_language(CXX) add_library(foo empty.cpp) + set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<0:>/include/subdir) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $<0:>/include/subdir/empty.cpp) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) # target_include_directories(foo INTERFACE include/subdir) # Does and should warn. INSTALL_INTERFACE must not list src dir paths. target_include_directories(foo INTERFACE $<0:>/include/subdir) # Does not and should not should warn, because it starts with a genex. target_include_directories(foo INTERFACE $/include/subdir) +target_sources(foo INTERFACE $<0:>/include/subdir/empty.cpp) +target_sources(foo INTERFACE $/include/subdir/empty.cpp) target_include_directories(foo INTERFACE $) target_include_directories(foo INTERFACE $>) +target_sources(foo INTERFACE $) +target_sources(foo INTERFACE $>) + +install(FILES include/subdir/empty.cpp + DESTINATION include/subdir +) install(TARGETS foo EXPORT FooTargets DESTINATION lib) install(EXPORT FooTargets DESTINATION lib/cmake) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aecbd1b4d41fccb3266d43484df6ad460d59a4af commit aecbd1b4d41fccb3266d43484df6ad460d59a4af Author: Stephen Kelly AuthorDate: Sun Nov 30 13:54:18 2014 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:19:48 2015 +0100 Tests: Move build-property-paths test stderr files. Rename the files with a property-specific name, so that additional properties can be easily tested. Extend the RunCMake infrastructure to allow specifying a non-uniform stderr file location. diff --git a/Tests/RunCMake/RunCMake.cmake b/Tests/RunCMake/RunCMake.cmake index 33b745d..6389ef4 100644 --- a/Tests/RunCMake/RunCMake.cmake +++ b/Tests/RunCMake/RunCMake.cmake @@ -18,7 +18,10 @@ function(run_cmake test) set(expect_result 0) endif() foreach(o out err) - if(EXISTS ${top_src}/${test}-std${o}.txt) + if(RunCMake-std${o}-file AND EXISTS ${top_src}/${RunCMake-std${o}-file}) + file(READ ${top_src}/${RunCMake-std${o}-file} expect_std${o}) + string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") + elseif(EXISTS ${top_src}/${test}-std${o}.txt) file(READ ${top_src}/${test}-std${o}.txt expect_std${o}) string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") else() diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt rename to Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt rename to Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr.txt rename to Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake index eefdbf7..54d0cd8 100644 --- a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake +++ b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake @@ -2,6 +2,7 @@ include(RunCMake) macro(run_cmake test) list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + set(RunCMake-stderr-file ${test}-stderr_${TEST_PROP}.txt) _run_cmake(${test}) endmacro() diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=41c5bce7dbc60d427229a719ff3ae307d2b3d1e9 commit 41c5bce7dbc60d427229a719ff3ae307d2b3d1e9 Author: Stephen Kelly AuthorDate: Sun Nov 30 13:42:00 2014 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:19:48 2015 +0100 Tests: Run build-property-paths tests with a parameter. Run the tests for the INCLUDE_DIRECTORIES INTERFACE property in a specific build location, and update the stderr expectation to match the new output. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 88f4ab2..7a09a2c 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -1,17 +1,29 @@ # See adjacent README.rst for documentation of this test infrastructure. macro(add_RunCMake_test test) + set(TEST_ARGS ${ARGN}) + if ("${ARGV1}" STREQUAL "TEST_DIR") + message("HERE ${ARGV1}") + if ("${ARGV2}" STREQUAL "") + message(FATAL_ERROR "Invalid args") + endif() + set(Test_Dir ${ARGV2}) + list(REMOVE_AT TEST_ARGS 0) + list(REMOVE_AT TEST_ARGS 0) + else() + set(Test_Dir ${test}) + endif() add_test(NAME RunCMake.${test} COMMAND ${CMAKE_CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} -DRunCMake_GENERATOR=${CMAKE_GENERATOR} -DRunCMake_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM} -DRunCMake_GENERATOR_TOOLSET=${CMAKE_GENERATOR_TOOLSET} -DRunCMake_MAKE_PROGRAM=${CMake_TEST_EXPLICIT_MAKE_PROGRAM} - -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${test} + -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir} -DRunCMake_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}/${test} ${${test}_ARGS} - ${ARGN} - -P "${CMAKE_CURRENT_SOURCE_DIR}/${test}/RunCMakeTest.cmake" + ${TEST_ARGS} + -P "${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir}/RunCMakeTest.cmake" ) endmacro() @@ -177,7 +189,9 @@ add_RunCMake_test(CommandLine) add_RunCMake_test(install) add_RunCMake_test(CPackInstallProperties) add_RunCMake_test(ExternalProject) -add_RunCMake_test(build-property-paths) + +set(build-property-paths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) +add_RunCMake_test(build-property-paths_INCLUDE_DIRECTORIES TEST_DIR build-property-paths) if(RPMBUILD) add_RunCMake_test(CPackRPM) diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt index e8c47b1..8db7283 100644 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt index c0c4806..6473efe 100644 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/build-property-paths/prefix" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix" however it is also a subdirectory of the build tree: - ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-WARN-build" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt index 332c237..94c46ab 100644 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/build-property-paths/BinaryDirectoryInInterface-build/foo" + ".*RunCMake/build-property-paths_INCLUDE_DIRECTORIES/BinaryDirectoryInInterface-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt index 504e332..83ae34c 100644 --- a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt +++ b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/InstallInBinDir-build/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/InstallInBinDir-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt index 5f0a3ea..a7a5af4 100644 --- a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt +++ b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/copy/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/copy/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake index 2add175..eefdbf7 100644 --- a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake +++ b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake @@ -1,5 +1,10 @@ include(RunCMake) +macro(run_cmake test) + list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + _run_cmake(${test}) +endmacro() + run_cmake(RelativePathInInterface) run_cmake(RelativePathInGenex) run_cmake(export-NOWARN) @@ -57,12 +62,15 @@ configure_file( COPYONLY ) -foreach(policyStatus "" NEW OLD) - if (NOT "${policyStatus}" STREQUAL "") - set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) - else() - unset(policyOption) - set(policyStatus WARN) +foreach(policyStatus NEW OLD "") + if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + if (NOT "${policyStatus}" STREQUAL "") + set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) + else() + unset(policyOption) + set(policyStatus WARN) + endif() + set(policySuffix -CMP0052-${policyStatus}) endif() set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} @@ -73,16 +81,20 @@ foreach(policyStatus "" NEW OLD) # a subdirectory or the source directory, which is allowed and tested separately # below. set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build") - run_cmake(BinInInstallPrefix-CMP0052-${policyStatus}) + set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix${policySuffix}-build") + run_cmake(BinInInstallPrefix${policySuffix}) unset(RunCMake_TEST_BINARY_DIR) set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" ) - run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus}) + run_cmake(SrcInInstallPrefix${policySuffix}) unset(RunCMake_TEST_SOURCE_DIR) + + if (NOT TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + break() + endif() endforeach() set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt index 4838a53..2af50d5 100644 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/prefix/src/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt index 8b2d69d..56aaa2c 100644 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/build-property-paths/prefix/src/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/build-property-paths/prefix" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix" however it is also a subdirectory of the source tree: - ".*Tests/RunCMake/build-property-paths/prefix/src" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src" This warning is for project developers. Use -Wno-dev to suppress it. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=33d6cc7ef3c4df40ac33570e60f2d478001ee70a commit 33d6cc7ef3c4df40ac33570e60f2d478001ee70a Author: Stephen Kelly AuthorDate: Sun Nov 30 13:20:32 2014 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:19:23 2015 +0100 Tests: Split part of include_directories test to a generic location. The moved tests are related to paths in INTERFACE_INCLUDE_DIRECTORIES in general, and when exporting, and covering cases of the install location being within the build or source prefix etc. Other build properties containing paths should have similar tests, so this allows some parameterization while keeping the preparation of the various directory structures. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 801655f..88f4ab2 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -177,6 +177,7 @@ add_RunCMake_test(CommandLine) add_RunCMake_test(install) add_RunCMake_test(CPackInstallProperties) add_RunCMake_test(ExternalProject) +add_RunCMake_test(build-property-paths) if(RPMBUILD) add_RunCMake_test(CPackRPM) diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt similarity index 62% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt index f0adc9f..e8c47b1 100644 --- a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" + ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-result.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-OLD-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-result.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-OLD-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-result.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-result.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt similarity index 68% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt index 054bff5..c0c4806 100644 --- a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" + ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/include_directories/prefix" + ".*Tests/RunCMake/build-property-paths/prefix" however it is also a subdirectory of the build tree: - ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-WARN-build" + ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-WARN-build" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt rename to Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt similarity index 67% rename from Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt index 0d4379e..332c237 100644 --- a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/include_directories/BinaryDirectoryInInterface-build/foo" + ".*RunCMake/build-property-paths/BinaryDirectoryInInterface-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake rename to Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake diff --git a/Tests/RunCMake/build-property-paths/CMakeLists.txt b/Tests/RunCMake/build-property-paths/CMakeLists.txt new file mode 100644 index 0000000..5cd4825 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/CMakeLists.txt @@ -0,0 +1,6 @@ +cmake_minimum_required(VERSION 3.0) +project(${RunCMake_TEST} NONE) +if(NOT TEST_FILE) + set(TEST_FILE ${RunCMake_TEST}.cmake) +endif() +include(${TEST_FILE}) diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix-result.txt b/Tests/RunCMake/build-property-paths/DirInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/DirInInstallPrefix-result.txt rename to Tests/RunCMake/build-property-paths/DirInInstallPrefix-result.txt diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix.cmake b/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake similarity index 100% rename from Tests/RunCMake/include_directories/DirInInstallPrefix.cmake rename to Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake diff --git a/Tests/RunCMake/include_directories/InstallInBinDir-result.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallInBinDir-result.txt rename to Tests/RunCMake/build-property-paths/InstallInBinDir-result.txt diff --git a/Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt similarity index 68% rename from Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt rename to Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt index 254fae1..504e332 100644 --- a/Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt +++ b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/InstallInBinDir-build/foo" + ".*Tests/RunCMake/build-property-paths/InstallInBinDir-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/include_directories/InstallInSrcDir-result.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallInSrcDir-result.txt rename to Tests/RunCMake/build-property-paths/InstallInSrcDir-result.txt diff --git a/Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt similarity index 74% rename from Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt rename to Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt index 7be3044..5f0a3ea 100644 --- a/Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt +++ b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/copy/foo" + ".*Tests/RunCMake/build-property-paths/copy/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface-result.txt b/Tests/RunCMake/build-property-paths/InstallPrefixInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallPrefixInInterface-result.txt rename to Tests/RunCMake/build-property-paths/InstallPrefixInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake b/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake rename to Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-result.txt b/Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirInSource-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-result.txt rename to Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirInSource-result.txt diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-result.txt b/Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirOutOfSource-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-result.txt rename to Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirOutOfSource-result.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex-result.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInGenex-result.txt rename to Tests/RunCMake/build-property-paths/RelativePathInGenex-result.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex-stderr.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInGenex-stderr.txt rename to Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex.cmake b/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInGenex.cmake rename to Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake diff --git a/Tests/RunCMake/include_directories/RelativePathInInterface-result.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInInterface-result.txt rename to Tests/RunCMake/build-property-paths/RelativePathInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInInterface.cmake b/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInInterface.cmake rename to Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake diff --git a/Tests/RunCMake/include_directories/RunCMakeTest.cmake b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake similarity index 96% copy from Tests/RunCMake/include_directories/RunCMakeTest.cmake copy to Tests/RunCMake/build-property-paths/RunCMakeTest.cmake index fa76f24..2add175 100644 --- a/Tests/RunCMake/include_directories/RunCMakeTest.cmake +++ b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake @@ -1,17 +1,10 @@ include(RunCMake) -run_cmake(NotFoundContent) -run_cmake(DebugIncludes) -run_cmake(TID-bad-target) -run_cmake(SourceDirectoryInInterface) -run_cmake(BinaryDirectoryInInterface) run_cmake(RelativePathInInterface) -run_cmake(ImportedTarget) run_cmake(RelativePathInGenex) -run_cmake(CMP0021) -run_cmake(install_config) -run_cmake(incomplete-genex) run_cmake(export-NOWARN) +run_cmake(SourceDirectoryInInterface) +run_cmake(BinaryDirectoryInInterface) set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/DirInInstallPrefix/prefix") run_cmake(DirInInstallPrefix) @@ -118,7 +111,6 @@ set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrc") run_cmake(InstallToPrefixInSrcDirOutOfSource) unset(RunCMake_TEST_SOURCE_DIR) - file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}/installToSrcInSrc") set(RunCMake_TEST_NO_CLEAN ON) diff --git a/Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt rename to Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt similarity index 78% rename from Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt index 9346b99..f42a2c2 100644 --- a/Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/include_directories/foo" + ".*RunCMake/build-property-paths/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake rename to Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt similarity index 72% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt index afa43e0..4838a53 100644 --- a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/prefix/src/foo" + ".*Tests/RunCMake/build-property-paths/prefix/src/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-result.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-OLD-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-result.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-OLD-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-result.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-result.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt similarity index 75% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt index 0b13fd8..8b2d69d 100644 --- a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/include_directories/prefix/src/foo" + ".*Tests/RunCMake/build-property-paths/prefix/src/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/include_directories/prefix" + ".*Tests/RunCMake/build-property-paths/prefix" however it is also a subdirectory of the source tree: - ".*Tests/RunCMake/include_directories/prefix/src" + ".*Tests/RunCMake/build-property-paths/prefix/src" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/build-property-paths/empty.cpp b/Tests/RunCMake/build-property-paths/empty.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Tests/RunCMake/include_directories/export-NOWARN-result.txt b/Tests/RunCMake/build-property-paths/export-NOWARN-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/export-NOWARN-result.txt rename to Tests/RunCMake/build-property-paths/export-NOWARN-result.txt diff --git a/Tests/RunCMake/include_directories/export-NOWARN.cmake b/Tests/RunCMake/build-property-paths/export-NOWARN.cmake similarity index 100% rename from Tests/RunCMake/include_directories/export-NOWARN.cmake rename to Tests/RunCMake/build-property-paths/export-NOWARN.cmake diff --git a/Tests/RunCMake/include_directories/RunCMakeTest.cmake b/Tests/RunCMake/include_directories/RunCMakeTest.cmake index fa76f24..3f624f8 100644 --- a/Tests/RunCMake/include_directories/RunCMakeTest.cmake +++ b/Tests/RunCMake/include_directories/RunCMakeTest.cmake @@ -3,148 +3,7 @@ include(RunCMake) run_cmake(NotFoundContent) run_cmake(DebugIncludes) run_cmake(TID-bad-target) -run_cmake(SourceDirectoryInInterface) -run_cmake(BinaryDirectoryInInterface) -run_cmake(RelativePathInInterface) run_cmake(ImportedTarget) -run_cmake(RelativePathInGenex) run_cmake(CMP0021) run_cmake(install_config) run_cmake(incomplete-genex) -run_cmake(export-NOWARN) - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/DirInInstallPrefix/prefix") -run_cmake(DirInInstallPrefix) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/copy/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/copy/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" - "${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" - COPYONLY -) -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/copy") -run_cmake(InstallInSrcDir) -unset(RunCMake_TEST_SOURCE_DIR) - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix") -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix" - "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" - ) -set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/InstallInBinDir-build") -run_cmake(InstallInBinDir) -unset(RunCMake_TEST_BINARY_DIR) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/prefix/src/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/prefix/src/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" - "${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" - COPYONLY -) - -foreach(policyStatus "" NEW OLD) - if (NOT "${policyStatus}" STREQUAL "") - set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) - else() - unset(policyOption) - set(policyStatus WARN) - endif() - set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} - "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" - ) - # Set the RunCMake_TEST_SOURCE_DIR here to the copy too. This is needed to run - # the test suite in-source properly. Otherwise the install directory would be - # a subdirectory or the source directory, which is allowed and tested separately - # below. - set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build") - run_cmake(BinInInstallPrefix-CMP0052-${policyStatus}) - unset(RunCMake_TEST_BINARY_DIR) - - set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} - "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" - ) - run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus}) - unset(RunCMake_TEST_SOURCE_DIR) -endforeach() - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") -run_cmake(InstallPrefixInInterface) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/installToSrc/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/installToSrc/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" - "${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" - COPYONLY -) -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrc") -run_cmake(InstallToPrefixInSrcDirOutOfSource) -unset(RunCMake_TEST_SOURCE_DIR) - - -file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}/installToSrcInSrc") -set(RunCMake_TEST_NO_CLEAN ON) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" - COPYONLY -) - -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") -set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") -run_cmake(InstallToPrefixInSrcDirInSource) -unset(RunCMake_TEST_SOURCE_DIR) -unset(RunCMake_TEST_BINARY_DIR) -unset(RunCMake_TEST_NO_CLEAN) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aae86094c63ddb5f312c23670d4e7a19ba84ad45 commit aae86094c63ddb5f312c23670d4e7a19ba84ad45 Author: Stephen Kelly AuthorDate: Sun Feb 1 17:38:59 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:19:10 2015 +0100 RunCMake: Remove unneeded files. The default expectation of RunCMake tests is empty content, so there is no need to specify it. diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt b/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt b/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt b/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt b/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt b/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt b/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt b/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt b/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt b/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt b/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt b/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt b/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt b/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt b/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt b/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt b/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt b/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt b/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt b/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt b/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt b/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt b/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt b/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt b/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt b/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt b/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt b/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt b/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt b/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt b/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt b/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt b/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/interface_library/genex_link-stderr.txt b/Tests/RunCMake/interface_library/genex_link-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/interface_library/genex_link-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt b/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/message/nomessage-stderr.txt b/Tests/RunCMake/message/nomessage-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/message/nomessage-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt b/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/project/CMP0048-NEW-stderr.txt b/Tests/RunCMake/project/CMP0048-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/project/CMP0048-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ ----------------------------------------------------------------------- Summary of changes: Help/command/target_sources.rst | 4 - Help/prop_tgt/INTERFACE_SOURCES.rst | 4 - Help/release/dev/export-interface-source-files.rst | 6 + Source/cmExportBuildFileGenerator.cxx | 13 +- Source/cmExportFileGenerator.cxx | 136 +++++++++++++------ Source/cmExportFileGenerator.h | 5 + Source/cmExportInstallFileGenerator.cxx | 28 ++-- Tests/ExportImport/Export/Interface/CMakeLists.txt | 12 +- .../Export/Interface/source_target.cpp | 13 ++ .../Export/Interface/source_target_for_install.cpp | 13 ++ Tests/ExportImport/Import/Interface/CMakeLists.txt | 8 ++ .../Import/Interface/source_target_test.cpp | 7 + .../RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-shared-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt | 1 - ...CMP0022-NOWARN-static-link_libraries-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-static-stderr.txt | 1 - .../RunCMake/CMP0022/CMP0022-export-exe-stderr.txt | 1 - .../CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt | 1 - .../CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt | 1 - .../RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt | 1 - Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt | 1 - .../CMP0037/CMP0037-OLD-reserved-stderr.txt | 1 - .../RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt | 1 - Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt | 1 - .../CMP0040/CMP0040-NEW-existing-target-stderr.txt | 1 - .../CMP0040/CMP0040-OLD-existing-target-stderr.txt | 1 - .../CMP0040/CMP0040-OLD-missing-target-stderr.txt | 1 - Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt | 1 - Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt | 1 - Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt | 1 - .../CMP0046-NEW-existing-dependency-stderr.txt | 1 - .../CMP0046-OLD-existing-dependency-stderr.txt | 1 - .../CMP0046-OLD-missing-dependency-stderr.txt | 1 - Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt | 1 - .../CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt | 1 - .../CMP0055-OLD-Reject-Arguments-stderr.txt | 1 - Tests/RunCMake/CMakeLists.txt | 24 +++- ...LinkImplementationFeatureCycleSolved-stderr.txt | 1 - .../DisallowedCommands/CMP0029-OLD-stderr.txt | 1 - .../File_Generate/CarryPermissions-stderr.txt | 1 - .../File_Generate/GenerateSource-stderr.txt | 1 - .../OutputNameMatchesOtherSources-stderr.txt | 1 - Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt | 1 - .../File_Generate/WriteIfDifferent-stderr.txt | 1 - .../ValidTarget-TARGET_PDB_FILE-stderr.txt | 1 - Tests/RunCMake/RunCMake.cmake | 5 +- Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt | 1 - .../LinkImplementationCycle3-stderr.txt | 1 - .../TargetSources/CMP0026-LOCATION-stderr.txt | 1 - .../RunCMake/TargetSources/ExportBuild-result.txt | 2 +- .../RunCMake/TargetSources/ExportBuild-stderr.txt | 1 - .../TargetSources/ExportInstall-result.txt | 1 - .../TargetSources/ExportInstall-stderr.txt | 1 - Tests/RunCMake/TargetSources/ExportInstall.cmake | 6 - Tests/RunCMake/TargetSources/RunCMakeTest.cmake | 1 - .../BinInInstallPrefix-CMP0052-NEW-result.txt} | 0 ...fix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../BinInInstallPrefix-CMP0052-OLD-result.txt | 0 .../BinInInstallPrefix-CMP0052-WARN-result.txt | 0 ...ix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} | 6 +- .../BinInInstallPrefix-result.txt} | 0 .../BinInInstallPrefix-stderr_SOURCES.txt | 6 + .../BinaryDirectoryInInterface-result.txt} | 0 ...toryInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../BinaryDirectoryInInterface-stderr_SOURCES.txt | 6 + .../BinaryDirectoryInInterface.cmake | 15 +++ .../CMakeLists.txt | 0 .../DirInInstallPrefix-result.txt | 0 .../build-property-paths/DirInInstallPrefix.cmake | 14 ++ .../InstallInBinDir-result.txt} | 0 ...InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../InstallInBinDir-stderr_SOURCES.txt | 6 + .../InstallInSrcDir-result.txt} | 0 ...InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../InstallInSrcDir-stderr_SOURCES.txt | 6 + .../InstallPrefixInInterface-result.txt | 0 .../InstallPrefixInInterface.cmake | 0 .../InstallToPrefixInSrcDirInSource-result.txt | 0 .../InstallToPrefixInSrcDirOutOfSource-result.txt | 0 .../RelativePathInGenex-result.txt} | 0 ...tivePathInGenex-stderr_INCLUDE_DIRECTORIES.txt} | 0 .../RelativePathInGenex-stderr_SOURCES.txt | 4 + .../build-property-paths/RelativePathInGenex.cmake | 13 ++ .../RelativePathInInterface-result.txt} | 0 ...PathInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 0 .../RelativePathInInterface-stderr_SOURCES.txt | 4 + .../RelativePathInInterface.cmake | 14 ++ .../RunCMakeTest.cmake | 43 +++--- .../SourceDirectoryInInterface-result.txt} | 0 ...toryInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../SourceDirectoryInInterface-stderr_SOURCES.txt | 6 + .../SourceDirectoryInInterface.cmake | 15 +++ .../SrcInInstallPrefix-CMP0052-NEW-result.txt} | 0 ...fix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../SrcInInstallPrefix-CMP0052-OLD-result.txt | 0 .../SrcInInstallPrefix-CMP0052-WARN-result.txt | 0 ...ix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} | 6 +- .../SrcInInstallPrefix-result.txt} | 0 .../SrcInInstallPrefix-stderr_SOURCES.txt | 6 + .../{CMP0004 => build-property-paths}/empty.cpp | 0 .../export-NOWARN-result.txt | 0 .../export-NOWARN.cmake | 15 +++ .../BinInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../BinInInstallPrefix-CMP0052-OLD-stderr.txt | 1 - .../BinaryDirectoryInInterface-result.txt | 1 - .../BinaryDirectoryInInterface.cmake | 11 -- .../DirInInstallPrefix-stderr.txt | 1 - .../include_directories/DirInInstallPrefix.cmake | 9 -- .../include_directories/InstallInBinDir-result.txt | 1 - .../include_directories/InstallInSrcDir-result.txt | 1 - .../InstallPrefixInInterface-stderr.txt | 1 - .../InstallToPrefixInSrcDirInSource-stderr.txt | 1 - .../InstallToPrefixInSrcDirOutOfSource-stderr.txt | 1 - .../RelativePathInGenex-result.txt | 1 - .../include_directories/RelativePathInGenex.cmake | 8 -- .../RelativePathInInterface-result.txt | 1 - .../RelativePathInInterface.cmake | 11 -- .../include_directories/RunCMakeTest.cmake | 141 -------------------- .../SourceDirectoryInInterface-result.txt | 1 - .../SourceDirectoryInInterface.cmake | 11 -- .../SrcInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../SrcInInstallPrefix-CMP0052-OLD-stderr.txt | 1 - .../include_directories/export-NOWARN-stderr.txt | 1 - .../install/SkipInstallRulesNoWarning1-stderr.txt | 1 - .../install/SkipInstallRulesNoWarning2-stderr.txt | 1 - .../interface_library/genex_link-stderr.txt | 1 - .../interface_library/no_shared_libs-stderr.txt | 1 - Tests/RunCMake/message/nomessage-stderr.txt | 1 - .../with_install_prefix-stderr.txt | 1 - Tests/RunCMake/project/CMP0048-NEW-stderr.txt | 1 - 138 files changed, 367 insertions(+), 376 deletions(-) create mode 100644 Help/release/dev/export-interface-source-files.rst create mode 100644 Tests/ExportImport/Export/Interface/source_target.cpp create mode 100644 Tests/ExportImport/Export/Interface/source_target_for_install.cpp create mode 100644 Tests/ExportImport/Import/Interface/source_target_test.cpp delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt delete mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt delete mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt delete mode 100644 Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt delete mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt delete mode 100644 Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt delete mode 100644 Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/GenerateSource-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt delete mode 100644 Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt delete mode 100644 Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt delete mode 100644 Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportBuild-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall-result.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{include_directories/BinaryDirectoryInInterface-stderr.txt => build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} (57%) rename Tests/RunCMake/{include_directories => build-property-paths}/BinInInstallPrefix-CMP0052-OLD-result.txt (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/BinInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt => build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} (63%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/BinInInstallPrefix-result.txt} (100%) create mode 100644 Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/BinaryDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt => build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt} (61%) create mode 100644 Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake copy Tests/RunCMake/{include_directories => build-property-paths}/CMakeLists.txt (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/DirInInstallPrefix-result.txt (100%) create mode 100644 Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/InstallInBinDir-result.txt} (100%) rename Tests/RunCMake/{include_directories/InstallInBinDir-stderr.txt => build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt} (62%) create mode 100644 Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/InstallInSrcDir-result.txt} (100%) rename Tests/RunCMake/{include_directories/InstallInSrcDir-stderr.txt => build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt} (67%) create mode 100644 Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt rename Tests/RunCMake/{include_directories => build-property-paths}/InstallPrefixInInterface-result.txt (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/InstallPrefixInInterface.cmake (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/InstallToPrefixInSrcDirInSource-result.txt (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/InstallToPrefixInSrcDirOutOfSource-result.txt (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/RelativePathInGenex-result.txt} (100%) rename Tests/RunCMake/{include_directories/RelativePathInGenex-stderr.txt => build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt} (100%) create mode 100644 Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/RelativePathInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/RelativePathInInterface-stderr.txt => build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt} (100%) create mode 100644 Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake copy Tests/RunCMake/{include_directories => build-property-paths}/RunCMakeTest.cmake (86%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/SourceDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/SourceDirectoryInInterface-stderr.txt => build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt} (78%) create mode 100644 Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/SrcInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt => build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} (66%) rename Tests/RunCMake/{include_directories => build-property-paths}/SrcInInstallPrefix-CMP0052-OLD-result.txt (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/SrcInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt => build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} (69%) rename Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => build-property-paths/SrcInInstallPrefix-result.txt} (100%) create mode 100644 Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004 => build-property-paths}/empty.cpp (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/export-NOWARN-result.txt (100%) rename Tests/RunCMake/{include_directories => build-property-paths}/export-NOWARN.cmake (71%) delete mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix.cmake delete mode 100644 Tests/RunCMake/include_directories/InstallInBinDir-result.txt delete mode 100644 Tests/RunCMake/include_directories/InstallInSrcDir-result.txt delete mode 100644 Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex.cmake delete mode 100644 Tests/RunCMake/include_directories/RelativePathInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/export-NOWARN-stderr.txt delete mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt delete mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt delete mode 100644 Tests/RunCMake/interface_library/genex_link-stderr.txt delete mode 100644 Tests/RunCMake/interface_library/no_shared_libs-stderr.txt delete mode 100644 Tests/RunCMake/message/nomessage-stderr.txt delete mode 100644 Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt delete mode 100644 Tests/RunCMake/project/CMP0048-NEW-stderr.txt hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 5 14:43:30 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 5 Feb 2015 14:43:30 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1036-g89d7b57 Message-ID: <20150205194330.EA76E49DB@public.kitware.com> 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 89d7b57de756afb8063fa69f113a86b4fe1e527a (commit) via 2c1e04033d314653938953d4890d017757a6386f (commit) from 72bef67dd5494a872e34131f0cb194a9ede3edd9 (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=89d7b57de756afb8063fa69f113a86b4fe1e527a commit 89d7b57de756afb8063fa69f113a86b4fe1e527a Merge: 72bef67 2c1e040 Author: Stephen Kelly AuthorDate: Thu Feb 5 14:43:30 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 14:43:30 2015 -0500 Merge topic 'export-interface-source-files' into next 2c1e0403 Add missing file. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2c1e04033d314653938953d4890d017757a6386f commit 2c1e04033d314653938953d4890d017757a6386f Author: Stephen Kelly AuthorDate: Thu Feb 5 20:43:10 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:43:10 2015 +0100 Add missing file. diff --git a/Tests/RunCMake/CMP0004/CMP0004-NEW-result.txt b/Tests/RunCMake/CMP0004/CMP0004-NEW-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CMP0004/CMP0004-NEW-result.txt @@ -0,0 +1 @@ +1 ----------------------------------------------------------------------- Summary of changes: .../CMP0004/{CMP0004-OLD-result.txt => CMP0004-NEW-result.txt} | 0 1 file changed, 0 insertions(+), 0 deletions(-) copy Tests/RunCMake/CMP0004/{CMP0004-OLD-result.txt => CMP0004-NEW-result.txt} (100%) hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 5 15:12:58 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 5 Feb 2015 15:12:58 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1057-g4464623 Message-ID: <20150205201258.ABB2A49AC@public.kitware.com> 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 446462370badf7bf80b74dc5209c72c7f6a88a26 (commit) via e2f3597e92bda18efc2631e318870008b6e230d5 (commit) via dd00d8774c30e6db232efdfb888f846fa328cd16 (commit) via f0661877be6685d701d2165ad1c09676ce54b0b2 (commit) via b00274b4ccb1178d92d3ebb559c4d1b9a23b0140 (commit) via 9b2bdd8aeaa3531a50e95baaeba2509ed84deec0 (commit) via 7814d8f59d405cdbe73e7f7e3bdebd7f690df687 (commit) via 849bac91454ecb24075463d4c6b4ccb2bffb6cfe (commit) via f9150275d98f3e71f0f99d7523a3a720fe755d56 (commit) via c8c5138c5db489670e2dd4d43910f54d7f5108d0 (commit) via a86c60c3fa87b0efc7bb1c8e49cb4c0f70922685 (commit) via 4426219c2acffb544d85f18755d4f0abf6f1461d (commit) via 8b3a7bd824907c63732ca425e0361f288210ce52 (commit) via 465e89bef4db18334424fc3f6c32e3b5398c5fbf (commit) via 84658067660e1b391fdfd3b203e03e7b071fd992 (commit) via 3fe17c6d70797ce4d73aac1942c2f6036ce660c8 (commit) via 7b2c2fb83d9973fce37864827024ec4f07de8684 (commit) via 3f3db74413fc6b0afe4aa484c0ada2d5271ef0ba (commit) via bd990c803b40e1532cab6b29c75414ca6f30e782 (commit) via 5fc53f1edb2d003595ef224b31a805c3af0dc0e6 (commit) via 421eadb45b48d40aa7d0b5e42a48df4ba94b9fc0 (commit) from 89d7b57de756afb8063fa69f113a86b4fe1e527a (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=446462370badf7bf80b74dc5209c72c7f6a88a26 commit 446462370badf7bf80b74dc5209c72c7f6a88a26 Merge: 89d7b57 e2f3597 Author: Stephen Kelly AuthorDate: Thu Feb 5 15:12:56 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 15:12:56 2015 -0500 Merge topic 'use-algorithms' into next e2f3597e cmSystemTools: Remove unnecessary comparison. dd00d877 cmSystemTools: Early return if size makes later comparison false. f0661877 Replace temporary bool by inlining warning condition. b00274b4 Replace loop with member algorithm. 9b2bdd8a cmComputeLinkDepends: Remove temporary iterator copy. 7814d8f5 Replace loop with algorithm. 849bac91 Replace a loop with std::transform. f9150275 Replace while loop with member insert. c8c5138c Take a size check outside of an inner loop. a86c60c3 Use insert member instead of back_inserter. 4426219c Convert while loop to member insert. 8b3a7bd8 Convert loop to algorithm. 465e89be Extract a prefix variable from loop. 84658067 Take computation out of loop. 3fe17c6d Convert a nested loop to use an algorithm. 7b2c2fb8 cmListCommand: Use std::find algorithm for FIND subcommand. ... http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e2f3597e92bda18efc2631e318870008b6e230d5 commit e2f3597e92bda18efc2631e318870008b6e230d5 Author: Stephen Kelly AuthorDate: Tue Jan 27 23:52:50 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:27 2015 +0100 cmSystemTools: Remove unnecessary comparison. We already know the string is uppercase. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index bb007ef..d3ab36b 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -376,7 +376,7 @@ bool cmSystemTools::IsInternallyOn(const char* val) { *c = static_cast(toupper(*c)); } - return (v == "I_ON" || v == "i_on"); + return v == "I_ON"; } bool cmSystemTools::IsOn(const char* val) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dd00d8774c30e6db232efdfb888f846fa328cd16 commit dd00d8774c30e6db232efdfb888f846fa328cd16 Author: Stephen Kelly AuthorDate: Tue Jan 27 23:50:42 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:27 2015 +0100 cmSystemTools: Early return if size makes later comparison false. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index b07dd78..bb007ef 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -366,6 +366,10 @@ bool cmSystemTools::IsInternallyOn(const char* val) return false; } std::basic_string v = val; + if (v.size() > 4) + { + return false; + } for(std::basic_string::iterator c = v.begin(); c != v.end(); c++) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f0661877be6685d701d2165ad1c09676ce54b0b2 commit f0661877be6685d701d2165ad1c09676ce54b0b2 Author: Stephen Kelly AuthorDate: Tue Jan 27 22:13:45 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:27 2015 +0100 Replace temporary bool by inlining warning condition. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index bd9cb26..7afe05f 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3641,24 +3641,20 @@ bool cmLocalGenerator::NeedBackwardsCompatibility_2_4() bool cmLocalGenerator::CheckDefinition(std::string const& define) const { // Many compilers do not support -DNAME(arg)=sdf so we disable it. - bool function_style = false; - std::string::size_type pos = define.find_first_of("(="); if (pos != std::string::npos) { - function_style = define[pos] == '('; - } - - if(function_style) - { - std::ostringstream e; - e << "WARNING: Function-style preprocessor definitions may not be " - << "passed on the compiler command line because many compilers " - << "do not support it.\n" - << "CMake is dropping a preprocessor definition: " << define << "\n" - << "Consider defining the macro in a (configured) header file.\n"; - cmSystemTools::Message(e.str().c_str()); - return false; + if (define[pos] == '(') + { + std::ostringstream e; + e << "WARNING: Function-style preprocessor definitions may not be " + << "passed on the compiler command line because many compilers " + << "do not support it.\n" + << "CMake is dropping a preprocessor definition: " << define << "\n" + << "Consider defining the macro in a (configured) header file.\n"; + cmSystemTools::Message(e.str().c_str()); + return false; + } } // Many compilers do not support # in the value so we disable it. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b00274b4ccb1178d92d3ebb559c4d1b9a23b0140 commit b00274b4ccb1178d92d3ebb559c4d1b9a23b0140 Author: Stephen Kelly AuthorDate: Tue Jan 27 22:09:17 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:27 2015 +0100 Replace loop with member algorithm. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 9109db4..bd9cb26 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3642,14 +3642,13 @@ bool cmLocalGenerator::CheckDefinition(std::string const& define) const { // Many compilers do not support -DNAME(arg)=sdf so we disable it. bool function_style = false; - for(const char* c = define.c_str(); *c && *c != '='; ++c) + + std::string::size_type pos = define.find_first_of("(="); + if (pos != std::string::npos) { - if(*c == '(') - { - function_style = true; - break; - } + function_style = define[pos] == '('; } + if(function_style) { std::ostringstream e; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9b2bdd8aeaa3531a50e95baaeba2509ed84deec0 commit 9b2bdd8aeaa3531a50e95baaeba2509ed84deec0 Author: Stephen Kelly AuthorDate: Tue Jan 27 21:34:01 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:27 2015 +0100 cmComputeLinkDepends: Remove temporary iterator copy. diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx index fa1bbcc..8652690 100644 --- a/Source/cmComputeLinkDepends.cxx +++ b/Source/cmComputeLinkDepends.cxx @@ -692,8 +692,7 @@ void cmComputeLinkDepends::CleanConstraintGraph() std::sort(i->begin(), i->end()); // Make the edge list unique. - EdgeList::iterator last = std::unique(i->begin(), i->end()); - i->erase(last, i->end()); + i->erase(std::unique(i->begin(), i->end()), i->end()); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7814d8f59d405cdbe73e7f7e3bdebd7f690df687 commit 7814d8f59d405cdbe73e7f7e3bdebd7f690df687 Author: Stephen Kelly AuthorDate: Sun Jan 25 16:02:46 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:26 2015 +0100 Replace loop with algorithm. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index ef42b38..f0bdea7 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -1153,15 +1153,11 @@ cmTarget::LinkLibraryType cmTarget::ComputeLinkType( // Check if any entry in the list matches this configuration. std::string configUpper = cmSystemTools::UpperCase(config); - for(std::vector::const_iterator i = debugConfigs.begin(); - i != debugConfigs.end(); ++i) + if (std::find(debugConfigs.begin(), debugConfigs.end(), configUpper) != + debugConfigs.end()) { - if(*i == configUpper) - { - return cmTarget::DEBUG; - } + return cmTarget::DEBUG; } - // The current configuration is not a debug configuration. return cmTarget::OPTIMIZED; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=849bac91454ecb24075463d4c6b4ccb2bffb6cfe commit 849bac91454ecb24075463d4c6b4ccb2bffb6cfe Author: Stephen Kelly AuthorDate: Sun Jan 25 16:01:07 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 21:00:17 2015 +0100 Replace a loop with std::transform. diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 652e451..875dbbd 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -2731,11 +2731,10 @@ std::vector const& cmake::GetDebugConfigs() { // Expand the specified list and convert to upper-case. cmSystemTools::ExpandListArgument(config_list, this->DebugConfigs); - for(std::vector::iterator i = this->DebugConfigs.begin(); - i != this->DebugConfigs.end(); ++i) - { - *i = cmSystemTools::UpperCase(*i); - } + std::transform(this->DebugConfigs.begin(), + this->DebugConfigs.end(), + this->DebugConfigs.begin(), + cmSystemTools::UpperCase); } // If no configurations were specified, use a default list. if(this->DebugConfigs.empty()) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f9150275d98f3e71f0f99d7523a3a720fe755d56 commit f9150275d98f3e71f0f99d7523a3a720fe755d56 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:36:59 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:59:06 2015 +0100 Replace while loop with member insert. diff --git a/Source/cmSetTargetPropertiesCommand.cxx b/Source/cmSetTargetPropertiesCommand.cxx index 9a7fab2..e41a0ca 100644 --- a/Source/cmSetTargetPropertiesCommand.cxx +++ b/Source/cmSetTargetPropertiesCommand.cxx @@ -40,14 +40,7 @@ bool cmSetTargetPropertiesCommand this->SetError("called with incorrect number of arguments."); return false; } - while (j != args.end()) - { - propertyPairs.push_back(*j); - ++j; - propertyPairs.push_back(*j); - ++j; - } - // break out of the loop because j is already == end + propertyPairs.insert(propertyPairs.end(), j, args.end()); break; } else if (doingFiles) diff --git a/Source/cmSetTestsPropertiesCommand.cxx b/Source/cmSetTestsPropertiesCommand.cxx index 032c78e..d079a19 100644 --- a/Source/cmSetTestsPropertiesCommand.cxx +++ b/Source/cmSetTestsPropertiesCommand.cxx @@ -41,14 +41,7 @@ bool cmSetTestsPropertiesCommand this->SetError("called with incorrect number of arguments."); return false; } - while (j != args.end()) - { - propertyPairs.push_back(*j); - ++j; - propertyPairs.push_back(*j); - ++j; - } - // break out of the loop because j is already == end + propertyPairs.insert(propertyPairs.end(), j, args.end()); break; } else if (doingFiles) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c8c5138c5db489670e2dd4d43910f54d7f5108d0 commit c8c5138c5db489670e2dd4d43910f54d7f5108d0 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:35:26 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:59:06 2015 +0100 Take a size check outside of an inner loop. diff --git a/Source/cmSetTargetPropertiesCommand.cxx b/Source/cmSetTargetPropertiesCommand.cxx index aeb8077..9a7fab2 100644 --- a/Source/cmSetTargetPropertiesCommand.cxx +++ b/Source/cmSetTargetPropertiesCommand.cxx @@ -35,15 +35,15 @@ bool cmSetTargetPropertiesCommand doingFiles = false; // now loop through the rest of the arguments, new style ++j; + if (std::distance(j, args.end()) % 2 != 0) + { + this->SetError("called with incorrect number of arguments."); + return false; + } while (j != args.end()) { propertyPairs.push_back(*j); ++j; - if(j == args.end()) - { - this->SetError("called with incorrect number of arguments."); - return false; - } propertyPairs.push_back(*j); ++j; } diff --git a/Source/cmSetTestsPropertiesCommand.cxx b/Source/cmSetTestsPropertiesCommand.cxx index e66d13d..032c78e 100644 --- a/Source/cmSetTestsPropertiesCommand.cxx +++ b/Source/cmSetTestsPropertiesCommand.cxx @@ -36,15 +36,15 @@ bool cmSetTestsPropertiesCommand doingFiles = false; // now loop through the rest of the arguments, new style ++j; + if (std::distance(j, args.end()) % 2 != 0) + { + this->SetError("called with incorrect number of arguments."); + return false; + } while (j != args.end()) { propertyPairs.push_back(*j); ++j; - if(j == args.end()) - { - this->SetError("called with incorrect number of arguments."); - return false; - } propertyPairs.push_back(*j); ++j; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a86c60c3fa87b0efc7bb1c8e49cb4c0f70922685 commit a86c60c3fa87b0efc7bb1c8e49cb4c0f70922685 Author: Stephen Kelly AuthorDate: Sat Jan 24 18:21:56 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:59:06 2015 +0100 Use insert member instead of back_inserter. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 98cb75c..ef42b38 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -5919,8 +5919,7 @@ cmTarget::GetCompatibleInterfaces(std::string const& config) const { \ std::vector props; \ cmSystemTools::ExpandListArgument(prop, props); \ - std::copy(props.begin(), props.end(), \ - std::inserter(compat.Props##x, compat.Props##x.begin())); \ + compat.Props##x.insert(props.begin(), props.end()); \ } CM_READ_COMPATIBLE_INTERFACE(BOOL, Bool) CM_READ_COMPATIBLE_INTERFACE(STRING, String) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4426219c2acffb544d85f18755d4f0abf6f1461d commit 4426219c2acffb544d85f18755d4f0abf6f1461d Author: Stephen Kelly AuthorDate: Sat Jan 24 18:18:56 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Convert while loop to member insert. diff --git a/Source/cmAddLibraryCommand.cxx b/Source/cmAddLibraryCommand.cxx index db2f6fb..edf82bd 100644 --- a/Source/cmAddLibraryCommand.cxx +++ b/Source/cmAddLibraryCommand.cxx @@ -435,11 +435,7 @@ bool cmAddLibraryCommand cmSystemTools::Message(msg.c_str() ,"Warning"); } - while (s != args.end()) - { - srclists.push_back(*s); - ++s; - } + srclists.insert(srclists.end(), s, args.end()); this->Makefile->AddLibrary(libName, type, srclists, excludeFromAll); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8b3a7bd824907c63732ca425e0361f288210ce52 commit 8b3a7bd824907c63732ca425e0361f288210ce52 Author: Stephen Kelly AuthorDate: Sun Jan 18 16:01:54 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Convert loop to algorithm. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 9a2186b..785d0ca 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2396,10 +2396,7 @@ void cmLocalUnixMakefileGenerator3 std::string outputForExisting = this->ConvertToOutputForExisting(tgtDir, relRetDir); std::string prefix = cd_cmd + outputForExisting + " && "; - std::vector::iterator i = commands.begin(); - for (; i != commands.end(); ++i) - { - *i = prefix + *i; - } + std::transform(commands.begin(), commands.end(), commands.begin(), + std::bind1st(std::plus(), prefix)); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=465e89bef4db18334424fc3f6c32e3b5398c5fbf commit 465e89bef4db18334424fc3f6c32e3b5398c5fbf Author: Stephen Kelly AuthorDate: Sun Jan 25 15:07:27 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Extract a prefix variable from loop. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 13c47c5..9a2186b 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2395,14 +2395,11 @@ void cmLocalUnixMakefileGenerator3 // each command. std::string outputForExisting = this->ConvertToOutputForExisting(tgtDir, relRetDir); + std::string prefix = cd_cmd + outputForExisting + " && "; std::vector::iterator i = commands.begin(); for (; i != commands.end(); ++i) { - std::string cmd = cd_cmd; - cmd += outputForExisting; - cmd += " && "; - cmd += *i; - *i = cmd; + *i = prefix + *i; } } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=84658067660e1b391fdfd3b203e03e7b071fd992 commit 84658067660e1b391fdfd3b203e03e7b071fd992 Author: Stephen Kelly AuthorDate: Sun Jan 18 15:59:03 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Take computation out of loop. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index fbf2140..13c47c5 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2393,11 +2393,13 @@ void cmLocalUnixMakefileGenerator3 // On UNIX we must construct a single shell command to change // directory and build because make resets the directory between // each command. + std::string outputForExisting = + this->ConvertToOutputForExisting(tgtDir, relRetDir); std::vector::iterator i = commands.begin(); for (; i != commands.end(); ++i) { std::string cmd = cd_cmd; - cmd += this->ConvertToOutputForExisting(tgtDir, relRetDir); + cmd += outputForExisting; cmd += " && "; cmd += *i; *i = cmd; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3fe17c6d70797ce4d73aac1942c2f6036ce660c8 commit 3fe17c6d70797ce4d73aac1942c2f6036ce660c8 Author: Stephen Kelly AuthorDate: Sat Jan 24 18:47:19 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Convert a nested loop to use an algorithm. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index d24af46..f76e428 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -372,18 +372,10 @@ bool cmListCommand size_t cc; for ( cc = 2; cc < args.size(); ++ cc ) { - size_t kk = 0; - while ( kk < varArgsExpanded.size() ) - { - if ( varArgsExpanded[kk] == args[cc] ) - { - varArgsExpanded.erase(varArgsExpanded.begin()+kk); - } - else - { - kk ++; - } - } + varArgsExpanded.erase( + std::remove(varArgsExpanded.begin(), varArgsExpanded.end(), + args[cc]), + varArgsExpanded.end()); } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7b2c2fb83d9973fce37864827024ec4f07de8684 commit 7b2c2fb83d9973fce37864827024ec4f07de8684 Author: Stephen Kelly AuthorDate: Sat Jan 24 18:43:37 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 cmListCommand: Use std::find algorithm for FIND subcommand. Adjust the format string to account for the input being a variable of type size_t as a result of using std::distance. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 107dca9..d24af46 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -287,18 +287,14 @@ bool cmListCommand::HandleFindCommand(std::vector const& args) return true; } - std::vector::iterator it; - unsigned int index = 0; - for ( it = varArgsExpanded.begin(); it != varArgsExpanded.end(); ++ it ) + std::vector::iterator it = + std::find(varArgsExpanded.begin(), varArgsExpanded.end(), args[2]); + if (it != varArgsExpanded.end()) { - if ( *it == args[2] ) - { - char indexString[32]; - sprintf(indexString, "%d", index); - this->Makefile->AddDefinition(variableName, indexString); - return true; - } - index++; + char indexString[32]; + sprintf(indexString, "%zu", std::distance(varArgsExpanded.begin(), it)); + this->Makefile->AddDefinition(variableName, indexString); + return true; } this->Makefile->AddDefinition(variableName, "-1"); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f3db74413fc6b0afe4aa484c0ada2d5271ef0ba commit 3f3db74413fc6b0afe4aa484c0ada2d5271ef0ba Author: Stephen Kelly AuthorDate: Sun Jan 25 14:26:57 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 cmMakefile: Remove ExpandSourceListArguments. diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index ba914e1..e709b9f 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -3576,19 +3576,6 @@ void cmMakefile::EnableLanguage(std::vector const & lang, optional); } -void cmMakefile::ExpandSourceListArguments( - std::vector const& arguments, - std::vector& newargs, unsigned int /* start */) const -{ - // now expand the args - unsigned int i; - for(i = 0; i < arguments.size(); ++i) - { - // List expansion will have been done already. - newargs.push_back(arguments[i]); - } -} - int cmMakefile::TryCompile(const std::string& srcdir, const std::string& bindir, const std::string& projectName, diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index bff8c12..5f22485 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -599,17 +599,6 @@ public: */ void AddSystemIncludeDirectories(const std::set &incs); - /** Expand out any arguements in the vector that have ; separated - * strings into multiple arguements. A new vector is created - * containing the expanded versions of all arguments in argsIn. - * This method differes from the one in cmSystemTools in that if - * the CmakeLists file is version 1.2 or earlier it will check for - * source lists being used without ${} around them - */ - void ExpandSourceListArguments(std::vector const& argsIn, - std::vector& argsOut, - unsigned int startArgumentIndex) const; - /** Get a cmSourceFile pointer for a given source name, if the name is * not found, then a null pointer is returned. */ http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bd990c803b40e1532cab6b29c75414ca6f30e782 commit bd990c803b40e1532cab6b29c75414ca6f30e782 Author: Stephen Kelly AuthorDate: Sun Jan 18 17:10:03 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Remove use of ExpandSourceListArguments. By now, it is only an expensive copy. diff --git a/Source/cmCPluginAPI.cxx b/Source/cmCPluginAPI.cxx index d0dc30a..691d80d 100644 --- a/Source/cmCPluginAPI.cxx +++ b/Source/cmCPluginAPI.cxx @@ -438,15 +438,14 @@ void CCONV cmExpandSourceListArguments(void *arg, char ***resArgv, unsigned int startArgumentIndex) { - cmMakefile *mf = static_cast(arg); + (void)arg; + (void)startArgumentIndex; std::vector result; - std::vector args2; int i; for (i = 0; i < numArgs; ++i) { - args2.push_back(args[i]); + result.push_back(args[i]); } - mf->ExpandSourceListArguments(args2, result, startArgumentIndex); int resargc = static_cast(result.size()); char **resargv = 0; if (resargc) diff --git a/Source/cmFLTKWrapUICommand.cxx b/Source/cmFLTKWrapUICommand.cxx index f7d8243..488beaa 100644 --- a/Source/cmFLTKWrapUICommand.cxx +++ b/Source/cmFLTKWrapUICommand.cxx @@ -31,9 +31,6 @@ bool cmFLTKWrapUICommand // get parameter for the command this->Target = args[0]; // Target that will use the generated files - std::vector newArgs; - this->Makefile->ExpandSourceListArguments(args,newArgs, 1); - // get the list of GUI files from which .cxx and .h will be generated std::string outputDirectory = this->Makefile->GetCurrentOutputDirectory(); @@ -45,8 +42,8 @@ bool cmFLTKWrapUICommand this->Makefile->AddIncludeDirectories( outputDirectories ); } - for(std::vector::iterator i = (newArgs.begin() + 1); - i != newArgs.end(); i++) + for(std::vector::const_iterator i = (args.begin() + 1); + i != args.end(); i++) { cmSourceFile *curr = this->Makefile->GetSource(*i); // if we should use the source GUI diff --git a/Source/cmInstallFilesCommand.cxx b/Source/cmInstallFilesCommand.cxx index 06a78e5..85e5345 100644 --- a/Source/cmInstallFilesCommand.cxx +++ b/Source/cmInstallFilesCommand.cxx @@ -15,9 +15,9 @@ // cmExecutableCommand bool cmInstallFilesCommand -::InitialPass(std::vector const& argsIn, cmExecutionStatus &) +::InitialPass(std::vector const& args, cmExecutionStatus &) { - if(argsIn.size() < 2) + if(args.size() < 2) { this->SetError("called with incorrect number of arguments"); return false; @@ -27,9 +27,6 @@ bool cmInstallFilesCommand this->Makefile->GetLocalGenerator() ->GetGlobalGenerator()->EnableInstallTarget(); - std::vector args; - this->Makefile->ExpandSourceListArguments(argsIn, args, 2); - this->Destination = args[0]; if((args.size() > 1) && (args[1] == "FILES")) diff --git a/Source/cmQTWrapCPPCommand.cxx b/Source/cmQTWrapCPPCommand.cxx index a984260..878562c 100644 --- a/Source/cmQTWrapCPPCommand.cxx +++ b/Source/cmQTWrapCPPCommand.cxx @@ -12,19 +12,15 @@ #include "cmQTWrapCPPCommand.h" // cmQTWrapCPPCommand -bool cmQTWrapCPPCommand::InitialPass(std::vector const& argsIn, +bool cmQTWrapCPPCommand::InitialPass(std::vector const& args, cmExecutionStatus &) { - if(argsIn.size() < 3 ) + if(args.size() < 3 ) { this->SetError("called with incorrect number of arguments"); return false; } - // This command supports source list inputs for compatibility. - std::vector args; - this->Makefile->ExpandSourceListArguments(argsIn, args, 2); - // Get the moc executable to run in the custom command. const char* moc_exe = this->Makefile->GetRequiredDefinition("QT_MOC_EXECUTABLE"); @@ -35,7 +31,7 @@ bool cmQTWrapCPPCommand::InitialPass(std::vector const& argsIn, this->Makefile->GetSafeDefinition(sourceList); // Create a rule for all sources listed. - for(std::vector::iterator j = (args.begin() + 2); + for(std::vector::const_iterator j = (args.begin() + 2); j != args.end(); ++j) { cmSourceFile *curr = this->Makefile->GetSource(*j); diff --git a/Source/cmQTWrapUICommand.cxx b/Source/cmQTWrapUICommand.cxx index dce59ef..9b92b1e 100644 --- a/Source/cmQTWrapUICommand.cxx +++ b/Source/cmQTWrapUICommand.cxx @@ -12,19 +12,15 @@ #include "cmQTWrapUICommand.h" // cmQTWrapUICommand -bool cmQTWrapUICommand::InitialPass(std::vector const& argsIn, +bool cmQTWrapUICommand::InitialPass(std::vector const& args, cmExecutionStatus &) { - if(argsIn.size() < 4 ) + if(args.size() < 4 ) { this->SetError("called with incorrect number of arguments"); return false; } - // This command supports source list inputs for compatibility. - std::vector args; - this->Makefile->ExpandSourceListArguments(argsIn, args, 3); - // Get the uic and moc executables to run in the custom commands. const char* uic_exe = this->Makefile->GetRequiredDefinition("QT_UIC_EXECUTABLE"); @@ -40,7 +36,7 @@ bool cmQTWrapUICommand::InitialPass(std::vector const& argsIn, this->Makefile->GetSafeDefinition(sourceList); // Create rules for all sources listed. - for(std::vector::iterator j = (args.begin() + 3); + for(std::vector::const_iterator j = (args.begin() + 3); j != args.end(); ++j) { cmSourceFile *curr = this->Makefile->GetSource(*j); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5fc53f1edb2d003595ef224b31a805c3af0dc0e6 commit 5fc53f1edb2d003595ef224b31a805c3af0dc0e6 Author: Stephen Kelly AuthorDate: Sat Jan 24 18:12:48 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 cmLocalGenerator: Replace loop with find_first_not_of diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 7ca7684..9109db4 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3204,11 +3204,7 @@ cmLocalGenerator std::string ssin = sin; // Avoid full paths by removing leading slashes. - std::string::size_type pos = 0; - for(;pos < ssin.size() && ssin[pos] == '/'; ++pos) - { - } - ssin = ssin.substr(pos); + ssin.erase(0, ssin.find_first_not_of("/")); // Avoid full paths by removing colons. cmSystemTools::ReplaceString(ssin, ":", "_"); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=421eadb45b48d40aa7d0b5e42a48df4ba94b9fc0 commit 421eadb45b48d40aa7d0b5e42a48df4ba94b9fc0 Author: Stephen Kelly AuthorDate: Thu Jan 29 23:19:40 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 20:44:25 2015 +0100 Remove use of cmsys_stl. It is not needed. diff --git a/Source/CPack/OSXScriptLauncher.cxx b/Source/CPack/OSXScriptLauncher.cxx index d9d6236..1d7afbd 100644 --- a/Source/CPack/OSXScriptLauncher.cxx +++ b/Source/CPack/OSXScriptLauncher.cxx @@ -26,7 +26,7 @@ int main(int argc, char* argv[]) { //if ( cmsys::SystemTools::FileExists( - cmsys_stl::string cwd = cmsys::SystemTools::GetCurrentWorkingDirectory(); + std::string cwd = cmsys::SystemTools::GetCurrentWorkingDirectory(); cmsys::ofstream ofs("/tmp/output.txt"); CFStringRef fileName; @@ -66,7 +66,7 @@ int main(int argc, char* argv[]) //dispose of the CF variable CFRelease(scriptFileURL); - cmsys_stl::string fullScriptPath = reinterpret_cast(path); + std::string fullScriptPath = reinterpret_cast(path); delete [] path; @@ -75,10 +75,10 @@ int main(int argc, char* argv[]) return 1; } - cmsys_stl::string scriptDirectory = cmsys::SystemTools::GetFilenamePath( + std::string scriptDirectory = cmsys::SystemTools::GetFilenamePath( fullScriptPath); ofs << fullScriptPath.c_str() << cmsys_ios::endl; - cmsys_stl::vector args; + std::vector args; args.push_back(fullScriptPath.c_str()); int cc; for ( cc = 1; cc < argc; ++ cc ) diff --git a/Source/CPack/cmCPackNSISGenerator.cxx b/Source/CPack/cmCPackNSISGenerator.cxx index 8f63ca2..fe6cc95 100644 --- a/Source/CPack/cmCPackNSISGenerator.cxx +++ b/Source/CPack/cmCPackNSISGenerator.cxx @@ -654,7 +654,7 @@ bool cmCPackNSISGenerator::GetListOfSubdirectories(const char* topdir, if (strcmp(dir.GetFile(static_cast(fileNum)),".") && strcmp(dir.GetFile(static_cast(fileNum)),"..")) { - cmsys_stl::string fullPath = topdir; + std::string fullPath = topdir; fullPath += "/"; fullPath += dir.GetFile(static_cast(fileNum)); if(cmsys::SystemTools::FileIsDirectory(fullPath) && diff --git a/Source/CTest/cmCTestCoverageHandler.cxx b/Source/CTest/cmCTestCoverageHandler.cxx index 08b7c66..1226d22 100644 --- a/Source/CTest/cmCTestCoverageHandler.cxx +++ b/Source/CTest/cmCTestCoverageHandler.cxx @@ -2542,10 +2542,10 @@ bool cmCTestCoverageHandler::IntersectsFilter(LabelSet const& labels) } std::vector ids; - cmsys_stl::set_intersection + std::set_intersection (labels.begin(), labels.end(), this->LabelFilter.begin(), this->LabelFilter.end(), - cmsys_stl::back_inserter(ids)); + std::back_inserter(ids)); return !ids.empty(); } diff --git a/Source/QtDialog/CMakeSetup.cxx b/Source/QtDialog/CMakeSetup.cxx index 82fa3a3..8a72a24 100644 --- a/Source/QtDialog/CMakeSetup.cxx +++ b/Source/QtDialog/CMakeSetup.cxx @@ -149,10 +149,10 @@ int main(int argc, char** argv) QStringList args = app.arguments(); if(args.count() == 2) { - cmsys_stl::string filePath = cmSystemTools::CollapseFullPath(args[1].toLocal8Bit().data()); + std::string filePath = cmSystemTools::CollapseFullPath(args[1].toLocal8Bit().data()); // check if argument is a directory containing CMakeCache.txt - cmsys_stl::string buildFilePath = + std::string buildFilePath = cmSystemTools::CollapseFullPath("CMakeCache.txt", filePath.c_str()); // check if argument is a CMakeCache.txt file @@ -163,7 +163,7 @@ int main(int argc, char** argv) } // check if argument is a directory containing CMakeLists.txt - cmsys_stl::string srcFilePath = + std::string srcFilePath = cmSystemTools::CollapseFullPath("CMakeLists.txt", filePath.c_str()); if(cmSystemTools::FileExists(buildFilePath.c_str())) diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx index 32d5cd3..fa1bbcc 100644 --- a/Source/cmComputeLinkDepends.cxx +++ b/Source/cmComputeLinkDepends.cxx @@ -669,7 +669,7 @@ void cmComputeLinkDepends::InferDependencies() for(++i; i != sets->end(); ++i) { DependSet intersection; - cmsys_stl::set_intersection + std::set_intersection (common.begin(), common.end(), i->begin(), i->end(), std::inserter(intersection, intersection.begin())); common = intersection; @@ -689,10 +689,10 @@ void cmComputeLinkDepends::CleanConstraintGraph() { // Sort the outgoing edges for each graph node so that the // original order will be preserved as much as possible. - cmsys_stl::sort(i->begin(), i->end()); + std::sort(i->begin(), i->end()); // Make the edge list unique. - EdgeList::iterator last = cmsys_stl::unique(i->begin(), i->end()); + EdgeList::iterator last = std::unique(i->begin(), i->end()); i->erase(last, i->end()); } } diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 579e715..8b893bc 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -71,7 +71,7 @@ static std::string fix_file_url_windows(const std::string& url) std::string ret = url; if(strncmp(url.c_str(), "file://", 7) == 0) { - cmsys_stl::wstring wurl = cmsys::Encoding::ToWide(url); + std::wstring wurl = cmsys::Encoding::ToWide(url); if(!wurl.empty()) { int mblen = WideCharToMultiByte(CP_ACP, 0, wurl.c_str(), -1, @@ -1843,7 +1843,7 @@ bool cmFileCopier::InstallDirectory(const char* source, if(!(strcmp(dir.GetFile(fileNum), ".") == 0 || strcmp(dir.GetFile(fileNum), "..") == 0)) { - cmsys_stl::string fromPath = source; + std::string fromPath = source; fromPath += "/"; fromPath += dir.GetFile(fileNum); std::string toPath = destination; diff --git a/Source/cmFindLibraryCommand.cxx b/Source/cmFindLibraryCommand.cxx index 78f0e9e..c499f61 100644 --- a/Source/cmFindLibraryCommand.cxx +++ b/Source/cmFindLibraryCommand.cxx @@ -195,12 +195,12 @@ struct cmFindLibraryHelper void RegexFromList(std::string& out, std::vector const& in); size_type GetPrefixIndex(std::string const& prefix) { - return cmsys_stl::find(this->Prefixes.begin(), this->Prefixes.end(), + return std::find(this->Prefixes.begin(), this->Prefixes.end(), prefix) - this->Prefixes.begin(); } size_type GetSuffixIndex(std::string const& suffix) { - return cmsys_stl::find(this->Suffixes.begin(), this->Suffixes.end(), + return std::find(this->Suffixes.begin(), this->Suffixes.end(), suffix) - this->Suffixes.begin(); } bool HasValidSuffix(std::string const& name); diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index e9735ed..b07dd78 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -2695,7 +2695,7 @@ bool cmSystemTools::RemoveRPath(std::string const& file, std::string* emsg, } if(se_count == 2 && se[1]->IndexInSection < se[0]->IndexInSection) { - cmsys_stl::swap(se[0], se[1]); + std::swap(se[0], se[1]); } // Get the size of the dynamic section header. diff --git a/Source/cmXMLSafe.cxx b/Source/cmXMLSafe.cxx index 72fdc34..99f5625 100644 --- a/Source/cmXMLSafe.cxx +++ b/Source/cmXMLSafe.cxx @@ -28,7 +28,7 @@ cmXMLSafe::cmXMLSafe(const char* s): } //---------------------------------------------------------------------------- -cmXMLSafe::cmXMLSafe(cmsys_stl::string const& s): +cmXMLSafe::cmXMLSafe(std::string const& s): Data(s.c_str()), Size(static_cast(s.length())), DoQuotes(true) @@ -43,7 +43,7 @@ cmXMLSafe& cmXMLSafe::Quotes(bool b) } //---------------------------------------------------------------------------- -cmsys_stl::string cmXMLSafe::str() +std::string cmXMLSafe::str() { cmsys_ios::ostringstream ss; ss << *this; diff --git a/Source/cmXMLSafe.h b/Source/cmXMLSafe.h index cba9f39..c23a90c 100644 --- a/Source/cmXMLSafe.h +++ b/Source/cmXMLSafe.h @@ -24,7 +24,7 @@ public: /** Construct with the data to be written. This assumes the data will exist for the duration of this object's life. */ cmXMLSafe(const char* s); - cmXMLSafe(cmsys_stl::string const& s); + cmXMLSafe(std::string const& s); /** Specify whether to escape quotes too. This is needed when writing the content of an attribute value. By default quotes @@ -32,7 +32,7 @@ public: cmXMLSafe& Quotes(bool b = true); /** Get the escaped data as a string. */ - cmsys_stl::string str(); + std::string str(); private: char const* Data; unsigned long Size; ----------------------------------------------------------------------- Summary of changes: Source/CPack/OSXScriptLauncher.cxx | 8 +++---- Source/CPack/cmCPackNSISGenerator.cxx | 2 +- Source/CTest/cmCTestCoverageHandler.cxx | 4 ++-- Source/QtDialog/CMakeSetup.cxx | 6 +++--- Source/cmAddLibraryCommand.cxx | 6 +----- Source/cmCPluginAPI.cxx | 7 +++--- Source/cmComputeLinkDepends.cxx | 7 +++--- Source/cmFLTKWrapUICommand.cxx | 7 ++---- Source/cmFileCommand.cxx | 4 ++-- Source/cmFindLibraryCommand.cxx | 4 ++-- Source/cmInstallFilesCommand.cxx | 7 ++---- Source/cmListCommand.cxx | 34 ++++++++++-------------------- Source/cmLocalGenerator.cxx | 33 +++++++++++------------------ Source/cmLocalUnixMakefileGenerator3.cxx | 14 +++++------- Source/cmMakefile.cxx | 13 ------------ Source/cmMakefile.h | 11 ---------- Source/cmQTWrapCPPCommand.cxx | 10 +++------ Source/cmQTWrapUICommand.cxx | 10 +++------ Source/cmSetTargetPropertiesCommand.cxx | 15 ++++--------- Source/cmSetTestsPropertiesCommand.cxx | 15 ++++--------- Source/cmSystemTools.cxx | 8 +++++-- Source/cmTarget.cxx | 13 ++++-------- Source/cmXMLSafe.cxx | 4 ++-- Source/cmXMLSafe.h | 4 ++-- Source/cmake.cxx | 9 ++++---- 25 files changed, 85 insertions(+), 170 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 5 16:03:28 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 5 Feb 2015 16:03:28 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1059-g4587caf Message-ID: <20150205210328.0E1E8AAC77@public.kitware.com> 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 4587caf8dc727e8a18b28cef9755c0b1d4500f4f (commit) via 9af29a6dc3f0fc2c21450e76f041561418c88dd7 (commit) from 446462370badf7bf80b74dc5209c72c7f6a88a26 (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=4587caf8dc727e8a18b28cef9755c0b1d4500f4f commit 4587caf8dc727e8a18b28cef9755c0b1d4500f4f Merge: 4464623 9af29a6 Author: Stephen Kelly AuthorDate: Thu Feb 5 16:03:27 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 16:03:27 2015 -0500 Merge topic 'export-interface-source-files' into next 9af29a6d Remove message. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9af29a6dc3f0fc2c21450e76f041561418c88dd7 commit 9af29a6dc3f0fc2c21450e76f041561418c88dd7 Author: Stephen Kelly AuthorDate: Thu Feb 5 22:02:48 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 22:02:48 2015 +0100 Remove message. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index c7bef67..6519682 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -3,7 +3,6 @@ macro(add_RunCMake_test test) set(TEST_ARGS ${ARGN}) if ("${ARGV1}" STREQUAL "TEST_DIR") - message("HERE ${ARGV1}") if ("${ARGV2}" STREQUAL "") message(FATAL_ERROR "Invalid args") endif() ----------------------------------------------------------------------- Summary of changes: Tests/RunCMake/CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 5 16:20:17 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 5 Feb 2015 16:20:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1065-gdd90ab2 Message-ID: <20150205212017.47257A8122@public.kitware.com> 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 dd90ab2b3d50268705c5a6ca3e0aa9c9d16a3038 (commit) via 3a9bb53a0034c37ac38581fc3db63c3431682d2a (commit) via 47504ae2100cd13eb89b612ed819cc3d9548b12a (commit) via 7b593d4fc851a60ac4a8cc75d29aae1e9b711f86 (commit) via 4e9a4428f859fef71b774b095716d470b5ac7334 (commit) via 3e9d6e5439e7f35dbc5961c8d1bb5b2d35bfc451 (commit) from 4587caf8dc727e8a18b28cef9755c0b1d4500f4f (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=dd90ab2b3d50268705c5a6ca3e0aa9c9d16a3038 commit dd90ab2b3d50268705c5a6ca3e0aa9c9d16a3038 Merge: 4587caf 3a9bb53 Author: Stephen Kelly AuthorDate: Thu Feb 5 16:20:15 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 16:20:15 2015 -0500 Merge topic 'cmStandardIncludes-cleanup' into next 3a9bb53a cmStandardIncludes: Remove functional header. 47504ae2 cmStandardIncludes: Remove list include. 7b593d4f cmStandardIncludes: Remove deque include. 4e9a4428 cmStandardIncludes: Remove some VS6 workarounds. 3e9d6e54 cmStandardIncludes: Remove compatibility typedef added for MSVC6. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3a9bb53a0034c37ac38581fc3db63c3431682d2a commit 3a9bb53a0034c37ac38581fc3db63c3431682d2a Author: Stephen Kelly AuthorDate: Thu Feb 5 22:08:53 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 22:19:30 2015 +0100 cmStandardIncludes: Remove functional header. It is unused. diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 8b4742a..262e9a6 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -51,7 +51,6 @@ #include #include #include -#include #include #include http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=47504ae2100cd13eb89b612ed819cc3d9548b12a commit 47504ae2100cd13eb89b612ed819cc3d9548b12a Author: Stephen Kelly AuthorDate: Mon Jan 12 21:17:55 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 22:19:30 2015 +0100 cmStandardIncludes: Remove list include. Include it only where used. diff --git a/Source/CPack/cmCPackGenerator.cxx b/Source/CPack/cmCPackGenerator.cxx index 1c670d2..006239a 100644 --- a/Source/CPack/cmCPackGenerator.cxx +++ b/Source/CPack/cmCPackGenerator.cxx @@ -25,6 +25,7 @@ #include #include #include +#include #if defined(__HAIKU__) #include diff --git a/Source/CTest/cmCTestGlobalVC.h b/Source/CTest/cmCTestGlobalVC.h index cb0d165..29e0a61 100644 --- a/Source/CTest/cmCTestGlobalVC.h +++ b/Source/CTest/cmCTestGlobalVC.h @@ -14,6 +14,8 @@ #include "cmCTestVC.h" +#include + /** \class cmCTestGlobalVC * \brief Base class for handling globally-versioned trees * diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx b/Source/CTest/cmCTestMultiProcessHandler.cxx index f9e8a3c..f223127 100644 --- a/Source/CTest/cmCTestMultiProcessHandler.cxx +++ b/Source/CTest/cmCTestMultiProcessHandler.cxx @@ -16,6 +16,7 @@ #include "cmSystemTools.h" #include #include +#include #include #include diff --git a/Source/CTest/cmCTestSVN.h b/Source/CTest/cmCTestSVN.h index c6548e3..17bf7cb 100644 --- a/Source/CTest/cmCTestSVN.h +++ b/Source/CTest/cmCTestSVN.h @@ -14,6 +14,8 @@ #include "cmCTestGlobalVC.h" +#include + /** \class cmCTestSVN * \brief Interaction with subversion command-line tool * diff --git a/Source/cmCommands.h b/Source/cmCommands.h index c56673f..e902853 100644 --- a/Source/cmCommands.h +++ b/Source/cmCommands.h @@ -13,6 +13,8 @@ #define cmCommands_h #include "cmStandardIncludes.h" +#include + class cmCommand; /** * Global function to return all compiled in commands. diff --git a/Source/cmConditionEvaluator.h b/Source/cmConditionEvaluator.h index 01624f9..fcef234 100644 --- a/Source/cmConditionEvaluator.h +++ b/Source/cmConditionEvaluator.h @@ -15,6 +15,8 @@ #include "cmCommand.h" #include "cmExpandedCommandArgument.h" +#include + class cmConditionEvaluator { public: diff --git a/Source/cmFileLockPool.h b/Source/cmFileLockPool.h index baef310..f0614a3 100644 --- a/Source/cmFileLockPool.h +++ b/Source/cmFileLockPool.h @@ -14,6 +14,8 @@ #include "cmStandardIncludes.h" +#include + class cmFileLockResult; class cmFileLock; diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index ba914e1..ff3e35d 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -38,6 +38,7 @@ #include #include +#include #include // for isspace #include diff --git a/Source/cmQtAutoGenerators.h b/Source/cmQtAutoGenerators.h index 79fa5df..f74e3c5 100644 --- a/Source/cmQtAutoGenerators.h +++ b/Source/cmQtAutoGenerators.h @@ -14,6 +14,8 @@ #ifndef cmQtAutoGenerators_h #define cmQtAutoGenerators_h +#include + class cmGlobalGenerator; class cmMakefile; diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index cf23feb..8b4742a 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -53,7 +53,6 @@ #include #include #include -#include #include // include the "c" string header diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 652e451..4b6af0a 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -103,6 +103,8 @@ #include // struct stat +#include + static bool cmakeCheckStampFile(const char* stampName); static bool cmakeCheckStampList(const char* stampName); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7b593d4fc851a60ac4a8cc75d29aae1e9b711f86 commit 7b593d4fc851a60ac4a8cc75d29aae1e9b711f86 Author: Stephen Kelly AuthorDate: Mon Jan 12 21:11:16 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 22:19:29 2015 +0100 cmStandardIncludes: Remove deque include. Include it only where used. diff --git a/Source/CTest/cmCTestBuildHandler.h b/Source/CTest/cmCTestBuildHandler.h index 09346f9..d13d5cf 100644 --- a/Source/CTest/cmCTestBuildHandler.h +++ b/Source/CTest/cmCTestBuildHandler.h @@ -19,6 +19,8 @@ #include +#include + class cmMakefile; /** \class cmCTestBuildHandler diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index bff8c12..110db24 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -35,6 +35,7 @@ #endif #include +#include class cmFunctionBlocker; class cmCommand; diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 7a966d8..cf23feb 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -55,7 +55,6 @@ #include #include #include -#include // include the "c" string header #include http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4e9a4428f859fef71b774b095716d470b5ac7334 commit 4e9a4428f859fef71b774b095716d470b5ac7334 Author: Stephen Kelly AuthorDate: Mon Jan 12 21:05:34 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 22:19:29 2015 +0100 cmStandardIncludes: Remove some VS6 workarounds. Added in commit v2.6.0~2824 (COMP: Fix warnings in system headers on VS6., 2006-08-29), but no longer needed. diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 3b46e8d..7a966d8 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -22,7 +22,6 @@ #ifdef _MSC_VER #pragma warning ( disable : 4786 ) #pragma warning ( disable : 4503 ) -#pragma warning ( disable : 4512 ) /* operator=() could not be generated */ #endif @@ -42,11 +41,6 @@ # include #endif -// Avoid warnings in system headers. -#if defined(_MSC_VER) -# pragma warning (push,1) -#endif - #include #include #include @@ -63,10 +57,6 @@ #include #include -#if defined(_MSC_VER) -# pragma warning(pop) -#endif - // include the "c" string header #include #include http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3e9d6e5439e7f35dbc5961c8d1bb5b2d35bfc451 commit 3e9d6e5439e7f35dbc5961c8d1bb5b2d35bfc451 Author: Stephen Kelly AuthorDate: Mon Jan 12 20:51:42 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 22:19:20 2015 +0100 cmStandardIncludes: Remove compatibility typedef added for MSVC6. Added in commit v2.4.0~3401 (ERR: Fix build problems on Visual Studio 6, 2004-01-26) diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 646300d..3b46e8d 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -72,10 +72,6 @@ #include #include -#if defined( _MSC_VER ) -typedef unsigned short mode_t; -#endif - // use this class to shrink the size of symbols in .o files // std::string is really basic_string<....lots of stuff....> // when combined with a map or set, the symbols can be > 2000 chars! ----------------------------------------------------------------------- Summary of changes: Source/CPack/cmCPackGenerator.cxx | 1 + Source/CTest/cmCTestBuildHandler.h | 2 ++ Source/CTest/cmCTestGlobalVC.h | 2 ++ Source/CTest/cmCTestMultiProcessHandler.cxx | 1 + Source/CTest/cmCTestSVN.h | 2 ++ Source/cmCommands.h | 2 ++ Source/cmConditionEvaluator.h | 2 ++ Source/cmFileLockPool.h | 2 ++ Source/cmMakefile.cxx | 1 + Source/cmMakefile.h | 1 + Source/cmQtAutoGenerators.h | 2 ++ Source/cmStandardIncludes.h | 17 ----------------- Source/cmake.cxx | 2 ++ 13 files changed, 20 insertions(+), 17 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 5 17:54:16 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 5 Feb 2015 17:54:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1067-gcd87066 Message-ID: <20150205225416.E9FF5AAB02@public.kitware.com> 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 cd8706623698962a152d8dce29a3c03bf8008cf7 (commit) via 641c5583339c945d07c2f54e235e2c6662d471b5 (commit) from dd90ab2b3d50268705c5a6ca3e0aa9c9d16a3038 (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=cd8706623698962a152d8dce29a3c03bf8008cf7 commit cd8706623698962a152d8dce29a3c03bf8008cf7 Merge: dd90ab2 641c558 Author: Stephen Kelly AuthorDate: Thu Feb 5 17:54:16 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 5 17:54:16 2015 -0500 Merge topic 'cmStandardIncludes-cleanup' into next 641c5583 Revert "cmStandardIncludes: Remove compatibility typedef added for MSVC6." http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=641c5583339c945d07c2f54e235e2c6662d471b5 commit 641c5583339c945d07c2f54e235e2c6662d471b5 Author: Stephen Kelly AuthorDate: Thu Feb 5 23:53:49 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 5 23:53:49 2015 +0100 Revert "cmStandardIncludes: Remove compatibility typedef added for MSVC6." This reverts commit 3e9d6e5439e7f35dbc5961c8d1bb5b2d35bfc451. diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 262e9a6..0909719 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -59,6 +59,10 @@ #include #include +#if defined( _MSC_VER ) +typedef unsigned short mode_t; +#endif + // use this class to shrink the size of symbols in .o files // std::string is really basic_string<....lots of stuff....> // when combined with a map or set, the symbols can be > 2000 chars! ----------------------------------------------------------------------- Summary of changes: Source/cmStandardIncludes.h | 4 ++++ 1 file changed, 4 insertions(+) hooks/post-receive -- CMake From kwrobot at kitware.com Fri Feb 6 00:01:21 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Fri, 6 Feb 2015 00:01:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1019-g3f73531 Message-ID: <20150206050122.657F3AAE82@public.kitware.com> 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 3f73531d4e415c9c6182e162028eb146922d3c90 (commit) from 098160d5f2a1aa35d2f14c585dd87cefd8f56f41 (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=3f73531d4e415c9c6182e162028eb146922d3c90 commit 3f73531d4e415c9c6182e162028eb146922d3c90 Author: Kitware Robot AuthorDate: Fri Feb 6 00:01:16 2015 -0500 Commit: Kitware Robot CommitDate: Fri Feb 6 00:01:16 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index a7d6c4b..ee29533 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150205) +set(CMake_VERSION_PATCH 20150206) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Feb 6 09:22:05 2015 From: brad.king at kitware.com (Brad King) Date: Fri, 6 Feb 2015 09:22:05 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1070-ge74b7b5 Message-ID: <20150206142205.E43EAAAED9@public.kitware.com> 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 e74b7b59722283f44775831ddb0357bdcc9c798a (commit) via 8521fdf56e4908676c28c6bbdda3f1fb2284d3d7 (commit) via 69ac6d27555cd4819d0c7f40e4471c6f885e23ab (commit) from cd8706623698962a152d8dce29a3c03bf8008cf7 (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=e74b7b59722283f44775831ddb0357bdcc9c798a commit e74b7b59722283f44775831ddb0357bdcc9c798a Merge: cd87066 8521fdf Author: Brad King AuthorDate: Fri Feb 6 09:22:04 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 09:22:04 2015 -0500 Merge topic 'fix-make-parallel-output' into next 8521fdf5 Makefile: Fix output during parallel builds (#12991) 69ac6d27 bootstrap: Enable color Makefile output http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8521fdf56e4908676c28c6bbdda3f1fb2284d3d7 commit 8521fdf56e4908676c28c6bbdda3f1fb2284d3d7 Author: Brad King AuthorDate: Thu Feb 5 16:48:16 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 08:36:51 2015 -0500 Makefile: Fix output during parallel builds (#12991) Replace use of separate "cmake -E cmake_progress_report" and "cmake -E cmake_echo_color" commands to report the progress and message portions of build output lines with --progress-* options to the latter to print everything with a single command. The line buffering of the stdout FILE stream should cause the whole line to be printed with one atomic write. This will avoid inter-mixing of line-wise messages from different processes during a parallel build. diff --git a/Source/cmGlobalUnixMakefileGenerator3.cxx b/Source/cmGlobalUnixMakefileGenerator3.cxx index 5f1bb83..e0ccaa9 100644 --- a/Source/cmGlobalUnixMakefileGenerator3.cxx +++ b/Source/cmGlobalUnixMakefileGenerator3.cxx @@ -779,29 +779,24 @@ cmGlobalUnixMakefileGenerator3 localName += "/all"; depends.clear(); - std::string progressDir = - lg->GetMakefile()->GetHomeOutputDirectory(); - progressDir += cmake::GetCMakeFilesDirectory(); + cmLocalUnixMakefileGenerator3::EchoProgress progress; + progress.Dir = lg->GetMakefile()->GetHomeOutputDirectory(); + progress.Dir += cmake::GetCMakeFilesDirectory(); + { + std::ostringstream progressArg; + const char* sep = ""; + std::vector& progFiles = + this->ProgressMap[gtarget->Target].Marks; + for (std::vector::iterator i = progFiles.begin(); + i != progFiles.end(); ++i) { - std::ostringstream progCmd; - progCmd << "$(CMAKE_COMMAND) -E cmake_progress_report "; - // all target counts - progCmd << lg->Convert(progressDir, - cmLocalGenerator::FULL, - cmLocalGenerator::SHELL); - progCmd << " "; - std::vector& progFiles = - this->ProgressMap[gtarget->Target].Marks; - for (std::vector::iterator i = progFiles.begin(); - i != progFiles.end(); ++i) - { - progCmd << " " << *i; - } - commands.push_back(progCmd.str()); + progressArg << sep << *i; + sep = ","; } - progressDir = "Built target "; - progressDir += name; - lg->AppendEcho(commands,progressDir.c_str()); + progress.Arg = progressArg.str(); + } + lg->AppendEcho(commands, "Built target " + name, + cmLocalUnixMakefileGenerator3::EchoNormal, &progress); this->AppendGlobalTargetDepends(depends,*gtarget->Target); lg->WriteMakeRule(ruleFileStream, "All Build rule for target.", @@ -819,15 +814,13 @@ cmGlobalUnixMakefileGenerator3 // Write the rule. commands.clear(); - progressDir = lg->GetMakefile()->GetHomeOutputDirectory(); - progressDir += cmake::GetCMakeFilesDirectory(); { // TODO: Convert the total progress count to a make variable. std::ostringstream progCmd; progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # in target - progCmd << lg->Convert(progressDir, + progCmd << lg->Convert(progress.Dir, cmLocalGenerator::FULL, cmLocalGenerator::SHELL); // @@ -843,7 +836,7 @@ cmGlobalUnixMakefileGenerator3 { std::ostringstream progCmd; progCmd << "$(CMAKE_COMMAND) -E cmake_progress_start "; // # 0 - progCmd << lg->Convert(progressDir, + progCmd << lg->Convert(progress.Dir, cmLocalGenerator::FULL, cmLocalGenerator::SHELL); progCmd << " 0"; diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 72d4ef0..c60a9c7 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -1346,8 +1346,9 @@ cmLocalUnixMakefileGenerator3 //---------------------------------------------------------------------------- void cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, - const char* text, - EchoColor color) + std::string const& text, + EchoColor color, + EchoProgress const* progress) { // Choose the color for the text. std::string color_name; @@ -1380,7 +1381,7 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, // Echo one line at a time. std::string line; line.reserve(200); - for(const char* c = text;; ++c) + for(const char* c = text.c_str();; ++c) { if(*c == '\n' || *c == '\0') { @@ -1389,7 +1390,7 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, { // Add a command to echo this line. std::string cmd; - if(color_name.empty()) + if(color_name.empty() && !progress) { // Use the native echo command. cmd = "@echo "; @@ -1400,6 +1401,17 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, // Use cmake to echo the text in color. cmd = "@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) "; cmd += color_name; + if (progress) + { + cmd += "--progress-dir="; + cmd += this->Convert(progress->Dir, + cmLocalGenerator::FULL, + cmLocalGenerator::SHELL); + cmd += " "; + cmd += "--progress-num="; + cmd += progress->Arg; + cmd += " "; + } cmd += this->EscapeForShell(line); } commands.push_back(cmd); @@ -1408,6 +1420,9 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, // Reset the line to emtpy. line = ""; + // Progress appears only on first line. + progress = 0; + // Terminate on end-of-string. if(*c == '\0') { diff --git a/Source/cmLocalUnixMakefileGenerator3.h b/Source/cmLocalUnixMakefileGenerator3.h index 7c8e27f..1ff5e7f 100644 --- a/Source/cmLocalUnixMakefileGenerator3.h +++ b/Source/cmLocalUnixMakefileGenerator3.h @@ -184,8 +184,9 @@ public: // append an echo command enum EchoColor { EchoNormal, EchoDepend, EchoBuild, EchoLink, EchoGenerate, EchoGlobal }; - void AppendEcho(std::vector& commands, const char* text, - EchoColor color = EchoNormal); + struct EchoProgress { std::string Dir; std::string Arg; }; + void AppendEcho(std::vector& commands, std::string const& text, + EchoColor color = EchoNormal, EchoProgress const* = 0); /** Get whether the makefile is to have color. */ bool GetColorMakefile() const { return this->ColorMakefile; } diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx index 7ed0c10..20207f5 100644 --- a/Source/cmMakefileTargetGenerator.cxx +++ b/Source/cmMakefileTargetGenerator.cxx @@ -618,16 +618,19 @@ cmMakefileTargetGenerator std::vector commands; // add in a progress call if needed - this->AppendProgress(commands); + this->NumberOfProgressActions++; if(!this->NoRuleMessages) { + cmLocalUnixMakefileGenerator3::EchoProgress progress; + this->MakeEchoProgress(progress); std::string buildEcho = "Building "; buildEcho += lang; buildEcho += " object "; buildEcho += relativeObj; this->LocalGenerator->AppendEcho - (commands, buildEcho.c_str(), cmLocalUnixMakefileGenerator3::EchoBuild); + (commands, buildEcho.c_str(), cmLocalUnixMakefileGenerator3::EchoBuild, + &progress); } std::string targetOutPathReal; @@ -1200,12 +1203,15 @@ void cmMakefileTargetGenerator if(!comment.empty()) { // add in a progress call if needed - this->AppendProgress(commands); + this->NumberOfProgressActions++; if(!this->NoRuleMessages) { + cmLocalUnixMakefileGenerator3::EchoProgress progress; + this->MakeEchoProgress(progress); this->LocalGenerator ->AppendEcho(commands, comment.c_str(), - cmLocalUnixMakefileGenerator3::EchoGenerate); + cmLocalUnixMakefileGenerator3::EchoGenerate, + &progress); } } @@ -1263,22 +1269,14 @@ void cmMakefileTargetGenerator //---------------------------------------------------------------------------- void -cmMakefileTargetGenerator::AppendProgress(std::vector& commands) +cmMakefileTargetGenerator +::MakeEchoProgress(cmLocalUnixMakefileGenerator3::EchoProgress& progress) const { - this->NumberOfProgressActions++; - if(this->NoRuleMessages) - { - return; - } - std::string progressDir = this->Makefile->GetHomeOutputDirectory(); - progressDir += cmake::GetCMakeFilesDirectory(); - std::ostringstream progCmd; - progCmd << "$(CMAKE_COMMAND) -E cmake_progress_report "; - progCmd << this->LocalGenerator->Convert(progressDir, - cmLocalGenerator::FULL, - cmLocalGenerator::SHELL); - progCmd << " $(CMAKE_PROGRESS_" << this->NumberOfProgressActions << ")"; - commands.push_back(progCmd.str()); + progress.Dir = this->Makefile->GetHomeOutputDirectory(); + progress.Dir += cmake::GetCMakeFilesDirectory(); + std::ostringstream progressArg; + progressArg << "$(CMAKE_PROGRESS_" << this->NumberOfProgressActions << ")"; + progress.Arg = progressArg.str(); } //---------------------------------------------------------------------------- diff --git a/Source/cmMakefileTargetGenerator.h b/Source/cmMakefileTargetGenerator.h index e31e086..b072cfa 100644 --- a/Source/cmMakefileTargetGenerator.h +++ b/Source/cmMakefileTargetGenerator.h @@ -109,7 +109,7 @@ protected: void GenerateExtraOutput(const char* out, const char* in, bool symbolic = false); - void AppendProgress(std::vector& commands); + void MakeEchoProgress(cmLocalUnixMakefileGenerator3::EchoProgress&) const; // write out the variable that lists the objects for this target void WriteObjectsVariable(std::string& variableName, diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 6b04d26..5260cb0 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -534,48 +534,9 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) // Command to report progress for a build else if (args[1] == "cmake_progress_report" && args.size() >= 3) { - std::string dirName = args[2]; - dirName += "/Progress"; - std::string fName; - FILE *progFile; - - // read the count - fName = dirName; - fName += "/count.txt"; - progFile = cmsys::SystemTools::Fopen(fName,"r"); - int count = 0; - if (!progFile) - { - return 0; - } - else - { - if (1!=fscanf(progFile,"%i",&count)) - { - cmSystemTools::Message("Could not read from progress file."); - } - fclose(progFile); - } - unsigned int i; - for (i = 3; i < args.size(); ++i) - { - fName = dirName; - fName += "/"; - fName += args[i]; - progFile = cmsys::SystemTools::Fopen(fName,"w"); - if (progFile) - { - fprintf(progFile,"empty"); - fclose(progFile); - } - } - int fileNum = static_cast - (cmsys::Directory::GetNumberOfFilesInDirectory(dirName)); - if (count > 0) - { - // print the progress - fprintf(stdout,"[%3i%%] ",((fileNum-3)*100)/count); - } + // This has been superseded by cmake_echo_color --progress-* + // options. We leave it here to avoid errors if somehow this + // is invoked by an existing makefile without regenerating. return 0; } @@ -987,6 +948,65 @@ bool cmcmd::SymlinkInternal(std::string const& file, std::string const& link) } //---------------------------------------------------------------------------- +static void cmcmdProgressReport(std::string const& dir, + std::string const& num) +{ + std::string dirName = dir; + dirName += "/Progress"; + std::string fName; + FILE *progFile; + + // read the count + fName = dirName; + fName += "/count.txt"; + progFile = cmsys::SystemTools::Fopen(fName,"r"); + int count = 0; + if (!progFile) + { + return; + } + else + { + if (1!=fscanf(progFile,"%i",&count)) + { + cmSystemTools::Message("Could not read from progress file."); + } + fclose(progFile); + } + const char* last = num.c_str(); + for(const char* c = last;; ++c) + { + if (*c == ',' || *c == '\0') + { + if (c != last) + { + fName = dirName; + fName += "/"; + fName.append(last, c-last); + progFile = cmsys::SystemTools::Fopen(fName,"w"); + if (progFile) + { + fprintf(progFile,"empty"); + fclose(progFile); + } + } + if(*c == '\0') + { + break; + } + last = c + 1; + } + } + int fileNum = static_cast + (cmsys::Directory::GetNumberOfFilesInDirectory(dirName)); + if (count > 0) + { + // print the progress + fprintf(stdout,"[%3i%%] ",((fileNum-3)*100)/count); + } +} + +//---------------------------------------------------------------------------- int cmcmd::ExecuteEchoColor(std::vector& args) { // The arguments are @@ -996,6 +1016,7 @@ int cmcmd::ExecuteEchoColor(std::vector& args) bool enabled = true; int color = cmsysTerminal_Color_Normal; bool newline = true; + std::string progressDir; for(unsigned int i=2; i < args.size(); ++i) { if(args[i].find("--switch=") == 0) @@ -1014,6 +1035,18 @@ int cmcmd::ExecuteEchoColor(std::vector& args) } } } + else if(cmHasLiteralPrefix(args[i], "--progress-dir=")) + { + progressDir = args[i].substr(15); + } + else if(cmHasLiteralPrefix(args[i], "--progress-num=")) + { + if (!progressDir.empty()) + { + std::string const& progressNum = args[i].substr(15); + cmcmdProgressReport(progressDir, progressNum); + } + } else if(args[i] == "--normal") { color = cmsysTerminal_Color_Normal; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=69ac6d27555cd4819d0c7f40e4471c6f885e23ab commit 69ac6d27555cd4819d0c7f40e4471c6f885e23ab Author: Brad King AuthorDate: Thu Feb 5 16:29:59 2015 -0500 Commit: Brad King CommitDate: Thu Feb 5 16:44:56 2015 -0500 bootstrap: Enable color Makefile output Build the needed infrastructure during bootstrap in order to allow "cmake -E cmake_echo_color" to be used unconditionally during generation. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index fbf2140..72d4ef0 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -27,10 +27,10 @@ #ifdef CMAKE_BUILD_WITH_CMAKE # include "cmDependsFortran.h" # include "cmDependsJava.h" -# include #endif #include +#include #include @@ -1351,7 +1351,6 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, { // Choose the color for the text. std::string color_name; -#ifdef CMAKE_BUILD_WITH_CMAKE if(this->GlobalGenerator->GetToolSupportsColor() && this->ColorMakefile) { // See cmake::ExecuteEchoColor in cmake.cxx for these options. @@ -1377,9 +1376,6 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, break; } } -#else - (void)color; -#endif // Echo one line at a time. std::string line; @@ -1617,14 +1613,10 @@ bool cmLocalUnixMakefileGenerator3::UpdateDependencies(const char* tgtInfo, targetName = targetName.substr(0, targetName.length()-4); std::string message = "Scanning dependencies of target "; message += targetName; -#ifdef CMAKE_BUILD_WITH_CMAKE cmSystemTools::MakefileColorEcho( cmsysTerminal_Color_ForegroundMagenta | cmsysTerminal_Color_ForegroundBold, message.c_str(), true, color); -#else - fprintf(stdout, "%s\n", message.c_str()); -#endif return this->ScanDependencies(dir.c_str(), validDependencies); } diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index e9735ed..ec3d846 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -27,10 +27,10 @@ #if defined(CMAKE_BUILD_WITH_CMAKE) # include "cmArchiveWrite.h" # include -# include #endif #include #include +#include #if defined(_WIN32) # include @@ -2284,7 +2284,6 @@ std::string const& cmSystemTools::GetCMakeRoot() } //---------------------------------------------------------------------------- -#if defined(CMAKE_BUILD_WITH_CMAKE) void cmSystemTools::MakefileColorEcho(int color, const char* message, bool newline, bool enabled) { @@ -2314,7 +2313,6 @@ void cmSystemTools::MakefileColorEcho(int color, const char* message, fprintf(stdout, "%s%s", message, newline? "\n" : ""); } } -#endif //---------------------------------------------------------------------------- bool cmSystemTools::GuessLibrarySOName(std::string const& fullPath, diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index 361f42e..c59ae96 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -428,11 +428,9 @@ public: static std::string const& GetCMakeCursesCommand(); static std::string const& GetCMakeRoot(); -#if defined(CMAKE_BUILD_WITH_CMAKE) /** Echo a message in color using KWSys's Terminal cprintf. */ static void MakefileColorEcho(int color, const char* message, bool newLine, bool enabled); -#endif /** Try to guess the soname of a shared library. */ static bool GuessLibrarySOName(std::string const& fullPath, diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 28fcd27..6b04d26 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -18,12 +18,12 @@ #if defined(CMAKE_BUILD_WITH_CMAKE) # include "cmDependsFortran.h" // For -E cmake_copy_f90_mod callback. -# include #endif #include #include #include +#include #if defined(CMAKE_HAVE_VS_GENERATORS) #include "cmCallVisualStudioMacro.h" @@ -753,12 +753,12 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) { return cmcmd::VisualStudioLink(args, 2); } -#ifdef CMAKE_BUILD_WITH_CMAKE // Internal CMake color makefile support. else if (args[1] == "cmake_echo_color") { return cmcmd::ExecuteEchoColor(args); } +#ifdef CMAKE_BUILD_WITH_CMAKE else if (args[1] == "cmake_autogen" && args.size() >= 4) { cmQtAutoGenerators autogen; @@ -987,7 +987,6 @@ bool cmcmd::SymlinkInternal(std::string const& file, std::string const& link) } //---------------------------------------------------------------------------- -#ifdef CMAKE_BUILD_WITH_CMAKE int cmcmd::ExecuteEchoColor(std::vector& args) { // The arguments are @@ -1073,12 +1072,6 @@ int cmcmd::ExecuteEchoColor(std::vector& args) return 0; } -#else -int cmcmd::ExecuteEchoColor(std::vector&) -{ - return 1; -} -#endif //---------------------------------------------------------------------------- int cmcmd::ExecuteLinkScript(std::vector& args) diff --git a/bootstrap b/bootstrap index a88eb6a..8e22bee 100755 --- a/bootstrap +++ b/bootstrap @@ -333,13 +333,15 @@ if ${cmake_system_mingw}; then EncodingC \ ProcessWin32 \ String \ - System" + System \ + Terminal" else KWSYS_C_SOURCES="\ EncodingC \ ProcessUNIX \ String \ - System" + System \ + Terminal" fi KWSYS_CXX_SOURCES="\ @@ -362,7 +364,8 @@ KWSYS_FILES="\ String.h \ String.hxx \ System.h \ - SystemTools.hxx" + SystemTools.hxx \ + Terminal.h" KWSYS_IOS_FILES=" fstream \ ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalUnixMakefileGenerator3.cxx | 43 ++++------ Source/cmLocalUnixMakefileGenerator3.cxx | 33 +++++--- Source/cmLocalUnixMakefileGenerator3.h | 5 +- Source/cmMakefileTargetGenerator.cxx | 36 ++++---- Source/cmMakefileTargetGenerator.h | 2 +- Source/cmSystemTools.cxx | 4 +- Source/cmSystemTools.h | 2 - Source/cmcmd.cxx | 128 +++++++++++++++++------------ bootstrap | 9 +- 9 files changed, 143 insertions(+), 119 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Feb 6 10:16:42 2015 From: brad.king at kitware.com (Brad King) Date: Fri, 6 Feb 2015 10:16:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1072-gabee514 Message-ID: <20150206151642.7E47DA7F26@public.kitware.com> 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 abee514ddbf3a5b3fb5fea1a4b755149100eaf5d (commit) via 3f73531d4e415c9c6182e162028eb146922d3c90 (commit) from e74b7b59722283f44775831ddb0357bdcc9c798a (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=abee514ddbf3a5b3fb5fea1a4b755149100eaf5d commit abee514ddbf3a5b3fb5fea1a4b755149100eaf5d Merge: e74b7b5 3f73531 Author: Brad King AuthorDate: Fri Feb 6 10:16:34 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 10:16:34 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Feb 6 12:54:58 2015 From: brad.king at kitware.com (Brad King) Date: Fri, 6 Feb 2015 12:54:58 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1076-g9d3b0df Message-ID: <20150206175458.43B5EAAEC6@public.kitware.com> 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 9d3b0dfd93694ffee04c5b4b5795aa7ebf6ca059 (commit) via d2fe4c420370727c644432549b7a5ca9dfef3a28 (commit) via de63ff489d25095e41deae724f499ea3df05b6cf (commit) via 9924486f8a979bf937c8fd7749aaf37c1bd762e1 (commit) from abee514ddbf3a5b3fb5fea1a4b755149100eaf5d (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=9d3b0dfd93694ffee04c5b4b5795aa7ebf6ca059 commit 9d3b0dfd93694ffee04c5b4b5795aa7ebf6ca059 Merge: abee514 d2fe4c4 Author: Brad King AuthorDate: Fri Feb 6 12:54:57 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 12:54:57 2015 -0500 Merge topic 'xcode-flags-per-language' into next d2fe4c42 cmGlobalXCodeGenerator: Rename variable 'lang' => 'llang' de63ff48 Xcode: Generate Intel Fortran compiler flags in project files 9924486f Xcode: Refactor generation of per-language compiler flags http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d2fe4c420370727c644432549b7a5ca9dfef3a28 commit d2fe4c420370727c644432549b7a5ca9dfef3a28 Author: Brad King AuthorDate: Fri Feb 6 10:31:08 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 11:46:03 2015 -0500 cmGlobalXCodeGenerator: Rename variable 'lang' => 'llang' In CreateBuildSettings the variable holds the linker language. Use a more distinctive variable name. diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 0636910..30ed134 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1775,8 +1775,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, AddCompileOptions(flags, &target, lang, configName); } - std::string lang = target.GetLinkerLanguage(configName); - if(binary && lang.empty()) + std::string llang = target.GetLinkerLanguage(configName); + if(binary && llang.empty()) { cmSystemTools::Error ("CMake can not determine linker language for target: ", @@ -2001,7 +2001,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, // in many ways as an application bundle, as far as // link flags go std::string createFlags = - this->LookupFlags("CMAKE_SHARED_MODULE_CREATE_", lang, "_FLAGS", + this->LookupFlags("CMAKE_SHARED_MODULE_CREATE_", llang, "_FLAGS", "-bundle"); if(!createFlags.empty()) { @@ -2029,7 +2029,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, this->CreateString("NO")); // Add the flags to create an executable. std::string createFlags = - this->LookupFlags("CMAKE_", lang, "_LINK_FLAGS", ""); + this->LookupFlags("CMAKE_", llang, "_LINK_FLAGS", ""); if(!createFlags.empty()) { extraLinkOptions += " "; @@ -2040,7 +2040,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, { // Add the flags to create a module. std::string createFlags = - this->LookupFlags("CMAKE_SHARED_MODULE_CREATE_", lang, "_FLAGS", + this->LookupFlags("CMAKE_SHARED_MODULE_CREATE_", llang, "_FLAGS", "-bundle"); if(!createFlags.empty()) { @@ -2074,7 +2074,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, { // Add the flags to create a shared library. std::string createFlags = - this->LookupFlags("CMAKE_SHARED_LIBRARY_CREATE_", lang, "_FLAGS", + this->LookupFlags("CMAKE_SHARED_LIBRARY_CREATE_", llang, "_FLAGS", "-dynamiclib"); if(!createFlags.empty()) { @@ -2091,7 +2091,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, { // Add the flags to create an executable. std::string createFlags = - this->LookupFlags("CMAKE_", lang, "_LINK_FLAGS", ""); + this->LookupFlags("CMAKE_", llang, "_LINK_FLAGS", ""); if(!createFlags.empty()) { extraLinkOptions += " "; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=de63ff489d25095e41deae724f499ea3df05b6cf commit de63ff489d25095e41deae724f499ea3df05b6cf Author: Brad King AuthorDate: Fri Feb 6 11:02:48 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 11:45:28 2015 -0500 Xcode: Generate Intel Fortran compiler flags in project files diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 7b2ac8e..0636910 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -2250,6 +2250,11 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, buildSettings->AddAttribute("OTHER_CPLUSPLUSFLAGS", this->CreateString(flags.c_str())); } + else if (*li == "Fortran") + { + buildSettings->AddAttribute("IFORT_OTHER_FLAGS", + this->CreateString(flags.c_str())); + } else if (*li == "C") { buildSettings->AddAttribute("OTHER_CFLAGS", http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9924486f8a979bf937c8fd7749aaf37c1bd762e1 commit 9924486f8a979bf937c8fd7749aaf37c1bd762e1 Author: Brad King AuthorDate: Fri Feb 6 11:01:48 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 11:44:41 2015 -0500 Xcode: Refactor generation of per-language compiler flags diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index cd0dcc6..7b2ac8e 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1743,7 +1743,6 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, return; } - std::string flags; std::string defFlags; bool shared = ((target.GetType() == cmTarget::SHARED_LIBRARY) || (target.GetType() == cmTarget::MODULE_LIBRARY)); @@ -1752,19 +1751,15 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, (target.GetType() == cmTarget::EXECUTABLE) || shared); - std::string lang = target.GetLinkerLanguage(configName); - std::string cflags; - if(!lang.empty()) + // Compute the compilation flags for each language. + std::set languages; + target.GetLanguages(languages, configName); + std::map cflags; + for (std::set::iterator li = languages.begin(); + li != languages.end(); ++li) { - // for c++ projects get the c flags as well - if(lang == "CXX") - { - this->CurrentLocalGenerator->AddLanguageFlags(cflags, "C", configName); - this->CurrentLocalGenerator->AddCMP0018Flags(cflags, &target, - "C", configName); - this->CurrentLocalGenerator-> - AddCompileOptions(cflags, &target, "C", configName); - } + std::string const& lang = *li; + std::string& flags = cflags[lang]; // Add language-specific flags. this->CurrentLocalGenerator->AddLanguageFlags(flags, lang, configName); @@ -1779,13 +1774,15 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, this->CurrentLocalGenerator-> AddCompileOptions(flags, &target, lang, configName); } - else if(binary) - { + + std::string lang = target.GetLinkerLanguage(configName); + if(binary && lang.empty()) + { cmSystemTools::Error ("CMake can not determine linker language for target: ", target.GetName().c_str()); return; - } + } // Add define flags this->CurrentLocalGenerator-> @@ -2178,53 +2175,58 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, buildSettings->AddAttribute("HEADER_SEARCH_PATHS", dirs.CreateList()); } - std::string oflagc = this->ExtractFlag("-O", cflags); + + bool same_gflags = true; + std::map gflags; + std::string const* last_gflag = 0; char optLevel[2]; optLevel[0] = '0'; optLevel[1] = 0; - if(oflagc.size() == 3) - { - optLevel[0] = oflagc[2]; - } - if(oflagc.size() == 2) - { - optLevel[0] = '1'; - } - std::string oflag = this->ExtractFlag("-O", flags); - if(oflag.size() == 3) - { - optLevel[0] = oflag[2]; - } - if(oflag.size() == 2) - { - optLevel[0] = '1'; - } - std::string gflagc = this->ExtractFlag("-g", cflags); - // put back gdwarf-2 if used since there is no way - // to represent it in the gui, but we still want debug yes - if(gflagc == "-gdwarf-2") - { - cflags += " "; - cflags += gflagc; - } - std::string gflag = this->ExtractFlag("-g", flags); - if(gflag == "-gdwarf-2") + + // Minimal map of flags to build settings. + for (std::set::iterator li = languages.begin(); + li != languages.end(); ++li) { - flags += " "; - flags += gflag; + std::string& flags = cflags[*li]; + std::string& gflag = gflags[*li]; + std::string oflag = this->ExtractFlag("-O", flags); + if(oflag.size() == 3) + { + optLevel[0] = oflag[2]; + } + if(oflag.size() == 2) + { + optLevel[0] = '1'; + } + gflag = this->ExtractFlag("-g", flags); + // put back gdwarf-2 if used since there is no way + // to represent it in the gui, but we still want debug yes + if(gflag == "-gdwarf-2") + { + flags += " "; + flags += gflag; + } + if (last_gflag && *last_gflag != gflag) + { + same_gflags = false; + } + last_gflag = &gflag; } + const char* debugStr = "YES"; - // We can't set the Xcode flag differently depending on the language, - // so put them back in this case. - if( (lang == "CXX") && gflag != gflagc ) + if (!same_gflags) { - cflags += " "; - cflags += gflagc; - flags += " "; - flags += gflag; + // We can't set the Xcode flag differently depending on the language, + // so put them back in this case. + for (std::set::iterator li = languages.begin(); + li != languages.end(); ++li) + { + cflags[*li] += " "; + cflags[*li] += gflags[*li]; + } debugStr = "NO"; } - if( gflag == "-g0" || gflag.size() == 0 ) + else if (last_gflag && (last_gflag->empty() || *last_gflag == "-g0")) { debugStr = "NO"; } @@ -2239,24 +2241,20 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, this->CreateString("NO")); buildSettings->AddAttribute("GCC_INLINES_ARE_PRIVATE_EXTERN", this->CreateString("NO")); - if(lang == "CXX") - { - flags += " "; - flags += defFlags; - buildSettings->AddAttribute("OTHER_CPLUSPLUSFLAGS", - this->CreateString(flags.c_str())); - cflags += " "; - cflags += defFlags; - buildSettings->AddAttribute("OTHER_CFLAGS", - this->CreateString(cflags.c_str())); - - } - else + for (std::set::iterator li = languages.begin(); + li != languages.end(); ++li) { - flags += " "; - flags += defFlags; - buildSettings->AddAttribute("OTHER_CFLAGS", - this->CreateString(flags.c_str())); + std::string flags = cflags[*li] + " " + defFlags; + if (*li == "CXX") + { + buildSettings->AddAttribute("OTHER_CPLUSPLUSFLAGS", + this->CreateString(flags.c_str())); + } + else if (*li == "C") + { + buildSettings->AddAttribute("OTHER_CFLAGS", + this->CreateString(flags.c_str())); + } } // Add Fortran source format attribute if property is set. ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalXCodeGenerator.cxx | 155 +++++++++++++++++++------------------ 1 file changed, 79 insertions(+), 76 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Fri Feb 6 13:03:35 2015 From: steveire at gmail.com (Stephen Kelly) Date: Fri, 6 Feb 2015 13:03:35 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1079-gf72dfcb Message-ID: <20150206180335.DF52FAB1FA@public.kitware.com> 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 f72dfcb7ccca2d134aa456eb771aee7178bd5675 (commit) via c6c6b26accc13ad50cad5130e44d06d52d6f2c1f (commit) via 861b1bd67d3f80ecff62a4598036924c0b527cb6 (commit) from 9d3b0dfd93694ffee04c5b4b5795aa7ebf6ca059 (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=f72dfcb7ccca2d134aa456eb771aee7178bd5675 commit f72dfcb7ccca2d134aa456eb771aee7178bd5675 Merge: 9d3b0df c6c6b26 Author: Stephen Kelly AuthorDate: Fri Feb 6 13:03:35 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 13:03:35 2015 -0500 Merge topic 'use-algorithms' into next c6c6b26a Revert "cmListCommand: Use std::find algorithm for FIND subcommand." 861b1bd6 Revert "Convert a nested loop to use an algorithm." http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c6c6b26accc13ad50cad5130e44d06d52d6f2c1f commit c6c6b26accc13ad50cad5130e44d06d52d6f2c1f Author: Stephen Kelly AuthorDate: Fri Feb 6 19:01:24 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:01:24 2015 +0100 Revert "cmListCommand: Use std::find algorithm for FIND subcommand." This reverts commit 7b2c2fb83d9973fce37864827024ec4f07de8684. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index d24af46..107dca9 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -287,14 +287,18 @@ bool cmListCommand::HandleFindCommand(std::vector const& args) return true; } - std::vector::iterator it = - std::find(varArgsExpanded.begin(), varArgsExpanded.end(), args[2]); - if (it != varArgsExpanded.end()) + std::vector::iterator it; + unsigned int index = 0; + for ( it = varArgsExpanded.begin(); it != varArgsExpanded.end(); ++ it ) { - char indexString[32]; - sprintf(indexString, "%zu", std::distance(varArgsExpanded.begin(), it)); - this->Makefile->AddDefinition(variableName, indexString); - return true; + if ( *it == args[2] ) + { + char indexString[32]; + sprintf(indexString, "%d", index); + this->Makefile->AddDefinition(variableName, indexString); + return true; + } + index++; } this->Makefile->AddDefinition(variableName, "-1"); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=861b1bd67d3f80ecff62a4598036924c0b527cb6 commit 861b1bd67d3f80ecff62a4598036924c0b527cb6 Author: Stephen Kelly AuthorDate: Fri Feb 6 19:01:14 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:01:14 2015 +0100 Revert "Convert a nested loop to use an algorithm." This reverts commit 3fe17c6d70797ce4d73aac1942c2f6036ce660c8. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index f76e428..d24af46 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -372,10 +372,18 @@ bool cmListCommand size_t cc; for ( cc = 2; cc < args.size(); ++ cc ) { - varArgsExpanded.erase( - std::remove(varArgsExpanded.begin(), varArgsExpanded.end(), - args[cc]), - varArgsExpanded.end()); + size_t kk = 0; + while ( kk < varArgsExpanded.size() ) + { + if ( varArgsExpanded[kk] == args[cc] ) + { + varArgsExpanded.erase(varArgsExpanded.begin()+kk); + } + else + { + kk ++; + } + } } ----------------------------------------------------------------------- Summary of changes: Source/cmListCommand.cxx | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Fri Feb 6 13:04:31 2015 From: steveire at gmail.com (Stephen Kelly) Date: Fri, 6 Feb 2015 13:04:31 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1094-ged2953e Message-ID: <20150206180431.C1557AB21B@public.kitware.com> 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 ed2953e57b017f3bbfb189658c98a34dd44d9993 (commit) via d8639733a42149ca1402dcae427f2142ab0cf037 (commit) via 803317aab622e4f12e7d342be5bbb4f16b088efd (commit) via 11093a03e064e1b7ef2d5db28845b5da7b934806 (commit) via 6cd2ee9524e501a4ef9dc481b469b91f8f022dc9 (commit) via 94e993a0c170cf84da9ddb026dfec9d8d99304e0 (commit) via 69dbe51b08bd6b4564d031d78034633f55ed4593 (commit) via 683fafea088c26658283da3bdf05277aaa1a3cee (commit) via 63f584b618b3381ad93c901f691191acd48329a7 (commit) via 74c4d9d27aece9a619eaab330ad23cf4b0de2b19 (commit) via 71d47115d009983665d6db4b25ea0ef40464f365 (commit) via 39622c995c189b4e22dfdc0e9aa29c8fce5eac17 (commit) via a7fcc148bdfa5e9f2c6901b0de8192f5aa043741 (commit) via d46c4f0727acb35963dfda579cd5c9efd63aab01 (commit) via d59913f001b6eb74f9baf8bad183dc83d5e7bcd1 (commit) from f72dfcb7ccca2d134aa456eb771aee7178bd5675 (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=ed2953e57b017f3bbfb189658c98a34dd44d9993 commit ed2953e57b017f3bbfb189658c98a34dd44d9993 Merge: f72dfcb d863973 Author: Stephen Kelly AuthorDate: Fri Feb 6 13:04:29 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 13:04:29 2015 -0500 Merge topic 'use-algorithms' into next d8639733 cmSystemTools: Remove unnecessary comparison. 803317aa cmSystemTools: Early return if size makes later comparison false. 11093a03 Replace temporary bool by inlining warning condition. 6cd2ee95 Replace loop with member algorithm. 94e993a0 cmComputeLinkDepends: Remove temporary iterator copy. 69dbe51b Replace loop with algorithm. 683fafea Replace a loop with std::transform. 63f584b6 Replace while loop with member insert. 74c4d9d2 Take a size check outside of an inner loop. 71d47115 Use insert member instead of back_inserter. 39622c99 Convert while loop to member insert. a7fcc148 Convert loop to algorithm. d46c4f07 Extract a prefix variable from loop. d59913f0 Take computation out of loop. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d8639733a42149ca1402dcae427f2142ab0cf037 commit d8639733a42149ca1402dcae427f2142ab0cf037 Author: Stephen Kelly AuthorDate: Tue Jan 27 23:52:50 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:10 2015 +0100 cmSystemTools: Remove unnecessary comparison. We already know the string is uppercase. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index bb007ef..d3ab36b 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -376,7 +376,7 @@ bool cmSystemTools::IsInternallyOn(const char* val) { *c = static_cast(toupper(*c)); } - return (v == "I_ON" || v == "i_on"); + return v == "I_ON"; } bool cmSystemTools::IsOn(const char* val) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=803317aab622e4f12e7d342be5bbb4f16b088efd commit 803317aab622e4f12e7d342be5bbb4f16b088efd Author: Stephen Kelly AuthorDate: Tue Jan 27 23:50:42 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:10 2015 +0100 cmSystemTools: Early return if size makes later comparison false. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index b07dd78..bb007ef 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -366,6 +366,10 @@ bool cmSystemTools::IsInternallyOn(const char* val) return false; } std::basic_string v = val; + if (v.size() > 4) + { + return false; + } for(std::basic_string::iterator c = v.begin(); c != v.end(); c++) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=11093a03e064e1b7ef2d5db28845b5da7b934806 commit 11093a03e064e1b7ef2d5db28845b5da7b934806 Author: Stephen Kelly AuthorDate: Tue Jan 27 22:13:45 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:10 2015 +0100 Replace temporary bool by inlining warning condition. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index bd9cb26..7afe05f 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3641,24 +3641,20 @@ bool cmLocalGenerator::NeedBackwardsCompatibility_2_4() bool cmLocalGenerator::CheckDefinition(std::string const& define) const { // Many compilers do not support -DNAME(arg)=sdf so we disable it. - bool function_style = false; - std::string::size_type pos = define.find_first_of("(="); if (pos != std::string::npos) { - function_style = define[pos] == '('; - } - - if(function_style) - { - std::ostringstream e; - e << "WARNING: Function-style preprocessor definitions may not be " - << "passed on the compiler command line because many compilers " - << "do not support it.\n" - << "CMake is dropping a preprocessor definition: " << define << "\n" - << "Consider defining the macro in a (configured) header file.\n"; - cmSystemTools::Message(e.str().c_str()); - return false; + if (define[pos] == '(') + { + std::ostringstream e; + e << "WARNING: Function-style preprocessor definitions may not be " + << "passed on the compiler command line because many compilers " + << "do not support it.\n" + << "CMake is dropping a preprocessor definition: " << define << "\n" + << "Consider defining the macro in a (configured) header file.\n"; + cmSystemTools::Message(e.str().c_str()); + return false; + } } // Many compilers do not support # in the value so we disable it. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6cd2ee9524e501a4ef9dc481b469b91f8f022dc9 commit 6cd2ee9524e501a4ef9dc481b469b91f8f022dc9 Author: Stephen Kelly AuthorDate: Tue Jan 27 22:09:17 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:10 2015 +0100 Replace loop with member algorithm. diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 9109db4..bd9cb26 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3642,14 +3642,13 @@ bool cmLocalGenerator::CheckDefinition(std::string const& define) const { // Many compilers do not support -DNAME(arg)=sdf so we disable it. bool function_style = false; - for(const char* c = define.c_str(); *c && *c != '='; ++c) + + std::string::size_type pos = define.find_first_of("(="); + if (pos != std::string::npos) { - if(*c == '(') - { - function_style = true; - break; - } + function_style = define[pos] == '('; } + if(function_style) { std::ostringstream e; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=94e993a0c170cf84da9ddb026dfec9d8d99304e0 commit 94e993a0c170cf84da9ddb026dfec9d8d99304e0 Author: Stephen Kelly AuthorDate: Tue Jan 27 21:34:01 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:10 2015 +0100 cmComputeLinkDepends: Remove temporary iterator copy. diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx index fa1bbcc..8652690 100644 --- a/Source/cmComputeLinkDepends.cxx +++ b/Source/cmComputeLinkDepends.cxx @@ -692,8 +692,7 @@ void cmComputeLinkDepends::CleanConstraintGraph() std::sort(i->begin(), i->end()); // Make the edge list unique. - EdgeList::iterator last = std::unique(i->begin(), i->end()); - i->erase(last, i->end()); + i->erase(std::unique(i->begin(), i->end()), i->end()); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=69dbe51b08bd6b4564d031d78034633f55ed4593 commit 69dbe51b08bd6b4564d031d78034633f55ed4593 Author: Stephen Kelly AuthorDate: Sun Jan 25 16:02:46 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:10 2015 +0100 Replace loop with algorithm. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index ef42b38..f0bdea7 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -1153,15 +1153,11 @@ cmTarget::LinkLibraryType cmTarget::ComputeLinkType( // Check if any entry in the list matches this configuration. std::string configUpper = cmSystemTools::UpperCase(config); - for(std::vector::const_iterator i = debugConfigs.begin(); - i != debugConfigs.end(); ++i) + if (std::find(debugConfigs.begin(), debugConfigs.end(), configUpper) != + debugConfigs.end()) { - if(*i == configUpper) - { - return cmTarget::DEBUG; - } + return cmTarget::DEBUG; } - // The current configuration is not a debug configuration. return cmTarget::OPTIMIZED; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=683fafea088c26658283da3bdf05277aaa1a3cee commit 683fafea088c26658283da3bdf05277aaa1a3cee Author: Stephen Kelly AuthorDate: Sun Jan 25 16:01:07 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:09 2015 +0100 Replace a loop with std::transform. diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 652e451..875dbbd 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -2731,11 +2731,10 @@ std::vector const& cmake::GetDebugConfigs() { // Expand the specified list and convert to upper-case. cmSystemTools::ExpandListArgument(config_list, this->DebugConfigs); - for(std::vector::iterator i = this->DebugConfigs.begin(); - i != this->DebugConfigs.end(); ++i) - { - *i = cmSystemTools::UpperCase(*i); - } + std::transform(this->DebugConfigs.begin(), + this->DebugConfigs.end(), + this->DebugConfigs.begin(), + cmSystemTools::UpperCase); } // If no configurations were specified, use a default list. if(this->DebugConfigs.empty()) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=63f584b618b3381ad93c901f691191acd48329a7 commit 63f584b618b3381ad93c901f691191acd48329a7 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:36:59 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:09 2015 +0100 Replace while loop with member insert. diff --git a/Source/cmSetTargetPropertiesCommand.cxx b/Source/cmSetTargetPropertiesCommand.cxx index 9a7fab2..e41a0ca 100644 --- a/Source/cmSetTargetPropertiesCommand.cxx +++ b/Source/cmSetTargetPropertiesCommand.cxx @@ -40,14 +40,7 @@ bool cmSetTargetPropertiesCommand this->SetError("called with incorrect number of arguments."); return false; } - while (j != args.end()) - { - propertyPairs.push_back(*j); - ++j; - propertyPairs.push_back(*j); - ++j; - } - // break out of the loop because j is already == end + propertyPairs.insert(propertyPairs.end(), j, args.end()); break; } else if (doingFiles) diff --git a/Source/cmSetTestsPropertiesCommand.cxx b/Source/cmSetTestsPropertiesCommand.cxx index 032c78e..d079a19 100644 --- a/Source/cmSetTestsPropertiesCommand.cxx +++ b/Source/cmSetTestsPropertiesCommand.cxx @@ -41,14 +41,7 @@ bool cmSetTestsPropertiesCommand this->SetError("called with incorrect number of arguments."); return false; } - while (j != args.end()) - { - propertyPairs.push_back(*j); - ++j; - propertyPairs.push_back(*j); - ++j; - } - // break out of the loop because j is already == end + propertyPairs.insert(propertyPairs.end(), j, args.end()); break; } else if (doingFiles) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=74c4d9d27aece9a619eaab330ad23cf4b0de2b19 commit 74c4d9d27aece9a619eaab330ad23cf4b0de2b19 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:35:26 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:09 2015 +0100 Take a size check outside of an inner loop. diff --git a/Source/cmSetTargetPropertiesCommand.cxx b/Source/cmSetTargetPropertiesCommand.cxx index aeb8077..9a7fab2 100644 --- a/Source/cmSetTargetPropertiesCommand.cxx +++ b/Source/cmSetTargetPropertiesCommand.cxx @@ -35,15 +35,15 @@ bool cmSetTargetPropertiesCommand doingFiles = false; // now loop through the rest of the arguments, new style ++j; + if (std::distance(j, args.end()) % 2 != 0) + { + this->SetError("called with incorrect number of arguments."); + return false; + } while (j != args.end()) { propertyPairs.push_back(*j); ++j; - if(j == args.end()) - { - this->SetError("called with incorrect number of arguments."); - return false; - } propertyPairs.push_back(*j); ++j; } diff --git a/Source/cmSetTestsPropertiesCommand.cxx b/Source/cmSetTestsPropertiesCommand.cxx index e66d13d..032c78e 100644 --- a/Source/cmSetTestsPropertiesCommand.cxx +++ b/Source/cmSetTestsPropertiesCommand.cxx @@ -36,15 +36,15 @@ bool cmSetTestsPropertiesCommand doingFiles = false; // now loop through the rest of the arguments, new style ++j; + if (std::distance(j, args.end()) % 2 != 0) + { + this->SetError("called with incorrect number of arguments."); + return false; + } while (j != args.end()) { propertyPairs.push_back(*j); ++j; - if(j == args.end()) - { - this->SetError("called with incorrect number of arguments."); - return false; - } propertyPairs.push_back(*j); ++j; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=71d47115d009983665d6db4b25ea0ef40464f365 commit 71d47115d009983665d6db4b25ea0ef40464f365 Author: Stephen Kelly AuthorDate: Sat Jan 24 18:21:56 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:09 2015 +0100 Use insert member instead of back_inserter. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 98cb75c..ef42b38 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -5919,8 +5919,7 @@ cmTarget::GetCompatibleInterfaces(std::string const& config) const { \ std::vector props; \ cmSystemTools::ExpandListArgument(prop, props); \ - std::copy(props.begin(), props.end(), \ - std::inserter(compat.Props##x, compat.Props##x.begin())); \ + compat.Props##x.insert(props.begin(), props.end()); \ } CM_READ_COMPATIBLE_INTERFACE(BOOL, Bool) CM_READ_COMPATIBLE_INTERFACE(STRING, String) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=39622c995c189b4e22dfdc0e9aa29c8fce5eac17 commit 39622c995c189b4e22dfdc0e9aa29c8fce5eac17 Author: Stephen Kelly AuthorDate: Sat Jan 24 18:18:56 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:09 2015 +0100 Convert while loop to member insert. diff --git a/Source/cmAddLibraryCommand.cxx b/Source/cmAddLibraryCommand.cxx index db2f6fb..edf82bd 100644 --- a/Source/cmAddLibraryCommand.cxx +++ b/Source/cmAddLibraryCommand.cxx @@ -435,11 +435,7 @@ bool cmAddLibraryCommand cmSystemTools::Message(msg.c_str() ,"Warning"); } - while (s != args.end()) - { - srclists.push_back(*s); - ++s; - } + srclists.insert(srclists.end(), s, args.end()); this->Makefile->AddLibrary(libName, type, srclists, excludeFromAll); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a7fcc148bdfa5e9f2c6901b0de8192f5aa043741 commit a7fcc148bdfa5e9f2c6901b0de8192f5aa043741 Author: Stephen Kelly AuthorDate: Sun Jan 18 16:01:54 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:09 2015 +0100 Convert loop to algorithm. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 9a2186b..785d0ca 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2396,10 +2396,7 @@ void cmLocalUnixMakefileGenerator3 std::string outputForExisting = this->ConvertToOutputForExisting(tgtDir, relRetDir); std::string prefix = cd_cmd + outputForExisting + " && "; - std::vector::iterator i = commands.begin(); - for (; i != commands.end(); ++i) - { - *i = prefix + *i; - } + std::transform(commands.begin(), commands.end(), commands.begin(), + std::bind1st(std::plus(), prefix)); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d46c4f0727acb35963dfda579cd5c9efd63aab01 commit d46c4f0727acb35963dfda579cd5c9efd63aab01 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:07:27 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:08 2015 +0100 Extract a prefix variable from loop. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 13c47c5..9a2186b 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2395,14 +2395,11 @@ void cmLocalUnixMakefileGenerator3 // each command. std::string outputForExisting = this->ConvertToOutputForExisting(tgtDir, relRetDir); + std::string prefix = cd_cmd + outputForExisting + " && "; std::vector::iterator i = commands.begin(); for (; i != commands.end(); ++i) { - std::string cmd = cd_cmd; - cmd += outputForExisting; - cmd += " && "; - cmd += *i; - *i = cmd; + *i = prefix + *i; } } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d59913f001b6eb74f9baf8bad183dc83d5e7bcd1 commit d59913f001b6eb74f9baf8bad183dc83d5e7bcd1 Author: Stephen Kelly AuthorDate: Sun Jan 18 15:59:03 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:08 2015 +0100 Take computation out of loop. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index fbf2140..13c47c5 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2393,11 +2393,13 @@ void cmLocalUnixMakefileGenerator3 // On UNIX we must construct a single shell command to change // directory and build because make resets the directory between // each command. + std::string outputForExisting = + this->ConvertToOutputForExisting(tgtDir, relRetDir); std::vector::iterator i = commands.begin(); for (; i != commands.end(); ++i) { std::string cmd = cd_cmd; - cmd += this->ConvertToOutputForExisting(tgtDir, relRetDir); + cmd += outputForExisting; cmd += " && "; cmd += *i; *i = cmd; ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From steveire at gmail.com Fri Feb 6 13:05:12 2015 From: steveire at gmail.com (Stephen Kelly) Date: Fri, 6 Feb 2015 13:05:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1099-gc9827da Message-ID: <20150206180512.1735BAB232@public.kitware.com> 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 c9827dabebf5d3e93d2f37223141f2ccd5209b1a (commit) via 17a2adc29de90c6ce441f7fff5cf9366286de3d6 (commit) via af65da0aa97f20947f93ddcf9872d23d671f699b (commit) via e848cc5074c402fe38bb19c831f0b71dc34ece73 (commit) via 5fea6898346f30119b7f5272033b0713aca4c389 (commit) from ed2953e57b017f3bbfb189658c98a34dd44d9993 (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=c9827dabebf5d3e93d2f37223141f2ccd5209b1a commit c9827dabebf5d3e93d2f37223141f2ccd5209b1a Merge: ed2953e 17a2adc Author: Stephen Kelly AuthorDate: Fri Feb 6 13:05:10 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 13:05:10 2015 -0500 Merge topic 'cmStandardIncludes-cleanup' into next 17a2adc2 cmStandardIncludes: Remove functional header. af65da0a cmStandardIncludes: Remove list include. e848cc50 cmStandardIncludes: Remove deque include. 5fea6898 cmStandardIncludes: Remove some VS6 workarounds. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=17a2adc29de90c6ce441f7fff5cf9366286de3d6 commit 17a2adc29de90c6ce441f7fff5cf9366286de3d6 Author: Stephen Kelly AuthorDate: Thu Feb 5 22:08:53 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:53 2015 +0100 cmStandardIncludes: Remove functional header. It is unused. diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 77b4f62..0909719 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -51,7 +51,6 @@ #include #include #include -#include #include #include http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=af65da0aa97f20947f93ddcf9872d23d671f699b commit af65da0aa97f20947f93ddcf9872d23d671f699b Author: Stephen Kelly AuthorDate: Mon Jan 12 21:17:55 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:53 2015 +0100 cmStandardIncludes: Remove list include. Include it only where used. diff --git a/Source/CPack/cmCPackGenerator.cxx b/Source/CPack/cmCPackGenerator.cxx index 1c670d2..006239a 100644 --- a/Source/CPack/cmCPackGenerator.cxx +++ b/Source/CPack/cmCPackGenerator.cxx @@ -25,6 +25,7 @@ #include #include #include +#include #if defined(__HAIKU__) #include diff --git a/Source/CTest/cmCTestGlobalVC.h b/Source/CTest/cmCTestGlobalVC.h index cb0d165..29e0a61 100644 --- a/Source/CTest/cmCTestGlobalVC.h +++ b/Source/CTest/cmCTestGlobalVC.h @@ -14,6 +14,8 @@ #include "cmCTestVC.h" +#include + /** \class cmCTestGlobalVC * \brief Base class for handling globally-versioned trees * diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx b/Source/CTest/cmCTestMultiProcessHandler.cxx index f9e8a3c..f223127 100644 --- a/Source/CTest/cmCTestMultiProcessHandler.cxx +++ b/Source/CTest/cmCTestMultiProcessHandler.cxx @@ -16,6 +16,7 @@ #include "cmSystemTools.h" #include #include +#include #include #include diff --git a/Source/CTest/cmCTestSVN.h b/Source/CTest/cmCTestSVN.h index c6548e3..17bf7cb 100644 --- a/Source/CTest/cmCTestSVN.h +++ b/Source/CTest/cmCTestSVN.h @@ -14,6 +14,8 @@ #include "cmCTestGlobalVC.h" +#include + /** \class cmCTestSVN * \brief Interaction with subversion command-line tool * diff --git a/Source/cmCommands.h b/Source/cmCommands.h index c56673f..e902853 100644 --- a/Source/cmCommands.h +++ b/Source/cmCommands.h @@ -13,6 +13,8 @@ #define cmCommands_h #include "cmStandardIncludes.h" +#include + class cmCommand; /** * Global function to return all compiled in commands. diff --git a/Source/cmConditionEvaluator.h b/Source/cmConditionEvaluator.h index 01624f9..fcef234 100644 --- a/Source/cmConditionEvaluator.h +++ b/Source/cmConditionEvaluator.h @@ -15,6 +15,8 @@ #include "cmCommand.h" #include "cmExpandedCommandArgument.h" +#include + class cmConditionEvaluator { public: diff --git a/Source/cmFileLockPool.h b/Source/cmFileLockPool.h index baef310..f0614a3 100644 --- a/Source/cmFileLockPool.h +++ b/Source/cmFileLockPool.h @@ -14,6 +14,8 @@ #include "cmStandardIncludes.h" +#include + class cmFileLockResult; class cmFileLock; diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index ba914e1..ff3e35d 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -38,6 +38,7 @@ #include #include +#include #include // for isspace #include diff --git a/Source/cmQtAutoGenerators.h b/Source/cmQtAutoGenerators.h index 79fa5df..f74e3c5 100644 --- a/Source/cmQtAutoGenerators.h +++ b/Source/cmQtAutoGenerators.h @@ -14,6 +14,8 @@ #ifndef cmQtAutoGenerators_h #define cmQtAutoGenerators_h +#include + class cmGlobalGenerator; class cmMakefile; diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 180bd8d..77b4f62 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -53,7 +53,6 @@ #include #include #include -#include #include // include the "c" string header diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 652e451..4b6af0a 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -103,6 +103,8 @@ #include // struct stat +#include + static bool cmakeCheckStampFile(const char* stampName); static bool cmakeCheckStampList(const char* stampName); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e848cc5074c402fe38bb19c831f0b71dc34ece73 commit e848cc5074c402fe38bb19c831f0b71dc34ece73 Author: Stephen Kelly AuthorDate: Mon Jan 12 21:11:16 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:53 2015 +0100 cmStandardIncludes: Remove deque include. Include it only where used. diff --git a/Source/CTest/cmCTestBuildHandler.h b/Source/CTest/cmCTestBuildHandler.h index 09346f9..d13d5cf 100644 --- a/Source/CTest/cmCTestBuildHandler.h +++ b/Source/CTest/cmCTestBuildHandler.h @@ -19,6 +19,8 @@ #include +#include + class cmMakefile; /** \class cmCTestBuildHandler diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index bff8c12..110db24 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -35,6 +35,7 @@ #endif #include +#include class cmFunctionBlocker; class cmCommand; diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 99e1868..180bd8d 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -55,7 +55,6 @@ #include #include #include -#include // include the "c" string header #include http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5fea6898346f30119b7f5272033b0713aca4c389 commit 5fea6898346f30119b7f5272033b0713aca4c389 Author: Stephen Kelly AuthorDate: Mon Jan 12 21:05:34 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:04:53 2015 +0100 cmStandardIncludes: Remove some VS6 workarounds. Added in commit v2.6.0~2824 (COMP: Fix warnings in system headers on VS6., 2006-08-29), but no longer needed. diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 646300d..99e1868 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -22,7 +22,6 @@ #ifdef _MSC_VER #pragma warning ( disable : 4786 ) #pragma warning ( disable : 4503 ) -#pragma warning ( disable : 4512 ) /* operator=() could not be generated */ #endif @@ -42,11 +41,6 @@ # include #endif -// Avoid warnings in system headers. -#if defined(_MSC_VER) -# pragma warning (push,1) -#endif - #include #include #include @@ -63,10 +57,6 @@ #include #include -#if defined(_MSC_VER) -# pragma warning(pop) -#endif - // include the "c" string header #include #include ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From steveire at gmail.com Fri Feb 6 13:11:43 2015 From: steveire at gmail.com (Stephen Kelly) Date: Fri, 6 Feb 2015 13:11:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1101-g3aea927 Message-ID: <20150206181143.7822BA7B4A@public.kitware.com> 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 3aea9271e7d727191e862f67cb29341334a73b4b (commit) via def45d12916c8c118da7ce29a4ec0425e87daca0 (commit) from c9827dabebf5d3e93d2f37223141f2ccd5209b1a (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=3aea9271e7d727191e862f67cb29341334a73b4b commit 3aea9271e7d727191e862f67cb29341334a73b4b Merge: c9827da def45d1 Author: Stephen Kelly AuthorDate: Fri Feb 6 13:11:42 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 13:11:42 2015 -0500 Merge topic 'export-interface-source-files' into next def45d12 Fix property name. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=def45d12916c8c118da7ce29a4ec0425e87daca0 commit def45d12916c8c118da7ce29a4ec0425e87daca0 Author: Stephen Kelly AuthorDate: Fri Feb 6 19:11:18 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:11:18 2015 +0100 Fix property name. diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst index a26092a..00dcd25 100644 --- a/Help/release/dev/export-interface-source-files.rst +++ b/Help/release/dev/export-interface-source-files.rst @@ -2,5 +2,5 @@ export-interface-source-files ----------------------------- * It is now possible to export targets which populate the - :prop_tgt:`TARGET_SOURCES` target property using the + :prop_tgt:`INTERFACE_SOURCES` target property using the :command:`install(EXPORT)` and :command:`export()` commands. ----------------------------------------------------------------------- Summary of changes: Help/release/dev/export-interface-source-files.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From steveire at gmail.com Fri Feb 6 13:14:07 2015 From: steveire at gmail.com (Stephen Kelly) Date: Fri, 6 Feb 2015 13:14:07 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1106-ga56d580 Message-ID: <20150206181407.2AED9A9DFB@public.kitware.com> 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 a56d580574e11b13a9adb8de0632c6c0b4a8a4da (commit) via 4ac168031fc4819d41851a9fee7e61881a37de27 (commit) via 0e4c8bebeec03167707571e1f3c6c0ee156c5a3b (commit) via b58c846b24475aa2f7fdb57139d04717d6d3007e (commit) via 93bd212735198d7420de6613bc5557ff0acc2d5a (commit) from 3aea9271e7d727191e862f67cb29341334a73b4b (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=a56d580574e11b13a9adb8de0632c6c0b4a8a4da commit a56d580574e11b13a9adb8de0632c6c0b4a8a4da Merge: 3aea927 4ac1680 Author: Stephen Kelly AuthorDate: Fri Feb 6 13:14:05 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 13:14:05 2015 -0500 Merge topic 'export-interface-source-files' into next 4ac16803 Add release notes for export-interface-source-files. 0e4c8beb Allow export of targets with INTERFACE_SOURCES. b58c846b Tests: Move build-property-paths test stderr files. 93bd2127 Tests: Run build-property-paths tests with a parameter. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4ac168031fc4819d41851a9fee7e61881a37de27 commit 4ac168031fc4819d41851a9fee7e61881a37de27 Author: Stephen Kelly AuthorDate: Thu Feb 5 20:40:51 2015 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:12:41 2015 +0100 Add release notes for export-interface-source-files. diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst new file mode 100644 index 0000000..00dcd25 --- /dev/null +++ b/Help/release/dev/export-interface-source-files.rst @@ -0,0 +1,6 @@ +export-interface-source-files +----------------------------- + +* It is now possible to export targets which populate the + :prop_tgt:`INTERFACE_SOURCES` target property using the + :command:`install(EXPORT)` and :command:`export()` commands. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0e4c8bebeec03167707571e1f3c6c0ee156c5a3b commit 0e4c8bebeec03167707571e1f3c6c0ee156c5a3b Author: Stephen Kelly AuthorDate: Fri Nov 28 18:58:38 2014 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:12:41 2015 +0100 Allow export of targets with INTERFACE_SOURCES. Use the same rules for paths in source and binary dirs in installed INTERFACE_SOURCES as are used for INTERFACE_INCLUDE_DIRECTORIES. diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index 832240a..d6f148d 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -22,10 +22,6 @@ items will populate the :prop_tgt:`SOURCES` property of following arguments specify sources. Repeated calls for the same ```` append items in the order called. -Targets with :prop_tgt:`INTERFACE_SOURCES` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Arguments to ``target_sources`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Help/prop_tgt/INTERFACE_SOURCES.rst b/Help/prop_tgt/INTERFACE_SOURCES.rst index 696ee95..a224b68 100644 --- a/Help/prop_tgt/INTERFACE_SOURCES.rst +++ b/Help/prop_tgt/INTERFACE_SOURCES.rst @@ -12,10 +12,6 @@ When target dependencies are specified using :command:`target_link_libraries`, CMake will read this property from all target dependencies to determine the sources of the consumer. -Targets with ``INTERFACE_SOURCES`` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Contents of ``INTERFACE_SOURCES`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Source/cmExportBuildFileGenerator.cxx b/Source/cmExportBuildFileGenerator.cxx index a28ec48..b1203dd 100644 --- a/Source/cmExportBuildFileGenerator.cxx +++ b/Source/cmExportBuildFileGenerator.cxx @@ -68,16 +68,6 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) tei != this->Exports.end(); ++tei) { cmTarget* te = *tei; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } this->GenerateImportTargetCode(os, te); te->AppendBuildInterfaceIncludes(); @@ -87,6 +77,9 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateInterfaceProperty("INTERFACE_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); + this->PopulateInterfaceProperty("INTERFACE_SOURCES", te, + cmGeneratorExpression::BuildInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_COMPILE_DEFINITIONS", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index af4ce8b..71728be 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -224,7 +224,7 @@ static bool isSubDirectory(const char* a, const char* b) //---------------------------------------------------------------------------- static bool checkInterfaceDirs(const std::string &prepro, - cmTarget *target) + cmTarget *target, const std::string& prop) { const char* installDir = target->GetMakefile()->GetSafeDefinition("CMAKE_INSTALL_PREFIX"); @@ -250,20 +250,27 @@ static bool checkInterfaceDirs(const std::string &prepro, std::ostringstream e; if (genexPos != std::string::npos) { - switch (target->GetPolicyStatusCMP0041()) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - case cmPolicies::WARN: - messageType = cmake::WARNING; - e << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; - break; - case cmPolicies::OLD: - continue; - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::NEW: - hadFatalError = true; - break; // Issue fatal message. + switch (target->GetPolicyStatusCMP0041()) + { + case cmPolicies::WARN: + messageType = cmake::WARNING; + e << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; + break; + case cmPolicies::OLD: + continue; + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::NEW: + hadFatalError = true; + break; // Issue fatal message. + } + } + else + { + hadFatalError = true; } } if (cmHasLiteralPrefix(li->c_str(), "${_IMPORT_PREFIX}")) @@ -272,8 +279,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (!cmSystemTools::FileIsFullPath(li->c_str())) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains relative path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains relative path:\n" " \"" << *li << "\""; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -289,32 +296,35 @@ static bool checkInterfaceDirs(const std::string &prepro, (!inBinary || isSubDirectory(installDir, topBinaryDir)) && (!inSource || isSubDirectory(installDir, topSourceDir)); - if (!shouldContinue) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - switch(target->GetPolicyStatusCMP0052()) + if (!shouldContinue) { - case cmPolicies::WARN: + switch(target->GetPolicyStatusCMP0052()) { - std::ostringstream s; - s << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; - s << "Directory:\n \"" << *li << "\"\nin " - "INTERFACE_INCLUDE_DIRECTORIES of target \"" - << target->GetName() << "\" is a subdirectory of the install " - "directory:\n \"" << installDir << "\"\nhowever it is also " - "a subdirectory of the " << (inBinary ? "build" : "source") - << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) - << "\"" << std::endl; - target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, - s.str()); + case cmPolicies::WARN: + { + std::ostringstream s; + s << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; + s << "Directory:\n \"" << *li << "\"\nin " + "INTERFACE_INCLUDE_DIRECTORIES of target \"" + << target->GetName() << "\" is a subdirectory of the install " + "directory:\n \"" << installDir << "\"\nhowever it is also " + "a subdirectory of the " << (inBinary ? "build" : "source") + << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) + << "\"" << std::endl; + target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, + s.str()); + } + case cmPolicies::OLD: + shouldContinue = true; + break; + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::NEW: + break; } - case cmPolicies::OLD: - shouldContinue = true; - break; - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::NEW: - break; } } if (shouldContinue) @@ -324,8 +334,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (inBinary) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the build directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -333,8 +343,8 @@ static bool checkInterfaceDirs(const std::string &prepro, { if (inSource) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the source directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -365,6 +375,46 @@ static void prefixItems(std::string &exportDirs) } //---------------------------------------------------------------------------- +void cmExportFileGenerator::PopulateSourcesInterface( + cmTargetExport *tei, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets) +{ + cmTarget *target = tei->Target; + assert(preprocessRule == cmGeneratorExpression::InstallInterface); + + const char *propName = "INTERFACE_SOURCES"; + const char *input = target->GetProperty(propName); + + if (!input) + { + return; + } + + if (!*input) + { + properties[propName] = ""; + return; + } + + std::string prepro = cmGeneratorExpression::Preprocess(input, + preprocessRule, + true); + if (!prepro.empty()) + { + this->ResolveTargetsInGeneratorExpressions(prepro, target, + missingTargets); + + if (!checkInterfaceDirs(prepro, target, propName)) + { + return; + } + properties[propName] = prepro; + } +} + +//---------------------------------------------------------------------------- void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( cmTargetExport *tei, cmGeneratorExpression::PreprocessContext preprocessRule, @@ -424,7 +474,7 @@ void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( this->ResolveTargetsInGeneratorExpressions(prepro, target, missingTargets); - if (!checkInterfaceDirs(prepro, target)) + if (!checkInterfaceDirs(prepro, target, propName)) { return; } diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h index 919924e..b6f4166 100644 --- a/Source/cmExportFileGenerator.h +++ b/Source/cmExportFileGenerator.h @@ -139,6 +139,11 @@ protected: cmGeneratorExpression::PreprocessContext preprocessRule, ImportPropertyMap &properties, std::vector &missingTargets); + void PopulateSourcesInterface( + cmTargetExport *target, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets); void SetImportLinkInterface(const std::string& config, std::string const& suffix, diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index 98ed818..a0d9013 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -123,6 +123,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) bool require2_8_12 = false; bool require3_0_0 = false; + bool require3_1_0 = false; bool requiresConfigFiles = false; // Create all the imported targets. for(std::vector::const_iterator @@ -131,17 +132,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { cmTarget* te = (*tei)->Target; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } - requiresConfigFiles = requiresConfigFiles || te->GetType() != cmTarget::INTERFACE_LIBRARY; @@ -152,6 +142,9 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateIncludeDirectoriesInterface(*tei, cmGeneratorExpression::InstallInterface, properties, missingTargets); + this->PopulateSourcesInterface(*tei, + cmGeneratorExpression::InstallInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::InstallInterface, @@ -190,6 +183,13 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { require3_0_0 = true; } + if(te->GetProperty("INTERFACE_SOURCES")) + { + // We can only generate INTERFACE_SOURCES in CMake 3.3, but CMake 3.1 + // can consume them. + require3_1_0 = true; + } + this->PopulateInterfaceProperty("INTERFACE_POSITION_INDEPENDENT_CODE", te, properties); this->PopulateCompatibleInterfaceProperties(te, properties); @@ -197,7 +197,11 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->GenerateInterfaceProperties(te, os, properties); } - if (require3_0_0) + if (require3_1_0) + { + this->GenerateRequiredCMakeVersion(os, "3.1.0"); + } + else if (require3_0_0) { this->GenerateRequiredCMakeVersion(os, "3.0.0"); } diff --git a/Tests/ExportImport/Export/Interface/CMakeLists.txt b/Tests/ExportImport/Export/Interface/CMakeLists.txt index 523fc29..00a5375 100644 --- a/Tests/ExportImport/Export/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Export/Interface/CMakeLists.txt @@ -29,7 +29,17 @@ target_compile_features(use_auto_type INTERFACE cxx_auto_type) add_library(use_c_restrict INTERFACE) target_compile_features(use_c_restrict INTERFACE c_restrict) -install(TARGETS headeronly sharediface use_auto_type use_c_restrict +add_library(source_target INTERFACE) +target_sources(source_target INTERFACE + $ + $/src/source_target_for_install.cpp> +) +install(FILES + source_target_for_install.cpp + DESTINATION src +) + +install(TARGETS headeronly sharediface use_auto_type use_c_restrict source_target EXPORT expInterface ) install(TARGETS sharedlib diff --git a/Tests/ExportImport/Export/Interface/source_target.cpp b/Tests/ExportImport/Export/Interface/source_target.cpp new file mode 100644 index 0000000..037191c --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target.cpp @@ -0,0 +1,13 @@ + +#ifndef USE_FROM_BUILD_DIR +#error Expected define USE_FROM_BUILD_DIR +#endif + +#ifdef USE_FROM_INSTALL_DIR +#error Unexpected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Export/Interface/source_target_for_install.cpp b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp new file mode 100644 index 0000000..64514ed --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp @@ -0,0 +1,13 @@ + +#ifdef USE_FROM_BUILD_DIR +#error Unexpected define USE_FROM_BUILD_DIR +#endif + +#ifndef USE_FROM_INSTALL_DIR +#error Expected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Import/Interface/CMakeLists.txt b/Tests/ExportImport/Import/Interface/CMakeLists.txt index 4028405..51d518e 100644 --- a/Tests/ExportImport/Import/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Import/Interface/CMakeLists.txt @@ -82,6 +82,14 @@ endmacro() do_try_compile(bld) +add_executable(source_target_test_bld source_target_test.cpp) +target_link_libraries(source_target_test_bld bld::source_target) +target_compile_definitions(source_target_test_bld PRIVATE USE_FROM_BUILD_DIR) + +add_executable(source_target_test_exp source_target_test.cpp) +target_link_libraries(source_target_test_exp exp::source_target) +target_compile_definitions(source_target_test_exp PRIVATE USE_FROM_INSTALL_DIR) + add_executable(headeronlytest_exp headeronlytest.cpp) target_link_libraries(headeronlytest_exp exp::headeronly) diff --git a/Tests/ExportImport/Import/Interface/source_target_test.cpp b/Tests/ExportImport/Import/Interface/source_target_test.cpp new file mode 100644 index 0000000..0e8ec5f --- /dev/null +++ b/Tests/ExportImport/Import/Interface/source_target_test.cpp @@ -0,0 +1,7 @@ + +extern int source_symbol(); + +int main() +{ + return source_symbol() - 42; +} diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index a6a4100..6519682 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -192,6 +192,9 @@ add_RunCMake_test(ExternalProject) set(build-property-paths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) add_RunCMake_test(build-property-paths_INCLUDE_DIRECTORIES TEST_DIR build-property-paths) +set(build-property-paths_SOURCES_ARGS -DTEST_PROP=SOURCES) +add_RunCMake_test(build-property-paths_SOURCES TEST_DIR build-property-paths) + if(RPMBUILD) add_RunCMake_test(CPackRPM) endif() diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/TargetSources/ExportBuild-result.txt index d00491f..573541a 100644 --- a/Tests/RunCMake/TargetSources/ExportBuild-result.txt +++ b/Tests/RunCMake/TargetSources/ExportBuild-result.txt @@ -1 +1 @@ -1 +0 diff --git a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt b/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt b/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall.cmake b/Tests/RunCMake/TargetSources/ExportInstall.cmake deleted file mode 100644 index 8e7c9f9..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall.cmake +++ /dev/null @@ -1,6 +0,0 @@ - -add_library(iface INTERFACE) -target_sources(iface INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/empty_1.cpp") - -install(TARGETS iface EXPORT exp) -install(EXPORT exp DESTINATION cmake) diff --git a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake index 1b4ef0b..4416ef9 100644 --- a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake +++ b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake @@ -10,4 +10,3 @@ endif() run_cmake(CMP0026-LOCATION) run_cmake(RelativePathInInterface) run_cmake(ExportBuild) -run_cmake(ExportInstall) diff --git a/Tests/RunCMake/TargetSources/ExportInstall-result.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/TargetSources/ExportInstall-result.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..fa39ff8 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/prefix/BinInInstallPrefix-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..bed2424 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/BinaryDirectoryInInterface-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake index 67ee7de..7001f3f 100644 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_BINARY_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_BINARY_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake b/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake index fab7717..f5f3005 100644 --- a/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake +++ b/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake @@ -1,6 +1,11 @@ enable_language(CXX) add_library(testTarget empty.cpp) -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/dir") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/dir") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_INSTALL_PREFIX}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt new file mode 100644 index 0000000..02a8198 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/InstallInBinDir-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt new file mode 100644 index 0000000..aece1ab --- /dev/null +++ b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/copy/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt new file mode 100644 index 0000000..2311af9 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" contains relative path in its INTERFACE_SOURCES: + + "empty.cpp" diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake b/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake index 070a381..489c3a1 100644 --- a/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake +++ b/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake @@ -2,7 +2,12 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "$<1:empty.cpp>") +endif() add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") target_link_libraries(userTarget testTarget) diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..f0f002c --- /dev/null +++ b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains relative path: + + "empty.cpp" diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake b/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake index 4c4727d..e974aac 100644 --- a/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake +++ b/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake @@ -2,8 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") - +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib ) diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..187ccdf --- /dev/null +++ b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake index f814a3c..d80cbec 100644 --- a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake +++ b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt similarity index 100% copy from Tests/RunCMake/TargetSources/ExportBuild-result.txt copy to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..6a123f7 --- /dev/null +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/build-property-paths_SOURCES/prefix/src/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/export-NOWARN.cmake b/Tests/RunCMake/build-property-paths/export-NOWARN.cmake index 50720a0..592572c 100644 --- a/Tests/RunCMake/build-property-paths/export-NOWARN.cmake +++ b/Tests/RunCMake/build-property-paths/export-NOWARN.cmake @@ -1,19 +1,34 @@ enable_language(CXX) add_library(foo empty.cpp) + set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<0:>/include/subdir) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $<0:>/include/subdir/empty.cpp) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) # target_include_directories(foo INTERFACE include/subdir) # Does and should warn. INSTALL_INTERFACE must not list src dir paths. target_include_directories(foo INTERFACE $<0:>/include/subdir) # Does not and should not should warn, because it starts with a genex. target_include_directories(foo INTERFACE $/include/subdir) +target_sources(foo INTERFACE $<0:>/include/subdir/empty.cpp) +target_sources(foo INTERFACE $/include/subdir/empty.cpp) target_include_directories(foo INTERFACE $) target_include_directories(foo INTERFACE $>) +target_sources(foo INTERFACE $) +target_sources(foo INTERFACE $>) + +install(FILES include/subdir/empty.cpp + DESTINATION include/subdir +) install(TARGETS foo EXPORT FooTargets DESTINATION lib) install(EXPORT FooTargets DESTINATION lib/cmake) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b58c846b24475aa2f7fdb57139d04717d6d3007e commit b58c846b24475aa2f7fdb57139d04717d6d3007e Author: Stephen Kelly AuthorDate: Sun Nov 30 13:54:18 2014 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:12:31 2015 +0100 Tests: Move build-property-paths test stderr files. Rename the files with a property-specific name, so that additional properties can be easily tested. Extend the RunCMake infrastructure to allow specifying a non-uniform stderr file location. diff --git a/Tests/RunCMake/RunCMake.cmake b/Tests/RunCMake/RunCMake.cmake index 33b745d..6389ef4 100644 --- a/Tests/RunCMake/RunCMake.cmake +++ b/Tests/RunCMake/RunCMake.cmake @@ -18,7 +18,10 @@ function(run_cmake test) set(expect_result 0) endif() foreach(o out err) - if(EXISTS ${top_src}/${test}-std${o}.txt) + if(RunCMake-std${o}-file AND EXISTS ${top_src}/${RunCMake-std${o}-file}) + file(READ ${top_src}/${RunCMake-std${o}-file} expect_std${o}) + string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") + elseif(EXISTS ${top_src}/${test}-std${o}.txt) file(READ ${top_src}/${test}-std${o}.txt expect_std${o}) string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") else() diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt rename to Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt rename to Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr.txt rename to Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake index eefdbf7..54d0cd8 100644 --- a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake +++ b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake @@ -2,6 +2,7 @@ include(RunCMake) macro(run_cmake test) list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + set(RunCMake-stderr-file ${test}-stderr_${TEST_PROP}.txt) _run_cmake(${test}) endmacro() diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr.txt rename to Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=93bd212735198d7420de6613bc5557ff0acc2d5a commit 93bd212735198d7420de6613bc5557ff0acc2d5a Author: Stephen Kelly AuthorDate: Sun Nov 30 13:42:00 2014 +0100 Commit: Stephen Kelly CommitDate: Fri Feb 6 19:12:31 2015 +0100 Tests: Run build-property-paths tests with a parameter. Run the tests for the INCLUDE_DIRECTORIES INTERFACE property in a specific build location, and update the stderr expectation to match the new output. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 88f4ab2..a6a4100 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -1,17 +1,28 @@ # See adjacent README.rst for documentation of this test infrastructure. macro(add_RunCMake_test test) + set(TEST_ARGS ${ARGN}) + if ("${ARGV1}" STREQUAL "TEST_DIR") + if ("${ARGV2}" STREQUAL "") + message(FATAL_ERROR "Invalid args") + endif() + set(Test_Dir ${ARGV2}) + list(REMOVE_AT TEST_ARGS 0) + list(REMOVE_AT TEST_ARGS 0) + else() + set(Test_Dir ${test}) + endif() add_test(NAME RunCMake.${test} COMMAND ${CMAKE_CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} -DRunCMake_GENERATOR=${CMAKE_GENERATOR} -DRunCMake_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM} -DRunCMake_GENERATOR_TOOLSET=${CMAKE_GENERATOR_TOOLSET} -DRunCMake_MAKE_PROGRAM=${CMake_TEST_EXPLICIT_MAKE_PROGRAM} - -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${test} + -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir} -DRunCMake_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}/${test} ${${test}_ARGS} - ${ARGN} - -P "${CMAKE_CURRENT_SOURCE_DIR}/${test}/RunCMakeTest.cmake" + ${TEST_ARGS} + -P "${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir}/RunCMakeTest.cmake" ) endmacro() @@ -177,7 +188,9 @@ add_RunCMake_test(CommandLine) add_RunCMake_test(install) add_RunCMake_test(CPackInstallProperties) add_RunCMake_test(ExternalProject) -add_RunCMake_test(build-property-paths) + +set(build-property-paths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) +add_RunCMake_test(build-property-paths_INCLUDE_DIRECTORIES TEST_DIR build-property-paths) if(RPMBUILD) add_RunCMake_test(CPackRPM) diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt index e8c47b1..8db7283 100644 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt index c0c4806..6473efe 100644 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/build-property-paths/prefix" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix" however it is also a subdirectory of the build tree: - ".*Tests/RunCMake/build-property-paths/prefix/BinInInstallPrefix-CMP0052-WARN-build" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt index 332c237..94c46ab 100644 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/build-property-paths/BinaryDirectoryInInterface-build/foo" + ".*RunCMake/build-property-paths_INCLUDE_DIRECTORIES/BinaryDirectoryInInterface-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt index 504e332..83ae34c 100644 --- a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt +++ b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/InstallInBinDir-build/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/InstallInBinDir-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt index 5f0a3ea..a7a5af4 100644 --- a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt +++ b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/copy/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/copy/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake index 2add175..eefdbf7 100644 --- a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake +++ b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake @@ -1,5 +1,10 @@ include(RunCMake) +macro(run_cmake test) + list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + _run_cmake(${test}) +endmacro() + run_cmake(RelativePathInInterface) run_cmake(RelativePathInGenex) run_cmake(export-NOWARN) @@ -57,12 +62,15 @@ configure_file( COPYONLY ) -foreach(policyStatus "" NEW OLD) - if (NOT "${policyStatus}" STREQUAL "") - set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) - else() - unset(policyOption) - set(policyStatus WARN) +foreach(policyStatus NEW OLD "") + if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + if (NOT "${policyStatus}" STREQUAL "") + set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) + else() + unset(policyOption) + set(policyStatus WARN) + endif() + set(policySuffix -CMP0052-${policyStatus}) endif() set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} @@ -73,16 +81,20 @@ foreach(policyStatus "" NEW OLD) # a subdirectory or the source directory, which is allowed and tested separately # below. set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build") - run_cmake(BinInInstallPrefix-CMP0052-${policyStatus}) + set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix${policySuffix}-build") + run_cmake(BinInInstallPrefix${policySuffix}) unset(RunCMake_TEST_BINARY_DIR) set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" ) - run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus}) + run_cmake(SrcInInstallPrefix${policySuffix}) unset(RunCMake_TEST_SOURCE_DIR) + + if (NOT TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + break() + endif() endforeach() set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt index 4838a53..2af50d5 100644 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths/prefix/src/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt index 8b2d69d..56aaa2c 100644 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/build-property-paths/prefix/src/foo" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/build-property-paths/prefix" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix" however it is also a subdirectory of the source tree: - ".*Tests/RunCMake/build-property-paths/prefix/src" + ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src" This warning is for project developers. Use -Wno-dev to suppress it. ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Fri Feb 6 13:39:53 2015 From: brad.king at kitware.com (Brad King) Date: Fri, 6 Feb 2015 13:39:53 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1110-gac06e3e Message-ID: <20150206183953.EEB3949B8@public.kitware.com> 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 ac06e3ebdab8cdec3195464774bf91f9404929a4 (commit) via 0f870234febd9dba0df78e903b412ea19d681062 (commit) via cd408d93fdf347ff63a8062f75f1f4ee3e898b17 (commit) via 87be2e1427ba2b1b7697c9332487862917897dca (commit) from a56d580574e11b13a9adb8de0632c6c0b4a8a4da (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=ac06e3ebdab8cdec3195464774bf91f9404929a4 commit ac06e3ebdab8cdec3195464774bf91f9404929a4 Merge: a56d580 0f87023 Author: Brad King AuthorDate: Fri Feb 6 13:39:52 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 13:39:52 2015 -0500 Merge topic 'no-global-setlocale' into next 0f870234 Merge branch 'backport-no-global-setlocale' into no-global-setlocale cd408d93 Add setlocale() calls around use of libarchive APIs (#14934, #15377) 87be2e14 Do not call setlocale() globally in CMake applications (#15377) diff --cc Source/cmSystemTools.cxx index fea3b5f,6a7467f..2d70ab4 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@@ -26,7 -26,9 +26,8 @@@ #include #if defined(CMAKE_BUILD_WITH_CMAKE) # include "cmArchiveWrite.h" + # include "cmLocale.h" # include -# include #endif #include #include http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0f870234febd9dba0df78e903b412ea19d681062 commit 0f870234febd9dba0df78e903b412ea19d681062 Merge: 78c4418 cd408d9 Author: Brad King AuthorDate: Fri Feb 6 13:35:21 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 13:35:21 2015 -0500 Merge branch 'backport-no-global-setlocale' into no-global-setlocale Resolve conflict in Source/CMakeLists.txt by taking both changes. diff --cc Source/CMakeLists.txt index 07839f3,1ff1c16..8a83c3e --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@@ -277,7 -261,7 +277,8 @@@ set(SRC cmLocalGenerator.cxx cmLocalGenerator.h cmLocalUnixMakefileGenerator3.cxx + cmLocale.h + ${MACH_SRCS} cmMakeDepend.cxx cmMakeDepend.h cmMakefile.cxx http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cd408d93fdf347ff63a8062f75f1f4ee3e898b17 commit cd408d93fdf347ff63a8062f75f1f4ee3e898b17 Author: Brad King AuthorDate: Fri Feb 6 13:23:07 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 13:32:57 2015 -0500 Add setlocale() calls around use of libarchive APIs (#14934, #15377) The libarchive APIs use nl_langinfo(CODESET) for iconv so they need the locale to be set for LC_CTYPE. However, the rest of CMake does not define any behavior for non-ASCII character classification/conversion so we do not want to setlocale() globally. Add a RAII class to save, set, and restore the locale around calls to libarchive APIs. Inspired-by: Clinton Stimpson diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index f9405b3..1ff1c16 100644 --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@ -261,6 +261,7 @@ set(SRCS cmLocalGenerator.cxx cmLocalGenerator.h cmLocalUnixMakefileGenerator3.cxx + cmLocale.h cmMakeDepend.cxx cmMakeDepend.h cmMakefile.cxx diff --git a/Source/cmArchiveWrite.cxx b/Source/cmArchiveWrite.cxx index a2aecac..9f28d42 100644 --- a/Source/cmArchiveWrite.cxx +++ b/Source/cmArchiveWrite.cxx @@ -12,6 +12,7 @@ #include "cmArchiveWrite.h" #include "cmSystemTools.h" +#include "cmLocale.h" #include #include #include @@ -259,6 +260,9 @@ bool cmArchiveWrite::AddFile(const char* file, } const char* out = file + skip; + cmLocaleRAII localeRAII; + static_cast(localeRAII); + // Meta-data. std::string dest = prefix? prefix : ""; dest += out; diff --git a/Source/cmLocale.h b/Source/cmLocale.h new file mode 100644 index 0000000..727f0f5 --- /dev/null +++ b/Source/cmLocale.h @@ -0,0 +1,31 @@ +/*============================================================================ + CMake - Cross Platform Makefile Generator + Copyright 2000-2015 Kitware, Inc., Insight Software Consortium + + Distributed under the OSI-approved BSD License (the "License"); + see accompanying file Copyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the License for more information. +============================================================================*/ +#ifndef cmLocale_h +#define cmLocale_h + +#include + +class cmLocaleRAII +{ + const char* OldLocale; +public: + cmLocaleRAII(): OldLocale(setlocale(LC_CTYPE, 0)) + { + setlocale(LC_CTYPE, ""); + } + ~cmLocaleRAII() + { + setlocale(LC_CTYPE, this->OldLocale); + } +}; + +#endif diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index fbb4416..89efdc7 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -28,6 +28,7 @@ #include #if defined(CMAKE_BUILD_WITH_CMAKE) # include "cmArchiveWrite.h" +# include "cmLocale.h" # include # include #endif @@ -1691,6 +1692,8 @@ long copy_data(struct archive *ar, struct archive *aw) bool extract_tar(const char* outFileName, bool verbose, bool extract) { + cmLocaleRAII localeRAII; + static_cast(localeRAII); struct archive* a = archive_read_new(); struct archive *ext = archive_write_disk_new(); archive_read_support_compression_all(a); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=87be2e1427ba2b1b7697c9332487862917897dca commit 87be2e1427ba2b1b7697c9332487862917897dca Author: Brad King AuthorDate: Fri Feb 6 13:09:37 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 13:32:26 2015 -0500 Do not call setlocale() globally in CMake applications (#15377) Revert the changes made by commit v3.1.0-rc1~406^2~1 (Encoding: Add setlocale() to applications, 2014-05-30) and commit v3.1.0-rc1~406^2 (Encoding: Change to only set LC_CTYPE, 2014-06-11), and other setlocale calls added later in their spirit. CMake has not been taught how to deal with non-C locales everywhere. We do not define any functionality for character conversions for non-ASCII strings. Another solution will be needed to address the original problem motivating addition of setlocale() calls. diff --git a/Source/CPack/cpack.cxx b/Source/CPack/cpack.cxx index c57028d..0173361 100644 --- a/Source/CPack/cpack.cxx +++ b/Source/CPack/cpack.cxx @@ -26,7 +26,6 @@ #include #include #include -#include //---------------------------------------------------------------------------- static const char * cmDocumentationName[][2] = @@ -101,7 +100,6 @@ int cpackDefinitionArgument(const char* argument, const char* cValue, // this is CPack. int main (int argc, char const* const* argv) { - setlocale(LC_CTYPE, ""); cmsys::Encoding::CommandLineArguments args = cmsys::Encoding::CommandLineArguments::Main(argc, argv); argc = args.argc(); diff --git a/Source/CursesDialog/ccmake.cxx b/Source/CursesDialog/ccmake.cxx index 28f3d9b..3d92a2d 100644 --- a/Source/CursesDialog/ccmake.cxx +++ b/Source/CursesDialog/ccmake.cxx @@ -16,7 +16,6 @@ #include #include -#include #include "cmCursesMainForm.h" #include "cmCursesStandardIncludes.h" @@ -95,8 +94,6 @@ void CMakeMessageHandler(const char* message, const char* title, bool&, int main(int argc, char const* const* argv) { - setlocale(LC_CTYPE, ""); - cmsys::Encoding::CommandLineArguments encoding_args = cmsys::Encoding::CommandLineArguments::Main(argc, argv); argc = encoding_args.argc(); diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx index 61b175e..e825f1f 100644 --- a/Source/cmakemain.cxx +++ b/Source/cmakemain.cxx @@ -25,7 +25,6 @@ #include "cmLocalGenerator.h" #include "cmMakefile.h" #include -#include #ifdef CMAKE_BUILD_WITH_CMAKE //---------------------------------------------------------------------------- @@ -175,7 +174,6 @@ static void cmakemainProgressCallback(const char *m, float prog, int main(int ac, char const* const* av) { - setlocale(LC_CTYPE, ""); cmsys::Encoding::CommandLineArguments args = cmsys::Encoding::CommandLineArguments::Main(ac, av); ac = args.argc(); diff --git a/Source/ctest.cxx b/Source/ctest.cxx index fb97af6..3fe31ca 100644 --- a/Source/ctest.cxx +++ b/Source/ctest.cxx @@ -19,7 +19,6 @@ #include "CTest/cmCTestScriptHandler.h" #include "CTest/cmCTestLaunch.h" #include "cmsys/Encoding.hxx" -#include //---------------------------------------------------------------------------- static const char * cmDocumentationName[][2] = @@ -117,8 +116,6 @@ static const char * cmDocumentationOptions[][2] = // this is a test driver program for cmCTest. int main (int argc, char const* const* argv) { - setlocale(LC_CTYPE, ""); - cmsys::Encoding::CommandLineArguments encoding_args = cmsys::Encoding::CommandLineArguments::Main(argc, argv); argc = encoding_args.argc(); diff --git a/Tests/CTestTestMemcheck/memtester.cxx.in b/Tests/CTestTestMemcheck/memtester.cxx.in index 43c0ba7..c018e08 100644 --- a/Tests/CTestTestMemcheck/memtester.cxx.in +++ b/Tests/CTestTestMemcheck/memtester.cxx.in @@ -1,14 +1,12 @@ #include #include #include -#include #define RETVAL @_retval@ int main(int ac, char **av) { - setlocale(LC_CTYPE, ""); cmsys::Encoding::CommandLineArguments args = cmsys::Encoding::CommandLineArguments::Main(ac, av); int argc = args.argc(); ----------------------------------------------------------------------- Summary of changes: Source/CMakeLists.txt | 1 + Source/CPack/cpack.cxx | 2 -- Source/CursesDialog/ccmake.cxx | 3 --- Source/cmArchiveWrite.cxx | 4 ++++ Source/{cmCurl.h => cmLocale.h} | 22 ++++++++++++++++------ Source/cmSystemTools.cxx | 3 +++ Source/cmakemain.cxx | 2 -- Source/ctest.cxx | 3 --- Tests/CMakeLib/PseudoMemcheck/memtester.cxx.in | 2 -- 9 files changed, 24 insertions(+), 18 deletions(-) copy Source/{cmCurl.h => cmLocale.h} (67%) hooks/post-receive -- CMake From brad.king at kitware.com Fri Feb 6 16:44:37 2015 From: brad.king at kitware.com (Brad King) Date: Fri, 6 Feb 2015 16:44:37 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1112-g57d15db Message-ID: <20150206214437.F0F59AAAEB@public.kitware.com> 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 57d15db5af7074d421ee5f86eafcf852c93e2d6a (commit) via c6ada8275b680e02f50a7aee1c02b0b184cadf83 (commit) from ac06e3ebdab8cdec3195464774bf91f9404929a4 (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=57d15db5af7074d421ee5f86eafcf852c93e2d6a commit 57d15db5af7074d421ee5f86eafcf852c93e2d6a Merge: ac06e3e c6ada82 Author: Brad King AuthorDate: Fri Feb 6 16:44:37 2015 -0500 Commit: CMake Topic Stage CommitDate: Fri Feb 6 16:44:37 2015 -0500 Merge topic 'fix-make-parallel-output' into next c6ada827 Makefile: Print all color escape sequences before newline http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c6ada8275b680e02f50a7aee1c02b0b184cadf83 commit c6ada8275b680e02f50a7aee1c02b0b184cadf83 Author: Brad King AuthorDate: Fri Feb 6 16:39:00 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 16:41:51 2015 -0500 Makefile: Print all color escape sequences before newline Ensure that the escape sequences do not leak across lines. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index ec3d846..f50d16c 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -2304,13 +2304,19 @@ void cmSystemTools::MakefileColorEcho(int color, const char* message, if(enabled) { - cmsysTerminal_cfprintf(color | assumeTTY, stdout, "%s%s", - message, newline? "\n" : ""); + // Print with color. Delay the newline until later so that + // all color restore sequences appear before it. + cmsysTerminal_cfprintf(color | assumeTTY, stdout, "%s", message); } else { // Color is disabled. Print without color. - fprintf(stdout, "%s%s", message, newline? "\n" : ""); + fprintf(stdout, "%s", message); + } + + if(newline) + { + fprintf(stdout, "\n"); } } ----------------------------------------------------------------------- Summary of changes: Source/cmSystemTools.cxx | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Sat Feb 7 00:01:11 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Sat, 7 Feb 2015 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1020-g8b7e5e5 Message-ID: <20150207050111.3A09AAAAF3@public.kitware.com> 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 8b7e5e599616b6b805d87addc12050a6d6987429 (commit) from 3f73531d4e415c9c6182e162028eb146922d3c90 (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=8b7e5e599616b6b805d87addc12050a6d6987429 commit 8b7e5e599616b6b805d87addc12050a6d6987429 Author: Kitware Robot AuthorDate: Sat Feb 7 00:01:09 2015 -0500 Commit: Kitware Robot CommitDate: Sat Feb 7 00:01:09 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index ee29533..acb4882 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150206) +set(CMake_VERSION_PATCH 20150207) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Sat Feb 7 06:52:05 2015 From: brad.king at kitware.com (Brad King) Date: Sat, 7 Feb 2015 06:52:05 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1116-g82caa82 Message-ID: <20150207115206.5F864AA168@public.kitware.com> 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 82caa821d99066ee5eba5dcdbd0ee937b6890919 (commit) via 63668954e002aa41ff0287aae22caeeacdc0c356 (commit) via ae775fe8041183030c69db1714c898b6e74f1284 (commit) via 7bb50e4a31ad5a8a58fe60885014d431a887b27f (commit) from 57d15db5af7074d421ee5f86eafcf852c93e2d6a (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=82caa821d99066ee5eba5dcdbd0ee937b6890919 commit 82caa821d99066ee5eba5dcdbd0ee937b6890919 Merge: 57d15db 6366895 Author: Brad King AuthorDate: Sat Feb 7 06:52:03 2015 -0500 Commit: CMake Topic Stage CommitDate: Sat Feb 7 06:52:03 2015 -0500 Merge topic 'makefile-progress-improvements' into next 63668954 Help: Add notes for topic 'makefile-progress-improvements' ae775fe8 Makefile: Change link step message color to bold green 7bb50e4a Makefile: Add progress to link step messages http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=63668954e002aa41ff0287aae22caeeacdc0c356 commit 63668954e002aa41ff0287aae22caeeacdc0c356 Author: Brad King AuthorDate: Fri Feb 6 19:16:45 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 19:16:45 2015 -0500 Help: Add notes for topic 'makefile-progress-improvements' diff --git a/Help/release/dev/makefile-progress-improvements.rst b/Help/release/dev/makefile-progress-improvements.rst new file mode 100644 index 0000000..9cc9706 --- /dev/null +++ b/Help/release/dev/makefile-progress-improvements.rst @@ -0,0 +1,7 @@ +makefile-progress-improvements +------------------------------ + +* With Makefile generators, the build-time progress output has been improved. + It no longer mixes progress and build rule messages during parallel builds. + The link rule messages now have progress and are displayed as bold green + instead of bold red (since red is often associated with an error message). http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae775fe8041183030c69db1714c898b6e74f1284 commit ae775fe8041183030c69db1714c898b6e74f1284 Author: Brad King AuthorDate: Fri Feb 6 19:07:56 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 19:07:56 2015 -0500 Makefile: Change link step message color to bold green Avoid displaying red messages when no error has occurred. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index c60a9c7..c4f7243 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -1367,7 +1367,7 @@ cmLocalUnixMakefileGenerator3::AppendEcho(std::vector& commands, color_name = "--green "; break; case EchoLink: - color_name = "--red --bold "; + color_name = "--green --bold "; break; case EchoGenerate: color_name = "--blue --bold "; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7bb50e4a31ad5a8a58fe60885014d431a887b27f commit 7bb50e4a31ad5a8a58fe60885014d431a887b27f Author: Brad King AuthorDate: Fri Feb 6 19:07:24 2015 -0500 Commit: Brad King CommitDate: Fri Feb 6 19:07:24 2015 -0500 Makefile: Add progress to link step messages diff --git a/Source/cmMakefileExecutableTargetGenerator.cxx b/Source/cmMakefileExecutableTargetGenerator.cxx index d4036d2..ab58cbd 100644 --- a/Source/cmMakefileExecutableTargetGenerator.cxx +++ b/Source/cmMakefileExecutableTargetGenerator.cxx @@ -171,15 +171,19 @@ void cmMakefileExecutableTargetGenerator::WriteExecutableRule(bool relink) return; } + this->NumberOfProgressActions++; if(!this->NoRuleMessages) { + cmLocalUnixMakefileGenerator3::EchoProgress progress; + this->MakeEchoProgress(progress); // Add the link message. std::string buildEcho = "Linking "; buildEcho += linkLanguage; buildEcho += " executable "; buildEcho += targetOutPath; this->LocalGenerator->AppendEcho(commands, buildEcho.c_str(), - cmLocalUnixMakefileGenerator3::EchoLink); + cmLocalUnixMakefileGenerator3::EchoLink, + &progress); } // Build a list of compiler flags and linker flags. diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx index cdda36c..84761cc 100644 --- a/Source/cmMakefileLibraryTargetGenerator.cxx +++ b/Source/cmMakefileLibraryTargetGenerator.cxx @@ -341,8 +341,11 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules this->Convert(targetFullPathImport,cmLocalGenerator::START_OUTPUT, cmLocalGenerator::SHELL); + this->NumberOfProgressActions++; if(!this->NoRuleMessages) { + cmLocalUnixMakefileGenerator3::EchoProgress progress; + this->MakeEchoProgress(progress); // Add the link message. std::string buildEcho = "Linking "; buildEcho += linkLanguage; @@ -365,7 +368,8 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules } buildEcho += targetOutPath.c_str(); this->LocalGenerator->AppendEcho(commands, buildEcho.c_str(), - cmLocalUnixMakefileGenerator3::EchoLink); + cmLocalUnixMakefileGenerator3::EchoLink, + &progress); } const char* forbiddenFlagVar = 0; ----------------------------------------------------------------------- Summary of changes: Help/release/dev/makefile-progress-improvements.rst | 7 +++++++ Source/cmLocalUnixMakefileGenerator3.cxx | 2 +- Source/cmMakefileExecutableTargetGenerator.cxx | 6 +++++- Source/cmMakefileLibraryTargetGenerator.cxx | 6 +++++- 4 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 Help/release/dev/makefile-progress-improvements.rst hooks/post-receive -- CMake From kwrobot at kitware.com Sun Feb 8 00:01:11 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 8 Feb 2015 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1021-gd30036c Message-ID: <20150208050111.1B0FFAAA18@public.kitware.com> 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 d30036cfadb6f5ad927bf5f968f7e93472b50c45 (commit) from 8b7e5e599616b6b805d87addc12050a6d6987429 (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=d30036cfadb6f5ad927bf5f968f7e93472b50c45 commit d30036cfadb6f5ad927bf5f968f7e93472b50c45 Author: Kitware Robot AuthorDate: Sun Feb 8 00:01:08 2015 -0500 Commit: Kitware Robot CommitDate: Sun Feb 8 00:01:08 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index acb4882..4747b4c 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150207) +set(CMake_VERSION_PATCH 20150208) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From domen.vrankar at gmail.com Sun Feb 8 14:05:25 2015 From: domen.vrankar at gmail.com (Domen Vrankar) Date: Sun, 8 Feb 2015 14:05:25 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1118-g1952221 Message-ID: <20150208190525.8B6B1AAD14@public.kitware.com> 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 19522216e892f73351dc480507040cd453a795cb (commit) via 521d4cc55eee3e0c541af822f4d786978b6bf31d (commit) from 82caa821d99066ee5eba5dcdbd0ee937b6890919 (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=19522216e892f73351dc480507040cd453a795cb commit 19522216e892f73351dc480507040cd453a795cb Merge: 82caa82 521d4cc Author: Domen Vrankar AuthorDate: Sun Feb 8 14:05:24 2015 -0500 Commit: CMake Topic Stage CommitDate: Sun Feb 8 14:05:24 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' into next 521d4cc5 fixup! CPackRPM: Allow multiple path relocation prefixes for one package http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=521d4cc55eee3e0c541af822f4d786978b6bf31d commit 521d4cc55eee3e0c541af822f4d786978b6bf31d Author: Domen Vrankar AuthorDate: Sun Feb 8 20:03:53 2015 +0100 Commit: Domen Vrankar CommitDate: Sun Feb 8 20:03:53 2015 +0100 fixup! CPackRPM: Allow multiple path relocation prefixes for one package diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index 43e3fe0..214d655 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -442,7 +442,7 @@ function(cpack_rpm_prepare_relocation_paths) # set other path prefixes foreach(RELOCATION_PATH ${RPM_RELOCATION_PATHS}) - if(IS_ABSOLUTE "${RELOCATE_PATH}") + if(IS_ABSOLUTE "${RELOCATION_PATH}") set(PREPARED_RELOCATION_PATH "${RELOCATION_PATH}") else() set(PREPARED_RELOCATION_PATH "${PATH_PREFIX}/${RELOCATION_PATH}") ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From kwrobot at kitware.com Mon Feb 9 00:01:11 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Mon, 9 Feb 2015 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1022-g9bbfe76 Message-ID: <20150209050111.621F2AAA31@public.kitware.com> 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 9bbfe76d2c899fdbb54eb92716aea7282d2f3cce (commit) from d30036cfadb6f5ad927bf5f968f7e93472b50c45 (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=9bbfe76d2c899fdbb54eb92716aea7282d2f3cce commit 9bbfe76d2c899fdbb54eb92716aea7282d2f3cce Author: Kitware Robot AuthorDate: Mon Feb 9 00:01:09 2015 -0500 Commit: Kitware Robot CommitDate: Mon Feb 9 00:01:09 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 4747b4c..6ac9705 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150208) +set(CMake_VERSION_PATCH 20150209) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From nilsgladitz at gmail.com Mon Feb 9 05:04:14 2015 From: nilsgladitz at gmail.com (Nils Gladitz) Date: Mon, 9 Feb 2015 05:04:14 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1123-ge09df3a Message-ID: <20150209100414.A0C07AAE81@public.kitware.com> 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 e09df3a8536a8f0e0b426ddeb628ac58d418489b (commit) via 220c427e84215b28ea1dd6de74e9dc6e81f7962e (commit) via 9bbfe76d2c899fdbb54eb92716aea7282d2f3cce (commit) via d30036cfadb6f5ad927bf5f968f7e93472b50c45 (commit) via 8b7e5e599616b6b805d87addc12050a6d6987429 (commit) from 19522216e892f73351dc480507040cd453a795cb (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=e09df3a8536a8f0e0b426ddeb628ac58d418489b commit e09df3a8536a8f0e0b426ddeb628ac58d418489b Merge: 1952221 220c427 Author: Nils Gladitz AuthorDate: Mon Feb 9 05:04:13 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 9 05:04:13 2015 -0500 Merge topic 'try_compile-quote-module-path' into next 220c427e try_compile: Quote the content of CMAKE_MODULE_PATH to allow for spaces 9bbfe76d CMake Nightly Date Stamp d30036cf CMake Nightly Date Stamp 8b7e5e59 CMake Nightly Date Stamp http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=220c427e84215b28ea1dd6de74e9dc6e81f7962e commit 220c427e84215b28ea1dd6de74e9dc6e81f7962e Author: Nils Gladitz AuthorDate: Mon Feb 9 10:51:22 2015 +0100 Commit: Nils Gladitz CommitDate: Mon Feb 9 10:51:22 2015 +0100 try_compile: Quote the content of CMAKE_MODULE_PATH to allow for spaces diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx index 5b5d6b6..c414553 100644 --- a/Source/cmCoreTryCompile.cxx +++ b/Source/cmCoreTryCompile.cxx @@ -296,7 +296,7 @@ int cmCoreTryCompile::TryCompileCode(std::vector const& argv) cmVersion::GetPatchVersion(), cmVersion::GetTweakVersion()); if(def) { - fprintf(fout, "set(CMAKE_MODULE_PATH %s)\n", def); + fprintf(fout, "set(CMAKE_MODULE_PATH \"%s\")\n", def); } std::string projectLangs; ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/cmCoreTryCompile.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Mon Feb 9 13:37:42 2015 From: steveire at gmail.com (Stephen Kelly) Date: Mon, 9 Feb 2015 13:37:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1125-g0d4ba3c Message-ID: <20150209183742.0C1C4AAE8A@public.kitware.com> 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 0d4ba3c93ba7d30587eaf9ede129ff94801dda91 (commit) via 32d0e398fd2739881a2755c1d24b11a304edbfe4 (commit) from e09df3a8536a8f0e0b426ddeb628ac58d418489b (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=0d4ba3c93ba7d30587eaf9ede129ff94801dda91 commit 0d4ba3c93ba7d30587eaf9ede129ff94801dda91 Merge: e09df3a 32d0e39 Author: Stephen Kelly AuthorDate: Mon Feb 9 13:37:38 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 9 13:37:38 2015 -0500 Merge topic 'export-interface-source-files' into next 32d0e398 Revert topic http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=32d0e398fd2739881a2755c1d24b11a304edbfe4 commit 32d0e398fd2739881a2755c1d24b11a304edbfe4 Author: Stephen Kelly AuthorDate: Mon Feb 9 19:36:30 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:36:48 2015 +0100 Revert topic diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index d6f148d..832240a 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -22,6 +22,10 @@ items will populate the :prop_tgt:`SOURCES` property of following arguments specify sources. Repeated calls for the same ```` append items in the order called. +Targets with :prop_tgt:`INTERFACE_SOURCES` may not be exported with the +:command:`export` or :command:`install(EXPORT)` commands. This limitation may be +lifted in a future version of CMake. + Arguments to ``target_sources`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Help/prop_tgt/INTERFACE_SOURCES.rst b/Help/prop_tgt/INTERFACE_SOURCES.rst index a224b68..696ee95 100644 --- a/Help/prop_tgt/INTERFACE_SOURCES.rst +++ b/Help/prop_tgt/INTERFACE_SOURCES.rst @@ -12,6 +12,10 @@ When target dependencies are specified using :command:`target_link_libraries`, CMake will read this property from all target dependencies to determine the sources of the consumer. +Targets with ``INTERFACE_SOURCES`` may not be exported with the +:command:`export` or :command:`install(EXPORT)` commands. This limitation may be +lifted in a future version of CMake. + Contents of ``INTERFACE_SOURCES`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst deleted file mode 100644 index 00dcd25..0000000 --- a/Help/release/dev/export-interface-source-files.rst +++ /dev/null @@ -1,6 +0,0 @@ -export-interface-source-files ------------------------------ - -* It is now possible to export targets which populate the - :prop_tgt:`INTERFACE_SOURCES` target property using the - :command:`install(EXPORT)` and :command:`export()` commands. diff --git a/Source/cmExportBuildFileGenerator.cxx b/Source/cmExportBuildFileGenerator.cxx index b1203dd..a28ec48 100644 --- a/Source/cmExportBuildFileGenerator.cxx +++ b/Source/cmExportBuildFileGenerator.cxx @@ -68,6 +68,16 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) tei != this->Exports.end(); ++tei) { cmTarget* te = *tei; + if (te->GetProperty("INTERFACE_SOURCES")) + { + std::ostringstream e; + e << "Target \"" + << te->GetName() + << "\" has a populated INTERFACE_SOURCES property. This is not " + "currently supported."; + cmSystemTools::Error(e.str().c_str()); + return false; + } this->GenerateImportTargetCode(os, te); te->AppendBuildInterfaceIncludes(); @@ -77,9 +87,6 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateInterfaceProperty("INTERFACE_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); - this->PopulateInterfaceProperty("INTERFACE_SOURCES", te, - cmGeneratorExpression::BuildInterface, - properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_COMPILE_DEFINITIONS", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index 71728be..af4ce8b 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -224,7 +224,7 @@ static bool isSubDirectory(const char* a, const char* b) //---------------------------------------------------------------------------- static bool checkInterfaceDirs(const std::string &prepro, - cmTarget *target, const std::string& prop) + cmTarget *target) { const char* installDir = target->GetMakefile()->GetSafeDefinition("CMAKE_INSTALL_PREFIX"); @@ -250,27 +250,20 @@ static bool checkInterfaceDirs(const std::string &prepro, std::ostringstream e; if (genexPos != std::string::npos) { - if (prop == "INTERFACE_INCLUDE_DIRECTORIES") + switch (target->GetPolicyStatusCMP0041()) { - switch (target->GetPolicyStatusCMP0041()) - { - case cmPolicies::WARN: - messageType = cmake::WARNING; - e << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; - break; - case cmPolicies::OLD: - continue; - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::NEW: - hadFatalError = true; - break; // Issue fatal message. - } - } - else - { - hadFatalError = true; + case cmPolicies::WARN: + messageType = cmake::WARNING; + e << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; + break; + case cmPolicies::OLD: + continue; + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::NEW: + hadFatalError = true; + break; // Issue fatal message. } } if (cmHasLiteralPrefix(li->c_str(), "${_IMPORT_PREFIX}")) @@ -279,8 +272,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (!cmSystemTools::FileIsFullPath(li->c_str())) { - e << "Target \"" << target->GetName() << "\" " << prop << - " property contains relative path:\n" + e << "Target \"" << target->GetName() << "\" " + "INTERFACE_INCLUDE_DIRECTORIES property contains relative path:\n" " \"" << *li << "\""; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -296,35 +289,32 @@ static bool checkInterfaceDirs(const std::string &prepro, (!inBinary || isSubDirectory(installDir, topBinaryDir)) && (!inSource || isSubDirectory(installDir, topSourceDir)); - if (prop == "INTERFACE_INCLUDE_DIRECTORIES") + if (!shouldContinue) { - if (!shouldContinue) + switch(target->GetPolicyStatusCMP0052()) { - switch(target->GetPolicyStatusCMP0052()) + case cmPolicies::WARN: { - case cmPolicies::WARN: - { - std::ostringstream s; - s << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; - s << "Directory:\n \"" << *li << "\"\nin " - "INTERFACE_INCLUDE_DIRECTORIES of target \"" - << target->GetName() << "\" is a subdirectory of the install " - "directory:\n \"" << installDir << "\"\nhowever it is also " - "a subdirectory of the " << (inBinary ? "build" : "source") - << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) - << "\"" << std::endl; - target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, - s.str()); - } - case cmPolicies::OLD: - shouldContinue = true; - break; - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::NEW: - break; + std::ostringstream s; + s << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; + s << "Directory:\n \"" << *li << "\"\nin " + "INTERFACE_INCLUDE_DIRECTORIES of target \"" + << target->GetName() << "\" is a subdirectory of the install " + "directory:\n \"" << installDir << "\"\nhowever it is also " + "a subdirectory of the " << (inBinary ? "build" : "source") + << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) + << "\"" << std::endl; + target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, + s.str()); } + case cmPolicies::OLD: + shouldContinue = true; + break; + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::NEW: + break; } } if (shouldContinue) @@ -334,8 +324,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (inBinary) { - e << "Target \"" << target->GetName() << "\" " << prop << - " property contains path:\n" + e << "Target \"" << target->GetName() << "\" " + "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the build directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -343,8 +333,8 @@ static bool checkInterfaceDirs(const std::string &prepro, { if (inSource) { - e << "Target \"" << target->GetName() << "\" " << prop << - " property contains path:\n" + e << "Target \"" << target->GetName() << "\" " + "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the source directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -375,46 +365,6 @@ static void prefixItems(std::string &exportDirs) } //---------------------------------------------------------------------------- -void cmExportFileGenerator::PopulateSourcesInterface( - cmTargetExport *tei, - cmGeneratorExpression::PreprocessContext preprocessRule, - ImportPropertyMap &properties, - std::vector &missingTargets) -{ - cmTarget *target = tei->Target; - assert(preprocessRule == cmGeneratorExpression::InstallInterface); - - const char *propName = "INTERFACE_SOURCES"; - const char *input = target->GetProperty(propName); - - if (!input) - { - return; - } - - if (!*input) - { - properties[propName] = ""; - return; - } - - std::string prepro = cmGeneratorExpression::Preprocess(input, - preprocessRule, - true); - if (!prepro.empty()) - { - this->ResolveTargetsInGeneratorExpressions(prepro, target, - missingTargets); - - if (!checkInterfaceDirs(prepro, target, propName)) - { - return; - } - properties[propName] = prepro; - } -} - -//---------------------------------------------------------------------------- void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( cmTargetExport *tei, cmGeneratorExpression::PreprocessContext preprocessRule, @@ -474,7 +424,7 @@ void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( this->ResolveTargetsInGeneratorExpressions(prepro, target, missingTargets); - if (!checkInterfaceDirs(prepro, target, propName)) + if (!checkInterfaceDirs(prepro, target)) { return; } diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h index b6f4166..919924e 100644 --- a/Source/cmExportFileGenerator.h +++ b/Source/cmExportFileGenerator.h @@ -139,11 +139,6 @@ protected: cmGeneratorExpression::PreprocessContext preprocessRule, ImportPropertyMap &properties, std::vector &missingTargets); - void PopulateSourcesInterface( - cmTargetExport *target, - cmGeneratorExpression::PreprocessContext preprocessRule, - ImportPropertyMap &properties, - std::vector &missingTargets); void SetImportLinkInterface(const std::string& config, std::string const& suffix, diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index a0d9013..98ed818 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -123,7 +123,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) bool require2_8_12 = false; bool require3_0_0 = false; - bool require3_1_0 = false; bool requiresConfigFiles = false; // Create all the imported targets. for(std::vector::const_iterator @@ -132,6 +131,17 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { cmTarget* te = (*tei)->Target; + if (te->GetProperty("INTERFACE_SOURCES")) + { + std::ostringstream e; + e << "Target \"" + << te->GetName() + << "\" has a populated INTERFACE_SOURCES property. This is not " + "currently supported."; + cmSystemTools::Error(e.str().c_str()); + return false; + } + requiresConfigFiles = requiresConfigFiles || te->GetType() != cmTarget::INTERFACE_LIBRARY; @@ -142,9 +152,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateIncludeDirectoriesInterface(*tei, cmGeneratorExpression::InstallInterface, properties, missingTargets); - this->PopulateSourcesInterface(*tei, - cmGeneratorExpression::InstallInterface, - properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::InstallInterface, @@ -183,13 +190,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { require3_0_0 = true; } - if(te->GetProperty("INTERFACE_SOURCES")) - { - // We can only generate INTERFACE_SOURCES in CMake 3.3, but CMake 3.1 - // can consume them. - require3_1_0 = true; - } - this->PopulateInterfaceProperty("INTERFACE_POSITION_INDEPENDENT_CODE", te, properties); this->PopulateCompatibleInterfaceProperties(te, properties); @@ -197,11 +197,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->GenerateInterfaceProperties(te, os, properties); } - if (require3_1_0) - { - this->GenerateRequiredCMakeVersion(os, "3.1.0"); - } - else if (require3_0_0) + if (require3_0_0) { this->GenerateRequiredCMakeVersion(os, "3.0.0"); } diff --git a/Tests/ExportImport/Export/Interface/CMakeLists.txt b/Tests/ExportImport/Export/Interface/CMakeLists.txt index 00a5375..523fc29 100644 --- a/Tests/ExportImport/Export/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Export/Interface/CMakeLists.txt @@ -29,17 +29,7 @@ target_compile_features(use_auto_type INTERFACE cxx_auto_type) add_library(use_c_restrict INTERFACE) target_compile_features(use_c_restrict INTERFACE c_restrict) -add_library(source_target INTERFACE) -target_sources(source_target INTERFACE - $ - $/src/source_target_for_install.cpp> -) -install(FILES - source_target_for_install.cpp - DESTINATION src -) - -install(TARGETS headeronly sharediface use_auto_type use_c_restrict source_target +install(TARGETS headeronly sharediface use_auto_type use_c_restrict EXPORT expInterface ) install(TARGETS sharedlib diff --git a/Tests/ExportImport/Export/Interface/source_target.cpp b/Tests/ExportImport/Export/Interface/source_target.cpp deleted file mode 100644 index 037191c..0000000 --- a/Tests/ExportImport/Export/Interface/source_target.cpp +++ /dev/null @@ -1,13 +0,0 @@ - -#ifndef USE_FROM_BUILD_DIR -#error Expected define USE_FROM_BUILD_DIR -#endif - -#ifdef USE_FROM_INSTALL_DIR -#error Unexpected define USE_FROM_INSTALL_DIR -#endif - -int source_symbol() -{ - return 42; -} diff --git a/Tests/ExportImport/Export/Interface/source_target_for_install.cpp b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp deleted file mode 100644 index 64514ed..0000000 --- a/Tests/ExportImport/Export/Interface/source_target_for_install.cpp +++ /dev/null @@ -1,13 +0,0 @@ - -#ifdef USE_FROM_BUILD_DIR -#error Unexpected define USE_FROM_BUILD_DIR -#endif - -#ifndef USE_FROM_INSTALL_DIR -#error Expected define USE_FROM_INSTALL_DIR -#endif - -int source_symbol() -{ - return 42; -} diff --git a/Tests/ExportImport/Import/Interface/CMakeLists.txt b/Tests/ExportImport/Import/Interface/CMakeLists.txt index 51d518e..4028405 100644 --- a/Tests/ExportImport/Import/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Import/Interface/CMakeLists.txt @@ -82,14 +82,6 @@ endmacro() do_try_compile(bld) -add_executable(source_target_test_bld source_target_test.cpp) -target_link_libraries(source_target_test_bld bld::source_target) -target_compile_definitions(source_target_test_bld PRIVATE USE_FROM_BUILD_DIR) - -add_executable(source_target_test_exp source_target_test.cpp) -target_link_libraries(source_target_test_exp exp::source_target) -target_compile_definitions(source_target_test_exp PRIVATE USE_FROM_INSTALL_DIR) - add_executable(headeronlytest_exp headeronlytest.cpp) target_link_libraries(headeronlytest_exp exp::headeronly) diff --git a/Tests/ExportImport/Import/Interface/source_target_test.cpp b/Tests/ExportImport/Import/Interface/source_target_test.cpp deleted file mode 100644 index 0e8ec5f..0000000 --- a/Tests/ExportImport/Import/Interface/source_target_test.cpp +++ /dev/null @@ -1,7 +0,0 @@ - -extern int source_symbol(); - -int main() -{ - return source_symbol() - 42; -} diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt b/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt b/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt b/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt b/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt b/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt b/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt b/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt b/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt b/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt b/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt b/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt b/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt b/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt b/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt b/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt b/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt b/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 6519682..801655f 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -1,28 +1,17 @@ # See adjacent README.rst for documentation of this test infrastructure. macro(add_RunCMake_test test) - set(TEST_ARGS ${ARGN}) - if ("${ARGV1}" STREQUAL "TEST_DIR") - if ("${ARGV2}" STREQUAL "") - message(FATAL_ERROR "Invalid args") - endif() - set(Test_Dir ${ARGV2}) - list(REMOVE_AT TEST_ARGS 0) - list(REMOVE_AT TEST_ARGS 0) - else() - set(Test_Dir ${test}) - endif() add_test(NAME RunCMake.${test} COMMAND ${CMAKE_CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} -DRunCMake_GENERATOR=${CMAKE_GENERATOR} -DRunCMake_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM} -DRunCMake_GENERATOR_TOOLSET=${CMAKE_GENERATOR_TOOLSET} -DRunCMake_MAKE_PROGRAM=${CMake_TEST_EXPLICIT_MAKE_PROGRAM} - -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir} + -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${test} -DRunCMake_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}/${test} ${${test}_ARGS} - ${TEST_ARGS} - -P "${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir}/RunCMakeTest.cmake" + ${ARGN} + -P "${CMAKE_CURRENT_SOURCE_DIR}/${test}/RunCMakeTest.cmake" ) endmacro() @@ -189,12 +178,6 @@ add_RunCMake_test(install) add_RunCMake_test(CPackInstallProperties) add_RunCMake_test(ExternalProject) -set(build-property-paths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) -add_RunCMake_test(build-property-paths_INCLUDE_DIRECTORIES TEST_DIR build-property-paths) - -set(build-property-paths_SOURCES_ARGS -DTEST_PROP=SOURCES) -add_RunCMake_test(build-property-paths_SOURCES TEST_DIR build-property-paths) - if(RPMBUILD) add_RunCMake_test(CPackRPM) endif() diff --git a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt b/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt b/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt b/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt b/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt b/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt b/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt b/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/RunCMake.cmake b/Tests/RunCMake/RunCMake.cmake index 6389ef4..33b745d 100644 --- a/Tests/RunCMake/RunCMake.cmake +++ b/Tests/RunCMake/RunCMake.cmake @@ -18,10 +18,7 @@ function(run_cmake test) set(expect_result 0) endif() foreach(o out err) - if(RunCMake-std${o}-file AND EXISTS ${top_src}/${RunCMake-std${o}-file}) - file(READ ${top_src}/${RunCMake-std${o}-file} expect_std${o}) - string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") - elseif(EXISTS ${top_src}/${test}-std${o}.txt) + if(EXISTS ${top_src}/${test}-std${o}.txt) file(READ ${top_src}/${test}-std${o}.txt expect_std${o}) string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") else() diff --git a/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt b/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt b/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt b/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/TargetSources/ExportBuild-result.txt index 573541a..d00491f 100644 --- a/Tests/RunCMake/TargetSources/ExportBuild-result.txt +++ b/Tests/RunCMake/TargetSources/ExportBuild-result.txt @@ -1 +1 @@ -0 +1 diff --git a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt b/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt new file mode 100644 index 0000000..0d65a55 --- /dev/null +++ b/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt @@ -0,0 +1 @@ +CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/TargetSources/ExportInstall-result.txt similarity index 100% copy from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt copy to Tests/RunCMake/TargetSources/ExportInstall-result.txt diff --git a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt b/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt new file mode 100644 index 0000000..0d65a55 --- /dev/null +++ b/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt @@ -0,0 +1 @@ +CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall.cmake b/Tests/RunCMake/TargetSources/ExportInstall.cmake new file mode 100644 index 0000000..8e7c9f9 --- /dev/null +++ b/Tests/RunCMake/TargetSources/ExportInstall.cmake @@ -0,0 +1,6 @@ + +add_library(iface INTERFACE) +target_sources(iface INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/empty_1.cpp") + +install(TARGETS iface EXPORT exp) +install(EXPORT exp DESTINATION cmake) diff --git a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake index 4416ef9..1b4ef0b 100644 --- a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake +++ b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake @@ -10,3 +10,4 @@ endif() run_cmake(CMP0026-LOCATION) run_cmake(RelativePathInInterface) run_cmake(ExportBuild) +run_cmake(ExportInstall) diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt deleted file mode 100644 index fa39ff8..0000000 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt +++ /dev/null @@ -1,6 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains path: - - ".*Tests/RunCMake/build-property-paths_SOURCES/prefix/BinInInstallPrefix-build/empty.cpp" - - which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt deleted file mode 100644 index bed2424..0000000 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt +++ /dev/null @@ -1,6 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains path: - - ".*Tests/RunCMake/build-property-paths_SOURCES/BinaryDirectoryInInterface-build/empty.cpp" - - which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake deleted file mode 100644 index 7001f3f..0000000 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake +++ /dev/null @@ -1,15 +0,0 @@ - -enable_language(CXX) - -add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/foo") -else() - set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_BINARY_DIR}/empty.cpp") -endif() - -install(TARGETS testTarget EXPORT testTargets - DESTINATION lib -) - -install(EXPORT testTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/build-property-paths/CMakeLists.txt b/Tests/RunCMake/build-property-paths/CMakeLists.txt deleted file mode 100644 index 5cd4825..0000000 --- a/Tests/RunCMake/build-property-paths/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ -cmake_minimum_required(VERSION 3.0) -project(${RunCMake_TEST} NONE) -if(NOT TEST_FILE) - set(TEST_FILE ${RunCMake_TEST}.cmake) -endif() -include(${TEST_FILE}) diff --git a/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake b/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake deleted file mode 100644 index f5f3005..0000000 --- a/Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake +++ /dev/null @@ -1,14 +0,0 @@ -enable_language(CXX) -add_library(testTarget empty.cpp) - -if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/dir") -else() - set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_INSTALL_PREFIX}/empty.cpp") -endif() - -install(TARGETS testTarget EXPORT testTargets - DESTINATION lib -) - -install(EXPORT testTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt deleted file mode 100644 index 02a8198..0000000 --- a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt +++ /dev/null @@ -1,6 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains path: - - ".*Tests/RunCMake/build-property-paths_SOURCES/InstallInBinDir-build/empty.cpp" - - which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt deleted file mode 100644 index aece1ab..0000000 --- a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt +++ /dev/null @@ -1,6 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains path: - - ".*Tests/RunCMake/build-property-paths_SOURCES/copy/empty.cpp" - - which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt deleted file mode 100644 index 2311af9..0000000 --- a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt +++ /dev/null @@ -1,4 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" contains relative path in its INTERFACE_SOURCES: - - "empty.cpp" diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake b/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake deleted file mode 100644 index 489c3a1..0000000 --- a/Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake +++ /dev/null @@ -1,13 +0,0 @@ - -enable_language(CXX) - -add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") - -if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") -else() - set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "$<1:empty.cpp>") -endif() - -add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_link_libraries(userTarget testTarget) diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt deleted file mode 100644 index f0f002c..0000000 --- a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt +++ /dev/null @@ -1,4 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains relative path: - - "empty.cpp" diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake b/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake deleted file mode 100644 index e974aac..0000000 --- a/Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake +++ /dev/null @@ -1,14 +0,0 @@ - -enable_language(CXX) - -add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") -else() - set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "empty.cpp") -endif() -install(TARGETS testTarget EXPORT testTargets - DESTINATION lib -) - -install(EXPORT testTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake b/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake deleted file mode 100644 index 54d0cd8..0000000 --- a/Tests/RunCMake/build-property-paths/RunCMakeTest.cmake +++ /dev/null @@ -1,155 +0,0 @@ -include(RunCMake) - -macro(run_cmake test) - list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) - set(RunCMake-stderr-file ${test}-stderr_${TEST_PROP}.txt) - _run_cmake(${test}) -endmacro() - -run_cmake(RelativePathInInterface) -run_cmake(RelativePathInGenex) -run_cmake(export-NOWARN) -run_cmake(SourceDirectoryInInterface) -run_cmake(BinaryDirectoryInInterface) - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/DirInInstallPrefix/prefix") -run_cmake(DirInInstallPrefix) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/copy/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/copy/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" - "${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" - COPYONLY -) -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/copy") -run_cmake(InstallInSrcDir) -unset(RunCMake_TEST_SOURCE_DIR) - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix") -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix" - "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" - ) -set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/InstallInBinDir-build") -run_cmake(InstallInBinDir) -unset(RunCMake_TEST_BINARY_DIR) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/prefix/src/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/prefix/src/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" - "${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" - COPYONLY -) - -foreach(policyStatus NEW OLD "") - if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - if (NOT "${policyStatus}" STREQUAL "") - set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) - else() - unset(policyOption) - set(policyStatus WARN) - endif() - set(policySuffix -CMP0052-${policyStatus}) - endif() - set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} - "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" - ) - # Set the RunCMake_TEST_SOURCE_DIR here to the copy too. This is needed to run - # the test suite in-source properly. Otherwise the install directory would be - # a subdirectory or the source directory, which is allowed and tested separately - # below. - set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix${policySuffix}-build") - run_cmake(BinInInstallPrefix${policySuffix}) - unset(RunCMake_TEST_BINARY_DIR) - - set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} - "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" - ) - run_cmake(SrcInInstallPrefix${policySuffix}) - unset(RunCMake_TEST_SOURCE_DIR) - - if (NOT TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - break() - endif() -endforeach() - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") -run_cmake(InstallPrefixInInterface) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/installToSrc/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/installToSrc/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" - "${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" - COPYONLY -) -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrc") -run_cmake(InstallToPrefixInSrcDirOutOfSource) -unset(RunCMake_TEST_SOURCE_DIR) - -file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}/installToSrcInSrc") -set(RunCMake_TEST_NO_CLEAN ON) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" - COPYONLY -) - -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") -set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") -run_cmake(InstallToPrefixInSrcDirInSource) -unset(RunCMake_TEST_SOURCE_DIR) -unset(RunCMake_TEST_BINARY_DIR) -unset(RunCMake_TEST_NO_CLEAN) diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt deleted file mode 100644 index 187ccdf..0000000 --- a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt +++ /dev/null @@ -1,6 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains path: - - ".*Tests/RunCMake/build-property-paths/empty.cpp" - - which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake b/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake deleted file mode 100644 index d80cbec..0000000 --- a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake +++ /dev/null @@ -1,15 +0,0 @@ - -enable_language(CXX) - -add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) - set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/foo") -else() - set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -endif() - -install(TARGETS testTarget EXPORT testTargets - DESTINATION lib -) - -install(EXPORT testTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt deleted file mode 100644 index 6a123f7..0000000 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt +++ /dev/null @@ -1,6 +0,0 @@ -CMake Error in CMakeLists.txt: - Target "testTarget" INTERFACE_SOURCES property contains path: - - ".*Tests/RunCMake/build-property-paths_SOURCES/prefix/src/empty.cpp" - - which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/empty.cpp b/Tests/RunCMake/build-property-paths/empty.cpp deleted file mode 100644 index e69de29..0000000 diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt rename to Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt similarity index 61% rename from Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt index 94c46ab..f0adc9f 100644 --- a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/build-property-paths_INCLUDE_DIRECTORIES/BinaryDirectoryInInterface-build/foo" + ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-OLD-result.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-OLD-result.txt rename to Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-result.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-result.txt rename to Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-result.txt diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt similarity index 63% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt index 6473efe..054bff5 100644 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" + ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix" + ".*Tests/RunCMake/include_directories/prefix" however it is also a subdirectory of the build tree: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build" + ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-WARN-build" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-result.txt b/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-result.txt rename to Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt similarity index 62% rename from Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt index 83ae34c..0d4379e 100644 --- a/Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/InstallInBinDir-build/foo" + ".*RunCMake/include_directories/BinaryDirectoryInInterface-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake b/Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake similarity index 71% copy from Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake copy to Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake index 8d777f5..67ee7de 100644 --- a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake +++ b/Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake @@ -2,7 +2,7 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/foo") +target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_BINARY_DIR}/foo") install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/DirInInstallPrefix-result.txt b/Tests/RunCMake/include_directories/DirInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/DirInInstallPrefix-result.txt rename to Tests/RunCMake/include_directories/DirInInstallPrefix-result.txt diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt b/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake b/Tests/RunCMake/include_directories/DirInInstallPrefix.cmake similarity index 71% copy from Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake copy to Tests/RunCMake/include_directories/DirInInstallPrefix.cmake index 8d777f5..fab7717 100644 --- a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake +++ b/Tests/RunCMake/include_directories/DirInInstallPrefix.cmake @@ -1,8 +1,6 @@ - enable_language(CXX) - -add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/foo") +add_library(testTarget empty.cpp) +target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/dir") install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/InstallInBinDir-result.txt b/Tests/RunCMake/include_directories/InstallInBinDir-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallInBinDir-result.txt rename to Tests/RunCMake/include_directories/InstallInBinDir-result.txt diff --git a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt similarity index 57% rename from Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt index 8db7283..254fae1 100644 --- a/Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" + ".*Tests/RunCMake/include_directories/InstallInBinDir-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-result.txt b/Tests/RunCMake/include_directories/InstallInSrcDir-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallInSrcDir-result.txt rename to Tests/RunCMake/include_directories/InstallInSrcDir-result.txt diff --git a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt similarity index 67% rename from Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt index a7a5af4..7be3044 100644 --- a/Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/copy/foo" + ".*Tests/RunCMake/include_directories/copy/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface-result.txt b/Tests/RunCMake/include_directories/InstallPrefixInInterface-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallPrefixInInterface-result.txt rename to Tests/RunCMake/include_directories/InstallPrefixInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt b/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake b/Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake similarity index 100% copy from Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake copy to Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake diff --git a/Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirInSource-result.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirInSource-result.txt rename to Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-result.txt diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirOutOfSource-result.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/InstallToPrefixInSrcDirOutOfSource-result.txt rename to Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-result.txt diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-result.txt b/Tests/RunCMake/include_directories/RelativePathInGenex-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInGenex-result.txt rename to Tests/RunCMake/include_directories/RelativePathInGenex-result.txt diff --git a/Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/RelativePathInGenex-stderr.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/RelativePathInGenex-stderr.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex.cmake b/Tests/RunCMake/include_directories/RelativePathInGenex.cmake new file mode 100644 index 0000000..070a381 --- /dev/null +++ b/Tests/RunCMake/include_directories/RelativePathInGenex.cmake @@ -0,0 +1,8 @@ + +enable_language(CXX) + +add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") + +add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +target_link_libraries(userTarget testTarget) diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-result.txt b/Tests/RunCMake/include_directories/RelativePathInInterface-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInInterface-result.txt rename to Tests/RunCMake/include_directories/RelativePathInInterface-result.txt diff --git a/Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/RelativePathInInterface-stderr.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/RelativePathInInterface-stderr.txt diff --git a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake b/Tests/RunCMake/include_directories/RelativePathInInterface.cmake similarity index 72% copy from Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake copy to Tests/RunCMake/include_directories/RelativePathInInterface.cmake index 8d777f5..4c4727d 100644 --- a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake +++ b/Tests/RunCMake/include_directories/RelativePathInInterface.cmake @@ -2,7 +2,7 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/foo") +set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/include_directories/RunCMakeTest.cmake b/Tests/RunCMake/include_directories/RunCMakeTest.cmake index 3f624f8..fa76f24 100644 --- a/Tests/RunCMake/include_directories/RunCMakeTest.cmake +++ b/Tests/RunCMake/include_directories/RunCMakeTest.cmake @@ -3,7 +3,148 @@ include(RunCMake) run_cmake(NotFoundContent) run_cmake(DebugIncludes) run_cmake(TID-bad-target) +run_cmake(SourceDirectoryInInterface) +run_cmake(BinaryDirectoryInInterface) +run_cmake(RelativePathInInterface) run_cmake(ImportedTarget) +run_cmake(RelativePathInGenex) run_cmake(CMP0021) run_cmake(install_config) run_cmake(incomplete-genex) +run_cmake(export-NOWARN) + +set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/DirInInstallPrefix/prefix") +run_cmake(DirInInstallPrefix) + +configure_file( + "${RunCMake_SOURCE_DIR}/CMakeLists.txt" + "${RunCMake_BINARY_DIR}/copy/CMakeLists.txt" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/empty.cpp" + "${RunCMake_BINARY_DIR}/copy/empty.cpp" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" + "${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" + COPYONLY +) +set(RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface/prefix" + "-DTEST_FILE=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" + ) +set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/copy") +run_cmake(InstallInSrcDir) +unset(RunCMake_TEST_SOURCE_DIR) + +set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix") +set(RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix" + "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" + ) +set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/InstallInBinDir-build") +run_cmake(InstallInBinDir) +unset(RunCMake_TEST_BINARY_DIR) + +configure_file( + "${RunCMake_SOURCE_DIR}/CMakeLists.txt" + "${RunCMake_BINARY_DIR}/prefix/src/CMakeLists.txt" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/empty.cpp" + "${RunCMake_BINARY_DIR}/prefix/src/empty.cpp" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" + "${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" + COPYONLY +) + +foreach(policyStatus "" NEW OLD) + if (NOT "${policyStatus}" STREQUAL "") + set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) + else() + unset(policyOption) + set(policyStatus WARN) + endif() + set(RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} + "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" + ) + # Set the RunCMake_TEST_SOURCE_DIR here to the copy too. This is needed to run + # the test suite in-source properly. Otherwise the install directory would be + # a subdirectory or the source directory, which is allowed and tested separately + # below. + set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") + set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build") + run_cmake(BinInInstallPrefix-CMP0052-${policyStatus}) + unset(RunCMake_TEST_BINARY_DIR) + + set(RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} + "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" + ) + run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus}) + unset(RunCMake_TEST_SOURCE_DIR) +endforeach() + +set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") +run_cmake(InstallPrefixInInterface) + +configure_file( + "${RunCMake_SOURCE_DIR}/CMakeLists.txt" + "${RunCMake_BINARY_DIR}/installToSrc/CMakeLists.txt" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/empty.cpp" + "${RunCMake_BINARY_DIR}/installToSrc/empty.cpp" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" + "${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" + COPYONLY +) +set(RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface/prefix" + "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" + ) +set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrc") +run_cmake(InstallToPrefixInSrcDirOutOfSource) +unset(RunCMake_TEST_SOURCE_DIR) + + +file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}/installToSrcInSrc") +set(RunCMake_TEST_NO_CLEAN ON) + +configure_file( + "${RunCMake_SOURCE_DIR}/CMakeLists.txt" + "${RunCMake_BINARY_DIR}/installToSrcInSrc/CMakeLists.txt" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/empty.cpp" + "${RunCMake_BINARY_DIR}/installToSrcInSrc/empty.cpp" + COPYONLY +) +configure_file( + "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" + "${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" + COPYONLY +) + +set(RunCMake_TEST_OPTIONS + "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface/prefix" + "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" + ) +set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") +set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") +run_cmake(InstallToPrefixInSrcDirInSource) +unset(RunCMake_TEST_SOURCE_DIR) +unset(RunCMake_TEST_BINARY_DIR) +unset(RunCMake_TEST_NO_CLEAN) diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-result.txt b/Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-result.txt rename to Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt diff --git a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt similarity index 78% rename from Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt index f42a2c2..9346b99 100644 --- a/Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/build-property-paths/foo" + ".*RunCMake/include_directories/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake b/Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake similarity index 71% rename from Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake rename to Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake index 8d777f5..f814a3c 100644 --- a/Tests/RunCMake/build-property-paths/InstallPrefixInInterface.cmake +++ b/Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake @@ -2,7 +2,7 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/foo") +target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/foo") install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-result.txt rename to Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt similarity index 66% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt index 2af50d5..afa43e0 100644 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src/foo" + ".*Tests/RunCMake/include_directories/prefix/src/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-OLD-result.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-OLD-result.txt rename to Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-result.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-result.txt rename to Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-result.txt diff --git a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt similarity index 69% rename from Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt rename to Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt index 56aaa2c..0b13fd8 100644 --- a/Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt +++ b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src/foo" + ".*Tests/RunCMake/include_directories/prefix/src/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix" + ".*Tests/RunCMake/include_directories/prefix" however it is also a subdirectory of the source tree: - ".*Tests/RunCMake/build-property-paths_INCLUDE_DIRECTORIES/prefix/src" + ".*Tests/RunCMake/include_directories/prefix/src" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/build-property-paths/export-NOWARN-result.txt b/Tests/RunCMake/include_directories/export-NOWARN-result.txt similarity index 100% rename from Tests/RunCMake/build-property-paths/export-NOWARN-result.txt rename to Tests/RunCMake/include_directories/export-NOWARN-result.txt diff --git a/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt b/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/build-property-paths/export-NOWARN.cmake b/Tests/RunCMake/include_directories/export-NOWARN.cmake similarity index 71% rename from Tests/RunCMake/build-property-paths/export-NOWARN.cmake rename to Tests/RunCMake/include_directories/export-NOWARN.cmake index 592572c..50720a0 100644 --- a/Tests/RunCMake/build-property-paths/export-NOWARN.cmake +++ b/Tests/RunCMake/include_directories/export-NOWARN.cmake @@ -1,34 +1,19 @@ enable_language(CXX) add_library(foo empty.cpp) - set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<0:>/include/subdir) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir) -set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $<0:>/include/subdir/empty.cpp) -set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include>) -set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) -set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $) -set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $>) -set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) # target_include_directories(foo INTERFACE include/subdir) # Does and should warn. INSTALL_INTERFACE must not list src dir paths. target_include_directories(foo INTERFACE $<0:>/include/subdir) # Does not and should not should warn, because it starts with a genex. target_include_directories(foo INTERFACE $/include/subdir) -target_sources(foo INTERFACE $<0:>/include/subdir/empty.cpp) -target_sources(foo INTERFACE $/include/subdir/empty.cpp) target_include_directories(foo INTERFACE $) target_include_directories(foo INTERFACE $>) -target_sources(foo INTERFACE $) -target_sources(foo INTERFACE $>) - -install(FILES include/subdir/empty.cpp - DESTINATION include/subdir -) install(TARGETS foo EXPORT FooTargets DESTINATION lib) install(EXPORT FooTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt b/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt b/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/interface_library/genex_link-stderr.txt b/Tests/RunCMake/interface_library/genex_link-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/interface_library/genex_link-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt b/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/message/nomessage-stderr.txt b/Tests/RunCMake/message/nomessage-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/message/nomessage-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt b/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt @@ -0,0 +1 @@ +^$ diff --git a/Tests/RunCMake/project/CMP0048-NEW-stderr.txt b/Tests/RunCMake/project/CMP0048-NEW-stderr.txt new file mode 100644 index 0000000..10f3293 --- /dev/null +++ b/Tests/RunCMake/project/CMP0048-NEW-stderr.txt @@ -0,0 +1 @@ +^$ ----------------------------------------------------------------------- Summary of changes: Help/command/target_sources.rst | 4 + Help/prop_tgt/INTERFACE_SOURCES.rst | 4 + Help/release/dev/export-interface-source-files.rst | 6 - Source/cmExportBuildFileGenerator.cxx | 13 +- Source/cmExportFileGenerator.cxx | 136 ++++++----------- Source/cmExportFileGenerator.h | 5 - Source/cmExportInstallFileGenerator.cxx | 28 ++-- Tests/ExportImport/Export/Interface/CMakeLists.txt | 12 +- .../Export/Interface/source_target.cpp | 13 -- .../Export/Interface/source_target_for_install.cpp | 13 -- Tests/ExportImport/Import/Interface/CMakeLists.txt | 8 - .../Import/Interface/source_target_test.cpp | 7 - .../RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt | 1 + .../CMP0022/CMP0022-NOWARN-shared-stderr.txt | 1 + .../CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt | 1 + ...CMP0022-NOWARN-static-link_libraries-stderr.txt | 1 + .../CMP0022/CMP0022-NOWARN-static-stderr.txt | 1 + .../RunCMake/CMP0022/CMP0022-export-exe-stderr.txt | 1 + .../CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt | 1 + .../CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt | 1 + .../RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt | 1 + Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt | 1 + .../CMP0037/CMP0037-OLD-reserved-stderr.txt | 1 + .../RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt | 1 + Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt | 1 + .../CMP0040/CMP0040-NEW-existing-target-stderr.txt | 1 + .../CMP0040/CMP0040-OLD-existing-target-stderr.txt | 1 + .../CMP0040/CMP0040-OLD-missing-target-stderr.txt | 1 + Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt | 1 + Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt | 1 + Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt | 1 + .../CMP0046-NEW-existing-dependency-stderr.txt | 1 + .../CMP0046-OLD-existing-dependency-stderr.txt | 1 + .../CMP0046-OLD-missing-dependency-stderr.txt | 1 + Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt | 1 + Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt | 1 + .../CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt | 1 + .../CMP0055-OLD-Reject-Arguments-stderr.txt | 1 + Tests/RunCMake/CMakeLists.txt | 23 +-- ...LinkImplementationFeatureCycleSolved-stderr.txt | 1 + .../DisallowedCommands/CMP0029-OLD-stderr.txt | 1 + .../File_Generate/CarryPermissions-stderr.txt | 1 + .../File_Generate/GenerateSource-stderr.txt | 1 + .../OutputNameMatchesOtherSources-stderr.txt | 1 + Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt | 1 + .../File_Generate/WriteIfDifferent-stderr.txt | 1 + .../ValidTarget-TARGET_PDB_FILE-stderr.txt | 1 + Tests/RunCMake/RunCMake.cmake | 5 +- Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt | 1 + .../LinkImplementationCycle3-stderr.txt | 1 + .../TargetSources/CMP0026-LOCATION-stderr.txt | 1 + .../RunCMake/TargetSources/ExportBuild-result.txt | 2 +- .../RunCMake/TargetSources/ExportBuild-stderr.txt | 1 + .../ExportInstall-result.txt} | 0 .../TargetSources/ExportInstall-stderr.txt | 1 + Tests/RunCMake/TargetSources/ExportInstall.cmake | 6 + Tests/RunCMake/TargetSources/RunCMakeTest.cmake | 1 + .../BinInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../BinInInstallPrefix-result.txt | 1 - .../BinInInstallPrefix-stderr_SOURCES.txt | 6 - .../BinaryDirectoryInInterface-result.txt | 1 - .../BinaryDirectoryInInterface-stderr_SOURCES.txt | 6 - .../BinaryDirectoryInInterface.cmake | 15 -- Tests/RunCMake/build-property-paths/CMakeLists.txt | 6 - .../build-property-paths/DirInInstallPrefix.cmake | 14 -- .../InstallInBinDir-result.txt | 1 - .../InstallInBinDir-stderr_SOURCES.txt | 6 - .../InstallInSrcDir-result.txt | 1 - .../InstallInSrcDir-stderr_SOURCES.txt | 6 - .../RelativePathInGenex-result.txt | 1 - .../RelativePathInGenex-stderr_SOURCES.txt | 4 - .../build-property-paths/RelativePathInGenex.cmake | 13 -- .../RelativePathInInterface-result.txt | 1 - .../RelativePathInInterface-stderr_SOURCES.txt | 4 - .../RelativePathInInterface.cmake | 14 -- .../build-property-paths/RunCMakeTest.cmake | 155 -------------------- .../SourceDirectoryInInterface-result.txt | 1 - .../SourceDirectoryInInterface-stderr_SOURCES.txt | 6 - .../SourceDirectoryInInterface.cmake | 15 -- .../SrcInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../SrcInInstallPrefix-result.txt | 1 - .../SrcInInstallPrefix-stderr_SOURCES.txt | 6 - .../BinInInstallPrefix-CMP0052-NEW-result.txt} | 0 .../BinInInstallPrefix-CMP0052-NEW-stderr.txt} | 2 +- .../BinInInstallPrefix-CMP0052-OLD-result.txt | 0 .../BinInInstallPrefix-CMP0052-OLD-stderr.txt | 1 + .../BinInInstallPrefix-CMP0052-WARN-result.txt | 0 .../BinInInstallPrefix-CMP0052-WARN-stderr.txt} | 6 +- .../BinaryDirectoryInInterface-result.txt} | 0 .../BinaryDirectoryInInterface-stderr.txt} | 2 +- .../BinaryDirectoryInInterface.cmake} | 2 +- .../DirInInstallPrefix-result.txt | 0 .../DirInInstallPrefix-stderr.txt | 1 + .../DirInInstallPrefix.cmake} | 6 +- .../InstallInBinDir-result.txt} | 0 .../InstallInBinDir-stderr.txt} | 2 +- .../InstallInSrcDir-result.txt} | 0 .../InstallInSrcDir-stderr.txt} | 2 +- .../InstallPrefixInInterface-result.txt | 0 .../InstallPrefixInInterface-stderr.txt | 1 + .../InstallPrefixInInterface.cmake | 0 .../InstallToPrefixInSrcDirInSource-result.txt | 0 .../InstallToPrefixInSrcDirInSource-stderr.txt | 1 + .../InstallToPrefixInSrcDirOutOfSource-result.txt | 0 .../InstallToPrefixInSrcDirOutOfSource-stderr.txt | 1 + .../RelativePathInGenex-result.txt} | 0 .../RelativePathInGenex-stderr.txt} | 0 .../include_directories/RelativePathInGenex.cmake | 8 + .../RelativePathInInterface-result.txt} | 0 .../RelativePathInInterface-stderr.txt} | 0 .../RelativePathInInterface.cmake} | 2 +- .../include_directories/RunCMakeTest.cmake | 141 ++++++++++++++++++ .../SourceDirectoryInInterface-result.txt} | 0 .../SourceDirectoryInInterface-stderr.txt} | 2 +- .../SourceDirectoryInInterface.cmake} | 2 +- .../SrcInInstallPrefix-CMP0052-NEW-result.txt} | 0 .../SrcInInstallPrefix-CMP0052-NEW-stderr.txt} | 2 +- .../SrcInInstallPrefix-CMP0052-OLD-result.txt | 0 .../SrcInInstallPrefix-CMP0052-OLD-stderr.txt | 1 + .../SrcInInstallPrefix-CMP0052-WARN-result.txt | 0 .../SrcInInstallPrefix-CMP0052-WARN-stderr.txt} | 6 +- .../export-NOWARN-result.txt | 0 .../include_directories/export-NOWARN-stderr.txt | 1 + .../export-NOWARN.cmake | 15 -- .../install/SkipInstallRulesNoWarning1-stderr.txt | 1 + .../install/SkipInstallRulesNoWarning2-stderr.txt | 1 + .../interface_library/genex_link-stderr.txt | 1 + .../interface_library/no_shared_libs-stderr.txt | 1 + Tests/RunCMake/message/nomessage-stderr.txt | 1 + .../with_install_prefix-stderr.txt | 1 + Tests/RunCMake/project/CMP0048-NEW-stderr.txt | 1 + 137 files changed, 311 insertions(+), 520 deletions(-) delete mode 100644 Help/release/dev/export-interface-source-files.rst delete mode 100644 Tests/ExportImport/Export/Interface/source_target.cpp delete mode 100644 Tests/ExportImport/Export/Interface/source_target_for_install.cpp delete mode 100644 Tests/ExportImport/Import/Interface/source_target_test.cpp create mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt create mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt create mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt create mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt create mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt create mode 100644 Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt create mode 100644 Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt create mode 100644 Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt create mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt create mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt create mode 100644 Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt create mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt create mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt create mode 100644 Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt create mode 100644 Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt create mode 100644 Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt create mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt create mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt create mode 100644 Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt create mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt create mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt create mode 100644 Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt create mode 100644 Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/GenerateSource-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt create mode 100644 Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt create mode 100644 Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt create mode 100644 Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt create mode 100644 Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt create mode 100644 Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt create mode 100644 Tests/RunCMake/TargetSources/ExportBuild-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => TargetSources/ExportInstall-result.txt} (100%) create mode 100644 Tests/RunCMake/TargetSources/ExportInstall-stderr.txt create mode 100644 Tests/RunCMake/TargetSources/ExportInstall.cmake delete mode 100644 Tests/RunCMake/build-property-paths/BinInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/BinInInstallPrefix-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/BinInInstallPrefix-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/BinaryDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/build-property-paths/CMakeLists.txt delete mode 100644 Tests/RunCMake/build-property-paths/DirInInstallPrefix.cmake delete mode 100644 Tests/RunCMake/build-property-paths/InstallInBinDir-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/InstallInBinDir-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/InstallInSrcDir-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/InstallInSrcDir-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/RelativePathInGenex-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/RelativePathInGenex-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/RelativePathInGenex.cmake delete mode 100644 Tests/RunCMake/build-property-paths/RelativePathInInterface-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/RelativePathInInterface-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/RelativePathInInterface.cmake delete mode 100644 Tests/RunCMake/build-property-paths/RunCMakeTest.cmake delete mode 100644 Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/SourceDirectoryInInterface-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/SourceDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/build-property-paths/SrcInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/SrcInInstallPrefix-result.txt delete mode 100644 Tests/RunCMake/build-property-paths/SrcInInstallPrefix-stderr_SOURCES.txt delete mode 100644 Tests/RunCMake/build-property-paths/empty.cpp copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt => include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt} (61%) rename Tests/RunCMake/{build-property-paths => include_directories}/BinInInstallPrefix-CMP0052-OLD-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt rename Tests/RunCMake/{build-property-paths => include_directories}/BinInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{build-property-paths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt => include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt} (63%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/BinaryDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt => include_directories/BinaryDirectoryInInterface-stderr.txt} (62%) copy Tests/RunCMake/{build-property-paths/InstallPrefixInInterface.cmake => include_directories/BinaryDirectoryInInterface.cmake} (71%) rename Tests/RunCMake/{build-property-paths => include_directories}/DirInInstallPrefix-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt copy Tests/RunCMake/{build-property-paths/InstallPrefixInInterface.cmake => include_directories/DirInInstallPrefix.cmake} (71%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/InstallInBinDir-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt => include_directories/InstallInBinDir-stderr.txt} (57%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/InstallInSrcDir-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt => include_directories/InstallInSrcDir-stderr.txt} (67%) rename Tests/RunCMake/{build-property-paths => include_directories}/InstallPrefixInInterface-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt copy Tests/RunCMake/{build-property-paths => include_directories}/InstallPrefixInInterface.cmake (100%) rename Tests/RunCMake/{build-property-paths => include_directories}/InstallToPrefixInSrcDirInSource-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt rename Tests/RunCMake/{build-property-paths => include_directories}/InstallToPrefixInSrcDirOutOfSource-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/RelativePathInGenex-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt => include_directories/RelativePathInGenex-stderr.txt} (100%) create mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/RelativePathInInterface-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt => include_directories/RelativePathInInterface-stderr.txt} (100%) copy Tests/RunCMake/{build-property-paths/InstallPrefixInInterface.cmake => include_directories/RelativePathInInterface.cmake} (72%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/SourceDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt => include_directories/SourceDirectoryInInterface-stderr.txt} (78%) rename Tests/RunCMake/{build-property-paths/InstallPrefixInInterface.cmake => include_directories/SourceDirectoryInInterface.cmake} (71%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{build-property-paths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt => include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt} (66%) rename Tests/RunCMake/{build-property-paths => include_directories}/SrcInInstallPrefix-CMP0052-OLD-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt rename Tests/RunCMake/{build-property-paths => include_directories}/SrcInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{build-property-paths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt => include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt} (69%) rename Tests/RunCMake/{build-property-paths => include_directories}/export-NOWARN-result.txt (100%) create mode 100644 Tests/RunCMake/include_directories/export-NOWARN-stderr.txt rename Tests/RunCMake/{build-property-paths => include_directories}/export-NOWARN.cmake (71%) create mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt create mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt create mode 100644 Tests/RunCMake/interface_library/genex_link-stderr.txt create mode 100644 Tests/RunCMake/interface_library/no_shared_libs-stderr.txt create mode 100644 Tests/RunCMake/message/nomessage-stderr.txt create mode 100644 Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt create mode 100644 Tests/RunCMake/project/CMP0048-NEW-stderr.txt hooks/post-receive -- CMake From steveire at gmail.com Mon Feb 9 13:38:28 2015 From: steveire at gmail.com (Stephen Kelly) Date: Mon, 9 Feb 2015 13:38:28 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1134-g7afab9f Message-ID: <20150209183828.9D1DAAAE98@public.kitware.com> 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 7afab9f4863d2ee87a1f32ee93a39d681d4a7056 (commit) via 686d101fe28eda7850afe1c4db9d183f43991edb (commit) via 2278346fce493a6dff5bbc0ae3234a560afc36ca (commit) via abded27208623ebd45e2ce66ab0ba36c40ccae58 (commit) via d9f8390db6ab0d776eb39b840a3b096b5422229f (commit) via cc1520947608f5224a4fdfa94b5cb07e19e23600 (commit) via c0d8e715915f65196353c09d86d4d34fe100437f (commit) via 68d29f519047aeef92a0ab8fef531010c311efaa (commit) via 1c3918ff0278715e2a4ec5929f75f7812003ee97 (commit) from 0d4ba3c93ba7d30587eaf9ede129ff94801dda91 (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=7afab9f4863d2ee87a1f32ee93a39d681d4a7056 commit 7afab9f4863d2ee87a1f32ee93a39d681d4a7056 Merge: 0d4ba3c 686d101 Author: Stephen Kelly AuthorDate: Mon Feb 9 13:38:25 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 9 13:38:25 2015 -0500 Merge topic 'export-interface-source-files' into next 686d101f Add release notes for export-interface-source-files. 2278346f Allow export of targets with INTERFACE_SOURCES. abded272 Tests: Move IfacePaths test stderr files. d9f8390d Tests: Run IfacePaths tests with a parameter. cc152094 Tests: Split part of include_directories test to a generic location. c0d8e715 RunCMake: Allow specifying the stderr file for a test. 68d29f51 RunCMake: Allow specifying the directory to run tests in. 1c3918ff RunCMake: Remove unneeded files. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=686d101fe28eda7850afe1c4db9d183f43991edb commit 686d101fe28eda7850afe1c4db9d183f43991edb Author: Stephen Kelly AuthorDate: Thu Feb 5 20:40:51 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:34:50 2015 +0100 Add release notes for export-interface-source-files. diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst new file mode 100644 index 0000000..00dcd25 --- /dev/null +++ b/Help/release/dev/export-interface-source-files.rst @@ -0,0 +1,6 @@ +export-interface-source-files +----------------------------- + +* It is now possible to export targets which populate the + :prop_tgt:`INTERFACE_SOURCES` target property using the + :command:`install(EXPORT)` and :command:`export()` commands. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2278346fce493a6dff5bbc0ae3234a560afc36ca commit 2278346fce493a6dff5bbc0ae3234a560afc36ca Author: Stephen Kelly AuthorDate: Fri Nov 28 18:58:38 2014 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:34:50 2015 +0100 Allow export of targets with INTERFACE_SOURCES. Use the same rules for paths in source and binary dirs in installed INTERFACE_SOURCES as are used for INTERFACE_INCLUDE_DIRECTORIES. diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index 832240a..d6f148d 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -22,10 +22,6 @@ items will populate the :prop_tgt:`SOURCES` property of following arguments specify sources. Repeated calls for the same ```` append items in the order called. -Targets with :prop_tgt:`INTERFACE_SOURCES` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Arguments to ``target_sources`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Help/prop_tgt/INTERFACE_SOURCES.rst b/Help/prop_tgt/INTERFACE_SOURCES.rst index 696ee95..a224b68 100644 --- a/Help/prop_tgt/INTERFACE_SOURCES.rst +++ b/Help/prop_tgt/INTERFACE_SOURCES.rst @@ -12,10 +12,6 @@ When target dependencies are specified using :command:`target_link_libraries`, CMake will read this property from all target dependencies to determine the sources of the consumer. -Targets with ``INTERFACE_SOURCES`` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Contents of ``INTERFACE_SOURCES`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Source/cmExportBuildFileGenerator.cxx b/Source/cmExportBuildFileGenerator.cxx index a28ec48..b1203dd 100644 --- a/Source/cmExportBuildFileGenerator.cxx +++ b/Source/cmExportBuildFileGenerator.cxx @@ -68,16 +68,6 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) tei != this->Exports.end(); ++tei) { cmTarget* te = *tei; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } this->GenerateImportTargetCode(os, te); te->AppendBuildInterfaceIncludes(); @@ -87,6 +77,9 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateInterfaceProperty("INTERFACE_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); + this->PopulateInterfaceProperty("INTERFACE_SOURCES", te, + cmGeneratorExpression::BuildInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_COMPILE_DEFINITIONS", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index af4ce8b..71728be 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -224,7 +224,7 @@ static bool isSubDirectory(const char* a, const char* b) //---------------------------------------------------------------------------- static bool checkInterfaceDirs(const std::string &prepro, - cmTarget *target) + cmTarget *target, const std::string& prop) { const char* installDir = target->GetMakefile()->GetSafeDefinition("CMAKE_INSTALL_PREFIX"); @@ -250,20 +250,27 @@ static bool checkInterfaceDirs(const std::string &prepro, std::ostringstream e; if (genexPos != std::string::npos) { - switch (target->GetPolicyStatusCMP0041()) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - case cmPolicies::WARN: - messageType = cmake::WARNING; - e << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; - break; - case cmPolicies::OLD: - continue; - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::NEW: - hadFatalError = true; - break; // Issue fatal message. + switch (target->GetPolicyStatusCMP0041()) + { + case cmPolicies::WARN: + messageType = cmake::WARNING; + e << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; + break; + case cmPolicies::OLD: + continue; + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::NEW: + hadFatalError = true; + break; // Issue fatal message. + } + } + else + { + hadFatalError = true; } } if (cmHasLiteralPrefix(li->c_str(), "${_IMPORT_PREFIX}")) @@ -272,8 +279,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (!cmSystemTools::FileIsFullPath(li->c_str())) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains relative path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains relative path:\n" " \"" << *li << "\""; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -289,32 +296,35 @@ static bool checkInterfaceDirs(const std::string &prepro, (!inBinary || isSubDirectory(installDir, topBinaryDir)) && (!inSource || isSubDirectory(installDir, topSourceDir)); - if (!shouldContinue) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - switch(target->GetPolicyStatusCMP0052()) + if (!shouldContinue) { - case cmPolicies::WARN: + switch(target->GetPolicyStatusCMP0052()) { - std::ostringstream s; - s << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; - s << "Directory:\n \"" << *li << "\"\nin " - "INTERFACE_INCLUDE_DIRECTORIES of target \"" - << target->GetName() << "\" is a subdirectory of the install " - "directory:\n \"" << installDir << "\"\nhowever it is also " - "a subdirectory of the " << (inBinary ? "build" : "source") - << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) - << "\"" << std::endl; - target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, - s.str()); + case cmPolicies::WARN: + { + std::ostringstream s; + s << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; + s << "Directory:\n \"" << *li << "\"\nin " + "INTERFACE_INCLUDE_DIRECTORIES of target \"" + << target->GetName() << "\" is a subdirectory of the install " + "directory:\n \"" << installDir << "\"\nhowever it is also " + "a subdirectory of the " << (inBinary ? "build" : "source") + << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) + << "\"" << std::endl; + target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, + s.str()); + } + case cmPolicies::OLD: + shouldContinue = true; + break; + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::NEW: + break; } - case cmPolicies::OLD: - shouldContinue = true; - break; - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::NEW: - break; } } if (shouldContinue) @@ -324,8 +334,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (inBinary) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the build directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -333,8 +343,8 @@ static bool checkInterfaceDirs(const std::string &prepro, { if (inSource) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the source directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -365,6 +375,46 @@ static void prefixItems(std::string &exportDirs) } //---------------------------------------------------------------------------- +void cmExportFileGenerator::PopulateSourcesInterface( + cmTargetExport *tei, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets) +{ + cmTarget *target = tei->Target; + assert(preprocessRule == cmGeneratorExpression::InstallInterface); + + const char *propName = "INTERFACE_SOURCES"; + const char *input = target->GetProperty(propName); + + if (!input) + { + return; + } + + if (!*input) + { + properties[propName] = ""; + return; + } + + std::string prepro = cmGeneratorExpression::Preprocess(input, + preprocessRule, + true); + if (!prepro.empty()) + { + this->ResolveTargetsInGeneratorExpressions(prepro, target, + missingTargets); + + if (!checkInterfaceDirs(prepro, target, propName)) + { + return; + } + properties[propName] = prepro; + } +} + +//---------------------------------------------------------------------------- void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( cmTargetExport *tei, cmGeneratorExpression::PreprocessContext preprocessRule, @@ -424,7 +474,7 @@ void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( this->ResolveTargetsInGeneratorExpressions(prepro, target, missingTargets); - if (!checkInterfaceDirs(prepro, target)) + if (!checkInterfaceDirs(prepro, target, propName)) { return; } diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h index 919924e..b6f4166 100644 --- a/Source/cmExportFileGenerator.h +++ b/Source/cmExportFileGenerator.h @@ -139,6 +139,11 @@ protected: cmGeneratorExpression::PreprocessContext preprocessRule, ImportPropertyMap &properties, std::vector &missingTargets); + void PopulateSourcesInterface( + cmTargetExport *target, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets); void SetImportLinkInterface(const std::string& config, std::string const& suffix, diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index 98ed818..a0d9013 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -123,6 +123,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) bool require2_8_12 = false; bool require3_0_0 = false; + bool require3_1_0 = false; bool requiresConfigFiles = false; // Create all the imported targets. for(std::vector::const_iterator @@ -131,17 +132,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { cmTarget* te = (*tei)->Target; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } - requiresConfigFiles = requiresConfigFiles || te->GetType() != cmTarget::INTERFACE_LIBRARY; @@ -152,6 +142,9 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateIncludeDirectoriesInterface(*tei, cmGeneratorExpression::InstallInterface, properties, missingTargets); + this->PopulateSourcesInterface(*tei, + cmGeneratorExpression::InstallInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::InstallInterface, @@ -190,6 +183,13 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { require3_0_0 = true; } + if(te->GetProperty("INTERFACE_SOURCES")) + { + // We can only generate INTERFACE_SOURCES in CMake 3.3, but CMake 3.1 + // can consume them. + require3_1_0 = true; + } + this->PopulateInterfaceProperty("INTERFACE_POSITION_INDEPENDENT_CODE", te, properties); this->PopulateCompatibleInterfaceProperties(te, properties); @@ -197,7 +197,11 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->GenerateInterfaceProperties(te, os, properties); } - if (require3_0_0) + if (require3_1_0) + { + this->GenerateRequiredCMakeVersion(os, "3.1.0"); + } + else if (require3_0_0) { this->GenerateRequiredCMakeVersion(os, "3.0.0"); } diff --git a/Tests/ExportImport/Export/Interface/CMakeLists.txt b/Tests/ExportImport/Export/Interface/CMakeLists.txt index 523fc29..00a5375 100644 --- a/Tests/ExportImport/Export/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Export/Interface/CMakeLists.txt @@ -29,7 +29,17 @@ target_compile_features(use_auto_type INTERFACE cxx_auto_type) add_library(use_c_restrict INTERFACE) target_compile_features(use_c_restrict INTERFACE c_restrict) -install(TARGETS headeronly sharediface use_auto_type use_c_restrict +add_library(source_target INTERFACE) +target_sources(source_target INTERFACE + $ + $/src/source_target_for_install.cpp> +) +install(FILES + source_target_for_install.cpp + DESTINATION src +) + +install(TARGETS headeronly sharediface use_auto_type use_c_restrict source_target EXPORT expInterface ) install(TARGETS sharedlib diff --git a/Tests/ExportImport/Export/Interface/source_target.cpp b/Tests/ExportImport/Export/Interface/source_target.cpp new file mode 100644 index 0000000..037191c --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target.cpp @@ -0,0 +1,13 @@ + +#ifndef USE_FROM_BUILD_DIR +#error Expected define USE_FROM_BUILD_DIR +#endif + +#ifdef USE_FROM_INSTALL_DIR +#error Unexpected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Export/Interface/source_target_for_install.cpp b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp new file mode 100644 index 0000000..64514ed --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp @@ -0,0 +1,13 @@ + +#ifdef USE_FROM_BUILD_DIR +#error Unexpected define USE_FROM_BUILD_DIR +#endif + +#ifndef USE_FROM_INSTALL_DIR +#error Expected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Import/Interface/CMakeLists.txt b/Tests/ExportImport/Import/Interface/CMakeLists.txt index 4028405..51d518e 100644 --- a/Tests/ExportImport/Import/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Import/Interface/CMakeLists.txt @@ -82,6 +82,14 @@ endmacro() do_try_compile(bld) +add_executable(source_target_test_bld source_target_test.cpp) +target_link_libraries(source_target_test_bld bld::source_target) +target_compile_definitions(source_target_test_bld PRIVATE USE_FROM_BUILD_DIR) + +add_executable(source_target_test_exp source_target_test.cpp) +target_link_libraries(source_target_test_exp exp::source_target) +target_compile_definitions(source_target_test_exp PRIVATE USE_FROM_INSTALL_DIR) + add_executable(headeronlytest_exp headeronlytest.cpp) target_link_libraries(headeronlytest_exp exp::headeronly) diff --git a/Tests/ExportImport/Import/Interface/source_target_test.cpp b/Tests/ExportImport/Import/Interface/source_target_test.cpp new file mode 100644 index 0000000..0e8ec5f --- /dev/null +++ b/Tests/ExportImport/Import/Interface/source_target_test.cpp @@ -0,0 +1,7 @@ + +extern int source_symbol(); + +int main() +{ + return source_symbol() - 42; +} diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 71507b8..2de82a7 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -192,6 +192,9 @@ add_RunCMake_test(ExternalProject) set(IfacePaths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) add_RunCMake_test(IfacePaths_INCLUDE_DIRECTORIES TEST_DIR IfacePaths) +set(IfacePaths_SOURCES_ARGS -DTEST_PROP=SOURCES) +add_RunCMake_test(IfacePaths_SOURCES TEST_DIR IfacePaths) + if(RPMBUILD) add_RunCMake_test(CPackRPM) endif() diff --git a/Tests/RunCMake/TargetSources/ExportInstall-result.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/TargetSources/ExportInstall-result.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-result.txt diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..239c069 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/prefix/BinInInstallPrefix-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..e931a01 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/BinaryDirectoryInInterface-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake index 67ee7de..7001f3f 100644 --- a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake +++ b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_BINARY_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_BINARY_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake b/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake index fab7717..f5f3005 100644 --- a/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake +++ b/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake @@ -1,6 +1,11 @@ enable_language(CXX) add_library(testTarget empty.cpp) -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/dir") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/dir") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_INSTALL_PREFIX}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt new file mode 100644 index 0000000..c79d598 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/InstallInBinDir-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt new file mode 100644 index 0000000..e71921e --- /dev/null +++ b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/copy/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt new file mode 100644 index 0000000..2311af9 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" contains relative path in its INTERFACE_SOURCES: + + "empty.cpp" diff --git a/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake b/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake index 070a381..489c3a1 100644 --- a/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake +++ b/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake @@ -2,7 +2,12 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "$<1:empty.cpp>") +endif() add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") target_link_libraries(userTarget testTarget) diff --git a/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..f0f002c --- /dev/null +++ b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains relative path: + + "empty.cpp" diff --git a/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake b/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake index 4c4727d..e974aac 100644 --- a/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake +++ b/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake @@ -2,8 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") - +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib ) diff --git a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..c5157ad --- /dev/null +++ b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake index f814a3c..d80cbec 100644 --- a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake +++ b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-result.txt similarity index 100% copy from Tests/RunCMake/TargetSources/ExportBuild-result.txt copy to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-result.txt diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..48f2485 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/prefix/src/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/export-NOWARN.cmake b/Tests/RunCMake/IfacePaths/export-NOWARN.cmake index 50720a0..592572c 100644 --- a/Tests/RunCMake/IfacePaths/export-NOWARN.cmake +++ b/Tests/RunCMake/IfacePaths/export-NOWARN.cmake @@ -1,19 +1,34 @@ enable_language(CXX) add_library(foo empty.cpp) + set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<0:>/include/subdir) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $<0:>/include/subdir/empty.cpp) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) # target_include_directories(foo INTERFACE include/subdir) # Does and should warn. INSTALL_INTERFACE must not list src dir paths. target_include_directories(foo INTERFACE $<0:>/include/subdir) # Does not and should not should warn, because it starts with a genex. target_include_directories(foo INTERFACE $/include/subdir) +target_sources(foo INTERFACE $<0:>/include/subdir/empty.cpp) +target_sources(foo INTERFACE $/include/subdir/empty.cpp) target_include_directories(foo INTERFACE $) target_include_directories(foo INTERFACE $>) +target_sources(foo INTERFACE $) +target_sources(foo INTERFACE $>) + +install(FILES include/subdir/empty.cpp + DESTINATION include/subdir +) install(TARGETS foo EXPORT FooTargets DESTINATION lib) install(EXPORT FooTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/TargetSources/ExportBuild-result.txt index d00491f..573541a 100644 --- a/Tests/RunCMake/TargetSources/ExportBuild-result.txt +++ b/Tests/RunCMake/TargetSources/ExportBuild-result.txt @@ -1 +1 @@ -1 +0 diff --git a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt b/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt b/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall.cmake b/Tests/RunCMake/TargetSources/ExportInstall.cmake deleted file mode 100644 index 8e7c9f9..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall.cmake +++ /dev/null @@ -1,6 +0,0 @@ - -add_library(iface INTERFACE) -target_sources(iface INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/empty_1.cpp") - -install(TARGETS iface EXPORT exp) -install(EXPORT exp DESTINATION cmake) diff --git a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake index 1b4ef0b..4416ef9 100644 --- a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake +++ b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake @@ -10,4 +10,3 @@ endif() run_cmake(CMP0026-LOCATION) run_cmake(RelativePathInInterface) run_cmake(ExportBuild) -run_cmake(ExportInstall) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=abded27208623ebd45e2ce66ab0ba36c40ccae58 commit abded27208623ebd45e2ce66ab0ba36c40ccae58 Author: Stephen Kelly AuthorDate: Sun Nov 30 13:54:18 2014 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:34:39 2015 +0100 Tests: Move IfacePaths test stderr files. Rename the files with a property-specific name, so that additional properties can be easily tested. Extend the RunCMake infrastructure to allow specifying a non-uniform stderr file location. diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt rename to Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt rename to Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr.txt b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr.txt rename to Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake index 8febf18..489e3df 100644 --- a/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake +++ b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake @@ -2,6 +2,7 @@ include(RunCMake) macro(run_cmake test) list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + set(RunCMake-stderr-file ${test}-stderr_${TEST_PROP}.txt) _run_cmake(${test}) endmacro() diff --git a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d9f8390db6ab0d776eb39b840a3b096b5422229f commit d9f8390db6ab0d776eb39b840a3b096b5422229f Author: Stephen Kelly AuthorDate: Sun Nov 30 13:42:00 2014 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:34:27 2015 +0100 Tests: Run IfacePaths tests with a parameter. Run the tests for the INCLUDE_DIRECTORIES INTERFACE property in a specific build location, and update the stderr expectation to match the new output. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 3645735..71507b8 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -188,7 +188,9 @@ add_RunCMake_test(CommandLine) add_RunCMake_test(install) add_RunCMake_test(CPackInstallProperties) add_RunCMake_test(ExternalProject) -add_RunCMake_test(IfacePaths) + +set(IfacePaths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) +add_RunCMake_test(IfacePaths_INCLUDE_DIRECTORIES TEST_DIR IfacePaths) if(RPMBUILD) add_RunCMake_test(CPackRPM) diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt index 09d225f..f2d749b 100644 --- a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt index 6c3a122..3d83892 100644 --- a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/IfacePaths/prefix" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix" however it is also a subdirectory of the build tree: - ".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-WARN-build" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt index cb2cba4..ed7cd58 100644 --- a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/IfacePaths/BinaryDirectoryInInterface-build/foo" + ".*RunCMake/IfacePaths_INCLUDE_DIRECTORIES/BinaryDirectoryInInterface-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt index c71b375..3d60831 100644 --- a/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt +++ b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/IfacePaths/InstallInBinDir-build/foo" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/InstallInBinDir-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt index 526ef61..11994dd 100644 --- a/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt +++ b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/IfacePaths/copy/foo" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/copy/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake index 4c9a703..8febf18 100644 --- a/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake +++ b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake @@ -1,5 +1,10 @@ include(RunCMake) +macro(run_cmake test) + list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + _run_cmake(${test}) +endmacro() + run_cmake(RelativePathInInterface) run_cmake(RelativePathInGenex) run_cmake(export-NOWARN) @@ -57,12 +62,15 @@ configure_file( COPYONLY ) -foreach(policyStatus "" NEW OLD) - if (NOT "${policyStatus}" STREQUAL "") - set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) - else() - unset(policyOption) - set(policyStatus WARN) +foreach(policyStatus NEW OLD "") + if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + if (NOT "${policyStatus}" STREQUAL "") + set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) + else() + unset(policyOption) + set(policyStatus WARN) + endif() + set(policySuffix -CMP0052-${policyStatus}) endif() set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} @@ -73,16 +81,20 @@ foreach(policyStatus "" NEW OLD) # a subdirectory or the source directory, which is allowed and tested separately # below. set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build") - run_cmake(BinInInstallPrefix-CMP0052-${policyStatus}) + set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix${policySuffix}-build") + run_cmake(BinInInstallPrefix${policySuffix}) unset(RunCMake_TEST_BINARY_DIR) set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" ) - run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus}) + run_cmake(SrcInInstallPrefix${policySuffix}) unset(RunCMake_TEST_SOURCE_DIR) + + if (NOT TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + break() + endif() endforeach() set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt index ab95537..ed5df34 100644 --- a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/IfacePaths/prefix/src/foo" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/src/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt index 23683e8..cb5a51c 100644 --- a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/IfacePaths/prefix/src/foo" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/src/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/IfacePaths/prefix" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix" however it is also a subdirectory of the source tree: - ".*Tests/RunCMake/IfacePaths/prefix/src" + ".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/src" This warning is for project developers. Use -Wno-dev to suppress it. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cc1520947608f5224a4fdfa94b5cb07e19e23600 commit cc1520947608f5224a4fdfa94b5cb07e19e23600 Author: Stephen Kelly AuthorDate: Sun Nov 30 13:20:32 2014 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:23:47 2015 +0100 Tests: Split part of include_directories test to a generic location. The moved tests are related to paths in INTERFACE_INCLUDE_DIRECTORIES in general, and when exporting, and covering cases of the install location being within the build or source prefix etc. Other build properties containing paths should have similar tests, so this allows some parameterization while keeping the preparation of the various directory structures. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 2973fe9..3645735 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -188,6 +188,7 @@ add_RunCMake_test(CommandLine) add_RunCMake_test(install) add_RunCMake_test(CPackInstallProperties) add_RunCMake_test(ExternalProject) +add_RunCMake_test(IfacePaths) if(RPMBUILD) add_RunCMake_test(CPackRPM) diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt similarity index 62% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt index f0adc9f..09d225f 100644 --- a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" + ".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-result.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-OLD-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-result.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-OLD-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-result.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-result.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-result.txt diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt similarity index 69% rename from Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt index 054bff5..6c3a122 100644 --- a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" + ".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/include_directories/prefix" + ".*Tests/RunCMake/IfacePaths/prefix" however it is also a subdirectory of the build tree: - ".*Tests/RunCMake/include_directories/prefix/BinInInstallPrefix-CMP0052-WARN-build" + ".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-WARN-build" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt rename to Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt similarity index 67% rename from Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt index 0d4379e..cb2cba4 100644 --- a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/include_directories/BinaryDirectoryInInterface-build/foo" + ".*RunCMake/IfacePaths/BinaryDirectoryInInterface-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake rename to Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake diff --git a/Tests/RunCMake/include_directories/CMakeLists.txt b/Tests/RunCMake/IfacePaths/CMakeLists.txt similarity index 100% copy from Tests/RunCMake/include_directories/CMakeLists.txt copy to Tests/RunCMake/IfacePaths/CMakeLists.txt diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix-result.txt b/Tests/RunCMake/IfacePaths/DirInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/DirInInstallPrefix-result.txt rename to Tests/RunCMake/IfacePaths/DirInInstallPrefix-result.txt diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix.cmake b/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake similarity index 100% rename from Tests/RunCMake/include_directories/DirInInstallPrefix.cmake rename to Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake diff --git a/Tests/RunCMake/include_directories/InstallInBinDir-result.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallInBinDir-result.txt rename to Tests/RunCMake/IfacePaths/InstallInBinDir-result.txt diff --git a/Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt similarity index 68% rename from Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt rename to Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt index 254fae1..c71b375 100644 --- a/Tests/RunCMake/include_directories/InstallInBinDir-stderr.txt +++ b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/InstallInBinDir-build/foo" + ".*Tests/RunCMake/IfacePaths/InstallInBinDir-build/foo" which is prefixed in the build directory. diff --git a/Tests/RunCMake/include_directories/InstallInSrcDir-result.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallInSrcDir-result.txt rename to Tests/RunCMake/IfacePaths/InstallInSrcDir-result.txt diff --git a/Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt similarity index 74% rename from Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt rename to Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt index 7be3044..526ef61 100644 --- a/Tests/RunCMake/include_directories/InstallInSrcDir-stderr.txt +++ b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/copy/foo" + ".*Tests/RunCMake/IfacePaths/copy/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface-result.txt b/Tests/RunCMake/IfacePaths/InstallPrefixInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallPrefixInInterface-result.txt rename to Tests/RunCMake/IfacePaths/InstallPrefixInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake b/Tests/RunCMake/IfacePaths/InstallPrefixInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/InstallPrefixInInterface.cmake rename to Tests/RunCMake/IfacePaths/InstallPrefixInInterface.cmake diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-result.txt b/Tests/RunCMake/IfacePaths/InstallToPrefixInSrcDirInSource-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-result.txt rename to Tests/RunCMake/IfacePaths/InstallToPrefixInSrcDirInSource-result.txt diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-result.txt b/Tests/RunCMake/IfacePaths/InstallToPrefixInSrcDirOutOfSource-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-result.txt rename to Tests/RunCMake/IfacePaths/InstallToPrefixInSrcDirOutOfSource-result.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex-result.txt b/Tests/RunCMake/IfacePaths/RelativePathInGenex-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInGenex-result.txt rename to Tests/RunCMake/IfacePaths/RelativePathInGenex-result.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex-stderr.txt b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInGenex-stderr.txt rename to Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInGenex.cmake b/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInGenex.cmake rename to Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake diff --git a/Tests/RunCMake/include_directories/RelativePathInInterface-result.txt b/Tests/RunCMake/IfacePaths/RelativePathInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInInterface-result.txt rename to Tests/RunCMake/IfacePaths/RelativePathInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr.txt similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr.txt diff --git a/Tests/RunCMake/include_directories/RelativePathInInterface.cmake b/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/RelativePathInInterface.cmake rename to Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake diff --git a/Tests/RunCMake/include_directories/RunCMakeTest.cmake b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake similarity index 96% copy from Tests/RunCMake/include_directories/RunCMakeTest.cmake copy to Tests/RunCMake/IfacePaths/RunCMakeTest.cmake index fa76f24..4c9a703 100644 --- a/Tests/RunCMake/include_directories/RunCMakeTest.cmake +++ b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake @@ -1,17 +1,10 @@ include(RunCMake) -run_cmake(NotFoundContent) -run_cmake(DebugIncludes) -run_cmake(TID-bad-target) -run_cmake(SourceDirectoryInInterface) -run_cmake(BinaryDirectoryInInterface) run_cmake(RelativePathInInterface) -run_cmake(ImportedTarget) run_cmake(RelativePathInGenex) -run_cmake(CMP0021) -run_cmake(install_config) -run_cmake(incomplete-genex) run_cmake(export-NOWARN) +run_cmake(SourceDirectoryInInterface) +run_cmake(BinaryDirectoryInInterface) set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/DirInInstallPrefix/prefix") run_cmake(DirInInstallPrefix) diff --git a/Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt rename to Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-result.txt diff --git a/Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt similarity index 78% rename from Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt index 9346b99..97a94b1 100644 --- a/Tests/RunCMake/include_directories/SourceDirectoryInInterface-stderr.txt +++ b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*RunCMake/include_directories/foo" + ".*RunCMake/IfacePaths/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake similarity index 100% rename from Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake rename to Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt similarity index 72% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt index afa43e0..ab95537 100644 --- a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt +++ b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt @@ -1,6 +1,6 @@ CMake Error in CMakeLists.txt: Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path: - ".*Tests/RunCMake/include_directories/prefix/src/foo" + ".*Tests/RunCMake/IfacePaths/prefix/src/foo" which is prefixed in the source directory. diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-result.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-OLD-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-result.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-OLD-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-result.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-result.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-result.txt diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt similarity index 75% rename from Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt index 0b13fd8..23683e8 100644 --- a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt +++ b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt @@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt: Directory: - ".*Tests/RunCMake/include_directories/prefix/src/foo" + ".*Tests/RunCMake/IfacePaths/prefix/src/foo" in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory of the install directory: - ".*Tests/RunCMake/include_directories/prefix" + ".*Tests/RunCMake/IfacePaths/prefix" however it is also a subdirectory of the source tree: - ".*Tests/RunCMake/include_directories/prefix/src" + ".*Tests/RunCMake/IfacePaths/prefix/src" This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/IfacePaths/empty.cpp b/Tests/RunCMake/IfacePaths/empty.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Tests/RunCMake/include_directories/export-NOWARN-result.txt b/Tests/RunCMake/IfacePaths/export-NOWARN-result.txt similarity index 100% rename from Tests/RunCMake/include_directories/export-NOWARN-result.txt rename to Tests/RunCMake/IfacePaths/export-NOWARN-result.txt diff --git a/Tests/RunCMake/include_directories/export-NOWARN.cmake b/Tests/RunCMake/IfacePaths/export-NOWARN.cmake similarity index 100% rename from Tests/RunCMake/include_directories/export-NOWARN.cmake rename to Tests/RunCMake/IfacePaths/export-NOWARN.cmake diff --git a/Tests/RunCMake/include_directories/CMakeLists.txt b/Tests/RunCMake/include_directories/CMakeLists.txt index 5cd4825..2897109 100644 --- a/Tests/RunCMake/include_directories/CMakeLists.txt +++ b/Tests/RunCMake/include_directories/CMakeLists.txt @@ -1,6 +1,3 @@ cmake_minimum_required(VERSION 3.0) project(${RunCMake_TEST} NONE) -if(NOT TEST_FILE) - set(TEST_FILE ${RunCMake_TEST}.cmake) -endif() -include(${TEST_FILE}) +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/include_directories/RunCMakeTest.cmake b/Tests/RunCMake/include_directories/RunCMakeTest.cmake index fa76f24..3f624f8 100644 --- a/Tests/RunCMake/include_directories/RunCMakeTest.cmake +++ b/Tests/RunCMake/include_directories/RunCMakeTest.cmake @@ -3,148 +3,7 @@ include(RunCMake) run_cmake(NotFoundContent) run_cmake(DebugIncludes) run_cmake(TID-bad-target) -run_cmake(SourceDirectoryInInterface) -run_cmake(BinaryDirectoryInInterface) -run_cmake(RelativePathInInterface) run_cmake(ImportedTarget) -run_cmake(RelativePathInGenex) run_cmake(CMP0021) run_cmake(install_config) run_cmake(incomplete-genex) -run_cmake(export-NOWARN) - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/DirInInstallPrefix/prefix") -run_cmake(DirInInstallPrefix) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/copy/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/copy/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" - "${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" - COPYONLY -) -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/copy/SourceDirectoryInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/copy") -run_cmake(InstallInSrcDir) -unset(RunCMake_TEST_SOURCE_DIR) - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix") -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallInBinDir-build/prefix" - "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" - ) -set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/InstallInBinDir-build") -run_cmake(InstallInBinDir) -unset(RunCMake_TEST_BINARY_DIR) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/prefix/src/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/prefix/src/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/SourceDirectoryInInterface.cmake" - "${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" - COPYONLY -) - -foreach(policyStatus "" NEW OLD) - if (NOT "${policyStatus}" STREQUAL "") - set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus}) - else() - unset(policyOption) - set(policyStatus WARN) - endif() - set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} - "-DTEST_FILE=${RunCMake_SOURCE_DIR}/BinaryDirectoryInInterface.cmake" - ) - # Set the RunCMake_TEST_SOURCE_DIR here to the copy too. This is needed to run - # the test suite in-source properly. Otherwise the install directory would be - # a subdirectory or the source directory, which is allowed and tested separately - # below. - set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src") - set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build") - run_cmake(BinInInstallPrefix-CMP0052-${policyStatus}) - unset(RunCMake_TEST_BINARY_DIR) - - set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption} - "-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake" - ) - run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus}) - unset(RunCMake_TEST_SOURCE_DIR) -endforeach() - -set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix") -run_cmake(InstallPrefixInInterface) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/installToSrc/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/installToSrc/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" - "${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" - COPYONLY -) -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrc/InstallPrefixInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrc") -run_cmake(InstallToPrefixInSrcDirOutOfSource) -unset(RunCMake_TEST_SOURCE_DIR) - - -file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}/installToSrcInSrc") -set(RunCMake_TEST_NO_CLEAN ON) - -configure_file( - "${RunCMake_SOURCE_DIR}/CMakeLists.txt" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/CMakeLists.txt" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/empty.cpp" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/empty.cpp" - COPYONLY -) -configure_file( - "${RunCMake_SOURCE_DIR}/InstallPrefixInInterface.cmake" - "${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" - COPYONLY -) - -set(RunCMake_TEST_OPTIONS - "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface/prefix" - "-DTEST_FILE=${RunCMake_BINARY_DIR}/installToSrcInSrc/InstallPrefixInInterface.cmake" - ) -set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") -set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/installToSrcInSrc") -run_cmake(InstallToPrefixInSrcDirInSource) -unset(RunCMake_TEST_SOURCE_DIR) -unset(RunCMake_TEST_BINARY_DIR) -unset(RunCMake_TEST_NO_CLEAN) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c0d8e715915f65196353c09d86d4d34fe100437f commit c0d8e715915f65196353c09d86d4d34fe100437f Author: Stephen Kelly AuthorDate: Mon Feb 9 08:41:06 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:15:04 2015 +0100 RunCMake: Allow specifying the stderr file for a test. diff --git a/Tests/RunCMake/RunCMake.cmake b/Tests/RunCMake/RunCMake.cmake index 33b745d..6389ef4 100644 --- a/Tests/RunCMake/RunCMake.cmake +++ b/Tests/RunCMake/RunCMake.cmake @@ -18,7 +18,10 @@ function(run_cmake test) set(expect_result 0) endif() foreach(o out err) - if(EXISTS ${top_src}/${test}-std${o}.txt) + if(RunCMake-std${o}-file AND EXISTS ${top_src}/${RunCMake-std${o}-file}) + file(READ ${top_src}/${RunCMake-std${o}-file} expect_std${o}) + string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") + elseif(EXISTS ${top_src}/${test}-std${o}.txt) file(READ ${top_src}/${test}-std${o}.txt expect_std${o}) string(REGEX REPLACE "\n+$" "" expect_std${o} "${expect_std${o}}") else() http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=68d29f519047aeef92a0ab8fef531010c311efaa commit 68d29f519047aeef92a0ab8fef531010c311efaa Author: Stephen Kelly AuthorDate: Mon Feb 9 08:39:18 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:15:04 2015 +0100 RunCMake: Allow specifying the directory to run tests in. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 801655f..2973fe9 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -1,17 +1,28 @@ # See adjacent README.rst for documentation of this test infrastructure. macro(add_RunCMake_test test) + set(TEST_ARGS ${ARGN}) + if ("${ARGV1}" STREQUAL "TEST_DIR") + if ("${ARGV2}" STREQUAL "") + message(FATAL_ERROR "Invalid args") + endif() + set(Test_Dir ${ARGV2}) + list(REMOVE_AT TEST_ARGS 0) + list(REMOVE_AT TEST_ARGS 0) + else() + set(Test_Dir ${test}) + endif() add_test(NAME RunCMake.${test} COMMAND ${CMAKE_CMAKE_COMMAND} -DCMAKE_MODULE_PATH=${CMAKE_CURRENT_SOURCE_DIR} -DRunCMake_GENERATOR=${CMAKE_GENERATOR} -DRunCMake_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM} -DRunCMake_GENERATOR_TOOLSET=${CMAKE_GENERATOR_TOOLSET} -DRunCMake_MAKE_PROGRAM=${CMake_TEST_EXPLICIT_MAKE_PROGRAM} - -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${test} + -DRunCMake_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir} -DRunCMake_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}/${test} ${${test}_ARGS} - ${ARGN} - -P "${CMAKE_CURRENT_SOURCE_DIR}/${test}/RunCMakeTest.cmake" + ${TEST_ARGS} + -P "${CMAKE_CURRENT_SOURCE_DIR}/${Test_Dir}/RunCMakeTest.cmake" ) endmacro() http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1c3918ff0278715e2a4ec5929f75f7812003ee97 commit 1c3918ff0278715e2a4ec5929f75f7812003ee97 Author: Stephen Kelly AuthorDate: Sun Feb 1 17:38:59 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 19:15:04 2015 +0100 RunCMake: Remove unneeded files. The default expectation of RunCMake tests is empty content, so there is no need to specify it. diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt b/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt b/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt b/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt b/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt b/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt b/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt b/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt b/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt b/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt b/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt b/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt b/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt b/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt b/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt b/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt b/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt b/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt b/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt b/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt b/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt b/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt b/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt b/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/GenerateSource-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt b/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt b/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt b/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt b/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt b/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt b/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt b/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt b/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt b/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt b/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt b/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt b/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt b/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/include_directories/export-NOWARN-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt b/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt b/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/interface_library/genex_link-stderr.txt b/Tests/RunCMake/interface_library/genex_link-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/interface_library/genex_link-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt b/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/interface_library/no_shared_libs-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/message/nomessage-stderr.txt b/Tests/RunCMake/message/nomessage-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/message/nomessage-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt b/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ diff --git a/Tests/RunCMake/project/CMP0048-NEW-stderr.txt b/Tests/RunCMake/project/CMP0048-NEW-stderr.txt deleted file mode 100644 index 10f3293..0000000 --- a/Tests/RunCMake/project/CMP0048-NEW-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -^$ ----------------------------------------------------------------------- Summary of changes: Help/command/target_sources.rst | 4 - Help/prop_tgt/INTERFACE_SOURCES.rst | 4 - Help/release/dev/export-interface-source-files.rst | 6 + Source/cmExportBuildFileGenerator.cxx | 13 +- Source/cmExportFileGenerator.cxx | 136 +++++++++++++------ Source/cmExportFileGenerator.h | 5 + Source/cmExportInstallFileGenerator.cxx | 28 ++-- Tests/ExportImport/Export/Interface/CMakeLists.txt | 12 +- .../Export/Interface/source_target.cpp | 13 ++ .../Export/Interface/source_target_for_install.cpp | 13 ++ Tests/ExportImport/Import/Interface/CMakeLists.txt | 8 ++ .../Import/Interface/source_target_test.cpp | 7 + .../RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-shared-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt | 1 - ...CMP0022-NOWARN-static-link_libraries-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-static-stderr.txt | 1 - .../RunCMake/CMP0022/CMP0022-export-exe-stderr.txt | 1 - .../CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt | 1 - .../CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt | 1 - .../RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt | 1 - Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt | 1 - .../CMP0037/CMP0037-OLD-reserved-stderr.txt | 1 - .../RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt | 1 - Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt | 1 - .../CMP0040/CMP0040-NEW-existing-target-stderr.txt | 1 - .../CMP0040/CMP0040-OLD-existing-target-stderr.txt | 1 - .../CMP0040/CMP0040-OLD-missing-target-stderr.txt | 1 - Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt | 1 - Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt | 1 - Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt | 1 - .../CMP0046-NEW-existing-dependency-stderr.txt | 1 - .../CMP0046-OLD-existing-dependency-stderr.txt | 1 - .../CMP0046-OLD-missing-dependency-stderr.txt | 1 - Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt | 1 - .../CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt | 1 - .../CMP0055-OLD-Reject-Arguments-stderr.txt | 1 - Tests/RunCMake/CMakeLists.txt | 23 +++- ...LinkImplementationFeatureCycleSolved-stderr.txt | 1 - .../DisallowedCommands/CMP0029-OLD-stderr.txt | 1 - .../File_Generate/CarryPermissions-stderr.txt | 1 - .../File_Generate/GenerateSource-stderr.txt | 1 - .../OutputNameMatchesOtherSources-stderr.txt | 1 - Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt | 1 - .../File_Generate/WriteIfDifferent-stderr.txt | 1 - .../ValidTarget-TARGET_PDB_FILE-stderr.txt | 1 - .../BinInInstallPrefix-CMP0052-NEW-result.txt} | 0 ...fix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../BinInInstallPrefix-CMP0052-OLD-result.txt | 0 .../BinInInstallPrefix-CMP0052-WARN-result.txt | 0 ...ix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} | 6 +- .../BinInInstallPrefix-result.txt} | 0 .../BinInInstallPrefix-stderr_SOURCES.txt | 6 + .../BinaryDirectoryInInterface-result.txt} | 0 ...toryInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../BinaryDirectoryInInterface-stderr_SOURCES.txt | 6 + .../IfacePaths/BinaryDirectoryInInterface.cmake | 15 +++ .../CMakeLists.txt | 0 .../DirInInstallPrefix-result.txt | 0 Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake | 14 ++ .../InstallInBinDir-result.txt} | 0 ...InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../IfacePaths/InstallInBinDir-stderr_SOURCES.txt | 6 + .../InstallInSrcDir-result.txt} | 0 ...InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../IfacePaths/InstallInSrcDir-stderr_SOURCES.txt | 6 + .../InstallPrefixInInterface-result.txt | 0 .../InstallPrefixInInterface.cmake | 0 .../InstallToPrefixInSrcDirInSource-result.txt | 0 .../InstallToPrefixInSrcDirOutOfSource-result.txt | 0 .../RelativePathInGenex-result.txt} | 0 ...tivePathInGenex-stderr_INCLUDE_DIRECTORIES.txt} | 0 .../RelativePathInGenex-stderr_SOURCES.txt | 4 + .../RunCMake/IfacePaths/RelativePathInGenex.cmake | 13 ++ .../RelativePathInInterface-result.txt} | 0 ...PathInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 0 .../RelativePathInInterface-stderr_SOURCES.txt | 4 + .../IfacePaths/RelativePathInInterface.cmake | 14 ++ .../RunCMakeTest.cmake | 42 +++--- .../SourceDirectoryInInterface-result.txt} | 0 ...toryInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../SourceDirectoryInInterface-stderr_SOURCES.txt | 6 + .../IfacePaths/SourceDirectoryInInterface.cmake | 15 +++ .../SrcInInstallPrefix-CMP0052-NEW-result.txt} | 0 ...fix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../SrcInInstallPrefix-CMP0052-OLD-result.txt | 0 .../SrcInInstallPrefix-CMP0052-WARN-result.txt | 0 ...ix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} | 6 +- .../SrcInInstallPrefix-result.txt} | 0 .../SrcInInstallPrefix-stderr_SOURCES.txt | 6 + Tests/RunCMake/{CMP0004 => IfacePaths}/empty.cpp | 0 .../export-NOWARN-result.txt | 0 .../export-NOWARN.cmake | 15 +++ Tests/RunCMake/RunCMake.cmake | 5 +- Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt | 1 - .../LinkImplementationCycle3-stderr.txt | 1 - .../TargetSources/CMP0026-LOCATION-stderr.txt | 1 - .../RunCMake/TargetSources/ExportBuild-result.txt | 2 +- .../RunCMake/TargetSources/ExportBuild-stderr.txt | 1 - .../TargetSources/ExportInstall-result.txt | 1 - .../TargetSources/ExportInstall-stderr.txt | 1 - Tests/RunCMake/TargetSources/ExportInstall.cmake | 6 - Tests/RunCMake/TargetSources/RunCMakeTest.cmake | 1 - .../BinInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../BinInInstallPrefix-CMP0052-OLD-stderr.txt | 1 - .../BinaryDirectoryInInterface-result.txt | 1 - .../BinaryDirectoryInInterface.cmake | 11 -- Tests/RunCMake/include_directories/CMakeLists.txt | 5 +- .../DirInInstallPrefix-stderr.txt | 1 - .../include_directories/DirInInstallPrefix.cmake | 9 -- .../include_directories/InstallInBinDir-result.txt | 1 - .../include_directories/InstallInSrcDir-result.txt | 1 - .../InstallPrefixInInterface-stderr.txt | 1 - .../InstallToPrefixInSrcDirInSource-stderr.txt | 1 - .../InstallToPrefixInSrcDirOutOfSource-stderr.txt | 1 - .../RelativePathInGenex-result.txt | 1 - .../include_directories/RelativePathInGenex.cmake | 8 -- .../RelativePathInInterface-result.txt | 1 - .../RelativePathInInterface.cmake | 11 -- .../include_directories/RunCMakeTest.cmake | 141 -------------------- .../SourceDirectoryInInterface-result.txt | 1 - .../SourceDirectoryInInterface.cmake | 11 -- .../SrcInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../SrcInInstallPrefix-CMP0052-OLD-stderr.txt | 1 - .../include_directories/export-NOWARN-stderr.txt | 1 - .../install/SkipInstallRulesNoWarning1-stderr.txt | 1 - .../install/SkipInstallRulesNoWarning2-stderr.txt | 1 - .../interface_library/genex_link-stderr.txt | 1 - .../interface_library/no_shared_libs-stderr.txt | 1 - Tests/RunCMake/message/nomessage-stderr.txt | 1 - .../with_install_prefix-stderr.txt | 1 - Tests/RunCMake/project/CMP0048-NEW-stderr.txt | 1 - 139 files changed, 367 insertions(+), 379 deletions(-) create mode 100644 Help/release/dev/export-interface-source-files.rst create mode 100644 Tests/ExportImport/Export/Interface/source_target.cpp create mode 100644 Tests/ExportImport/Export/Interface/source_target_for_install.cpp create mode 100644 Tests/ExportImport/Import/Interface/source_target_test.cpp delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt delete mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt delete mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt delete mode 100644 Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt delete mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt delete mode 100644 Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt delete mode 100644 Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/GenerateSource-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt delete mode 100644 Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/BinInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt => IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} (60%) rename Tests/RunCMake/{include_directories => IfacePaths}/BinInInstallPrefix-CMP0052-OLD-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/BinInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt => IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} (66%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/BinInInstallPrefix-result.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/BinaryDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/BinaryDirectoryInInterface-stderr.txt => IfacePaths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt} (64%) create mode 100644 Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake copy Tests/RunCMake/{include_directories => IfacePaths}/CMakeLists.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/DirInInstallPrefix-result.txt (100%) create mode 100644 Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/InstallInBinDir-result.txt} (100%) rename Tests/RunCMake/{include_directories/InstallInBinDir-stderr.txt => IfacePaths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt} (65%) create mode 100644 Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/InstallInSrcDir-result.txt} (100%) rename Tests/RunCMake/{include_directories/InstallInSrcDir-stderr.txt => IfacePaths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt} (70%) create mode 100644 Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt rename Tests/RunCMake/{include_directories => IfacePaths}/InstallPrefixInInterface-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/InstallPrefixInInterface.cmake (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/InstallToPrefixInSrcDirInSource-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/InstallToPrefixInSrcDirOutOfSource-result.txt (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/RelativePathInGenex-result.txt} (100%) rename Tests/RunCMake/{include_directories/RelativePathInGenex-stderr.txt => IfacePaths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/RelativePathInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/RelativePathInInterface-stderr.txt => IfacePaths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake copy Tests/RunCMake/{include_directories => IfacePaths}/RunCMakeTest.cmake (86%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/SourceDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/SourceDirectoryInInterface-stderr.txt => IfacePaths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt} (78%) create mode 100644 Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/SrcInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt => IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} (69%) rename Tests/RunCMake/{include_directories => IfacePaths}/SrcInInstallPrefix-CMP0052-OLD-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/SrcInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt => IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} (72%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/SrcInInstallPrefix-result.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004 => IfacePaths}/empty.cpp (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/export-NOWARN-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/export-NOWARN.cmake (71%) delete mode 100644 Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt delete mode 100644 Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportBuild-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall-result.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall.cmake delete mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix.cmake delete mode 100644 Tests/RunCMake/include_directories/InstallInBinDir-result.txt delete mode 100644 Tests/RunCMake/include_directories/InstallInSrcDir-result.txt delete mode 100644 Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex.cmake delete mode 100644 Tests/RunCMake/include_directories/RelativePathInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/export-NOWARN-stderr.txt delete mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt delete mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt delete mode 100644 Tests/RunCMake/interface_library/genex_link-stderr.txt delete mode 100644 Tests/RunCMake/interface_library/no_shared_libs-stderr.txt delete mode 100644 Tests/RunCMake/message/nomessage-stderr.txt delete mode 100644 Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt delete mode 100644 Tests/RunCMake/project/CMP0048-NEW-stderr.txt hooks/post-receive -- CMake From steveire at gmail.com Mon Feb 9 14:51:02 2015 From: steveire at gmail.com (Stephen Kelly) Date: Mon, 9 Feb 2015 14:51:02 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1136-g36c115f Message-ID: <20150209195102.57656AAB44@public.kitware.com> 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 36c115f4b7c31775b107dfdcebb42afa531b18ed (commit) via 71c21ebb8d76339752061d0531e512988e925538 (commit) from 7afab9f4863d2ee87a1f32ee93a39d681d4a7056 (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=36c115f4b7c31775b107dfdcebb42afa531b18ed commit 36c115f4b7c31775b107dfdcebb42afa531b18ed Merge: 7afab9f 71c21eb Author: Stephen Kelly AuthorDate: Mon Feb 9 14:51:01 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 9 14:51:01 2015 -0500 Merge topic 'cmStandardIncludes-cleanup' into next 71c21ebb Revert "cmStandardIncludes: Remove functional header." http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=71c21ebb8d76339752061d0531e512988e925538 commit 71c21ebb8d76339752061d0531e512988e925538 Author: Stephen Kelly AuthorDate: Mon Feb 9 20:50:42 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 20:50:42 2015 +0100 Revert "cmStandardIncludes: Remove functional header." This reverts commit 17a2adc29de90c6ce441f7fff5cf9366286de3d6. diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 0909719..77b4f62 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -51,6 +51,7 @@ #include #include #include +#include #include #include ----------------------------------------------------------------------- Summary of changes: Source/cmStandardIncludes.h | 1 + 1 file changed, 1 insertion(+) hooks/post-receive -- CMake From steveire at gmail.com Mon Feb 9 17:12:44 2015 From: steveire at gmail.com (Stephen Kelly) Date: Mon, 9 Feb 2015 17:12:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1138-g0f1c037 Message-ID: <20150209221244.9024049B9@public.kitware.com> 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 0f1c0377293906e3dbd6c898b36b14d92335c8c4 (commit) via 8c044ade09cd104706a16580ab82fa03008d74de (commit) from 36c115f4b7c31775b107dfdcebb42afa531b18ed (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=0f1c0377293906e3dbd6c898b36b14d92335c8c4 commit 0f1c0377293906e3dbd6c898b36b14d92335c8c4 Merge: 36c115f 8c044ad Author: Stephen Kelly AuthorDate: Mon Feb 9 17:12:42 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 9 17:12:42 2015 -0500 Merge topic 'doc-user-interaction' into next 8c044ade Help: Add a new user manual for user interaction. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8c044ade09cd104706a16580ab82fa03008d74de commit 8c044ade09cd104706a16580ab82fa03008d74de Author: Stephen Kelly AuthorDate: Wed Feb 4 23:33:27 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 23:11:51 2015 +0100 Help: Add a new user manual for user interaction. This manual does not describe how to write CMake files, but how to invoke the CMake tools on a 1st/3rd party software distribution. diff --git a/Help/index.rst b/Help/index.rst index 2d3f156..cfcf164 100644 --- a/Help/index.rst +++ b/Help/index.rst @@ -38,6 +38,7 @@ Reference Manuals /manual/cmake-properties.7 /manual/cmake-qt.7 /manual/cmake-toolchains.7 + /manual/cmake-user-interaction.7 /manual/cmake-variables.7 .. only:: html or text diff --git a/Help/manual/cmake-user-interaction.7.rst b/Help/manual/cmake-user-interaction.7.rst new file mode 100644 index 0000000..81bb4c1 --- /dev/null +++ b/Help/manual/cmake-user-interaction.7.rst @@ -0,0 +1,654 @@ +.. cmake-manual-description: CMake User Interaction Reference + +cmake-user-interaction(7) +************************* + +.. only:: html + + .. contents:: + +Introduction +============ + +Where a software package supplies a CMake-based buildsystem with their +software, the consumer of the software is required to run a CMake user +interaction tool in order to build it. + +Well-behaved CMake-based buildsystems do not create any output in the source +directory, so typically, the user performs an out-of-source build and +performs the build there. First, CMake must be instructed to generate a +suitable buildsystem, then the user invokes a build tool to process that +generated buildsystem. The generated buildsystem is specific to the machine +used to generate it and is not redistributable. Each consumer of a provided +software package is required to use CMake to generate a buildsystem specific +to their system. + +Generated buildsystems should generally be treated as read-only. The CMake +files as a primary artifact should completely specify the buildsystem and +there should be no reason to populate properties in an IDE for example. + +The features and user interfaces described in this manual are available for +all CMake-based build systems by virtue of providing CMake files. + +The CMake tooling may report errors to the user when processing provided +CMake files, such as reporting that the compiler is not supported, or the +compiler does not support a required compile option, or a dependency can +not be found. These errors must be resolved by the user by choosing a +different compiler, installing dependencies, or instructing CMake where to +find them, etc. + +Quick Start +----------- + +The typical, portable way to build and install any CMake-based software on +any supported platform is: + +.. code-block:: console + + $ cd some_software-1.4.2 + $ mkdir build + $ cd build + $ cmake .. -DCMAKE_INSTALL_PREFIX=/opt/the/prefix + $ cmake --build . + $ cmake --build . --target install + +Generating a Buildsystem +======================== + +There are several user interface tools which may be used to generate a +buildsystem from CMake files. The :manual:`ccmake(1)` and +:manual:`cmake-gui(1)` tools guide the user through setting the various +necessary options. The :manual:`cmake(1)` tool can be invoked to specify +options on the command line. This manual describes options which may be +set using any of the user interface tools, though the mode of setting an +option is different for each tool. + +For simplicity, this manual only describes how to set options with +the :manual:`cmake(1)` command line tool, and assumes the software package +is free from bugs preventing typical CMake use. + +A simple but typical use of :manual:`cmake(1)` with a fresh copy of software +source code is to create a build directory and invoke cmake there: + +.. code-block:: console + + $ cd some_software-1.4.2 + $ mkdir build + $ cd build + $ cmake .. + +It is recommended to build in a separate directory to the source because +that keeps the source directory pristine, allows for building a single source +with multiple toolchains, and allows easy clearing of build artifacts by +simply deleting the build directory. + +The CMake tooling may report warnings which are intended for the provider +of the software, not intended for the consumer of the software. Such +warnings usually take the form of :manual:`policy ` +warnings. Users may disable such warnings by passing the ``-Wno-dev`` flag +to :manual:`cmake(1)`. + +Note that spaces in the path to the source directory or build directory can +cause problems if the provided software is not written to carefully quote +each path it uses. Such issues are usually easy to fix in the provided +CMake files. + +Choosing a Generator +-------------------- + +CMake chooses a generator by default based on the platform. Usually, the +default generator is sufficient to allow the user to proceed to build the +software. + +The user may override the default generator with the ``-G`` option: + +.. code-block:: console + + $ cmake .. -G Ninja + +The output of ``cmake --help`` includes a list of +:manual:`generators ` available for the user to +choose from. + +On Unix-like systems (including Apple), the :generator:`Unix Makefiles` +generator is used by default. A variant of that generator can also be used +on Windows in various environments, such as the :generator:`NMake Makefiles` +and :generator:`MinGW Makefiles` generator. These generators generate +a ``Makefile`` variant which can be executed with ``make``, ``gmake``, +``nmake`` or similar tools. See the individual generator documentation for +more information on targetted environments and tools. + +The :generator:`Ninja` generator is available on all major platforms. +``ninja`` is a build tool similar in use-cases to ``make``, but with a +focus on performance and efficiency. + +On Windows, :manual:`cmake(1)` can be used to generate solutions for the +Visual Studio IDE from version 6 to the most recent version. +:manual:`cmake(1)` must be invoked in a command line environment suitable +for executing the compiler which is to be generated for by running the +``vcvarsall.bat`` script, or launching the appropriate command line +environment. + +Visual Studio versions may be specified by the product name of the IDE, which +includes a four-digit year. Aliases are provided for other means by which +Visual Studio versions are sometimes referred to, such as two digits which +correspond to the product version of the VisualC++ compiler, or a +combination of the two: + +.. code-block:: console + + $ cmake .. -G "Visual Studio 2013" + $ cmake .. -G "Visual Studio 12" + $ cmake .. -G "Visual Studio 12 2013" + +If building for a 64 bit environment, ``Win64`` must be appended to the +generator name to generate correct files for the IDE: + +.. code-block:: console + + $ cmake .. -G "Visual Studio 2013 Win64" + $ cmake .. -G "Visual Studio 12 Win64" + $ cmake .. -G "Visual Studio 12 2013 Win64" + +On Apple, the :generator:`Xcode` generator may be used to generate project +files for the Xcode IDE. The particular version of Xcode used is determined +by the ``xcode-select`` platform tool and the ``DEVELOPER_DIR`` environment +variable. + +Note that for all Xcode and Visual Studio generators, the toolchain related +environment variables must be consistent between generating the buildsystem +and executing it. Executing the build in a different toolchain environment +than it was generated in results in undefined behavior. + +CMake also ships some generators which generate a ``Makefile`` or ``Ninja`` +based buildsystem, but also generate an IDE project which executes it. This +allows use of Eclipse with the :generator:`Eclipse CDT4` generator for +example, which allows semantic navigation through the software source files. + +Some IDEs such as KDevelop4, QtCreator and CLion have native support for +CMake-based buildsystems. Those IDEs provide user interface for selecting +an underlying generator to use, typcially a choice between a ``Makefile`` +or a ``Ninja`` based generator. + +After the first run, :manual:`cmake(1)` may be executed with a path to the +build directory instead of the source directory. This is most useful if +the build directory is not a subdirectory of the source directory as above, +but in a different location. Invoking :manual:`cmake(1)` directly after the +first generation is needed only when setting additional options for the +buildsystem generation: + +.. code-block:: console + + $ cmake . -DBUILD_EXAMPLES=TRUE + +Note that it is not possible to change the generator with ``-G`` after the +first invocation of CMake. To change the generator, the build directory +must be deleted and the build must be started from scratch. + +The CMake Cache +--------------- + +When CMake is executed, it needs to find the locations of compilers, tools +and dependencies. It also needs to be able to consistently re-generate +a buildsystem to use the same compile/link flags and paths to +dependencies. Such parameters are also required to be configurable by the +user because they are paths and options specific to the users system. + +When it is first executed, CMake generates a cache file in the build +directory containing key-value pairs for such artifacts. The cache file +can be viewed or edited by the user by running the :manual:`cmake-gui(1)` +or :manual:`ccmake(1)` tool. The tools provide user interface for +re-configuring the provided software and re-generating the buildsystem, as +is needed after editing cached values. Each cache entry may have an +associated short help text which is displayed in the user interface tools. + +The cache entries may also have a type to signify how it should be +presented in the user interface. For example, a cache entry of +type ``BOOL`` can be edited by a checkbox in a user interface, a +``STRING`` can be edited in a text field, and a ``FILEPATH`` while similar +to a ``STRING`` should also provide a way to locate filesystem paths using +a file dialog. An entry of type ``STRING`` may provide a restricted list of +allowed values which are then provided in a drop-down menu in +the :manual:`cmake-gui(1)` user interface. + +On the command line, the ``-D`` option to the :manual:`cmake(1)` tool is +used to specify cache entries, and the ``-U`` option is used to clear +them. Cache entries may be populated on first run, or any time after +the first run. + +The CMake files shipped with a software package may also define options +using the :command:`option` command. The command creates a cache entry +which can has a type, help text and a default value. Such cache entries +are typically specific to the provided software and affect the configuration +of the build, such as whether tests and examples are built, whether to build +with exceptions enabled, which major version of Qt to prefer etc. + +There is no convention provided by CMake for how such variables are named +between different provided buildsystems, except that variables with the +prefix ``CMAKE_`` usually refer to options provided by CMake itself and +should not be used in provider-specific options, which should use their +own prefix instead. The :manual:`cmake-gui(1)` tool can display options +in groups defined by their prefix, so it makes sense for providers to +ensure that they use a self-consistent prefix. + +The :manual:`cmake(1)` tool allows specifying a file to use to populate +the initial cache using the ``-C`` option. This can be useful to simplify +commands and scripts which repeatedly require the same cache entries. + +Choosing a Toolchain +-------------------- + +After determining the generator to use, CMake then attempts to determine the +toolchain to use for the build. + +CMake generates buildsystem files for multiple languages, so it tries to +find compilers for each language enabled by the :command:`project` +command in the provided software. As the ``C`` and ``CXX`` languages are +enabled by default, most CMake-based buildsystems will look for compilers +for those languages. + +CMake searches for well-known compilers in the ``PATH`` and in other +typical locations. Several compilers are searched for by default for +a particular language, such as ``g++``, ``cl.exe``, ``clang++`` for the +``CXX`` language. When CMake is run, +the :variable:`CMAKE__COMPILER` cache entry is populated with the +compiler in use for each language. + +The default compiler may be overriden by specifing that cache value in one +of the gui tools or on the command line. This is typically specified when +first run, along with the generator if overriding that too. Either a full +path to a compiler may be specified, or a basename may be specified, in +which case CMake will search for it in the ``PATH``: + +.. code-block:: console + + $ cmake .. -G "Ninja" \ + -DCMAKE_C_COMPILER=/custom/built/clang \ + -DCMAKE_CXX_COMPILER=/custom/built/clang++ + +The initial value of the :variable:`CMAKE__COMPILER` for a particular +language may also be specified by populating the environment variable +corresponding to the language: + +.. code-block:: console + + $ CXX=g++-4.8 cmake .. -G "Ninja" + +If the :variable:`CMAKE__COMPILER` variable for a particular language +changed after the first invocation, CMake will re-run the compiler tests for +the new toolchain. Note that changing the environment variable and +re-running CMake has no effect, so setting the +:variable:`CMAKE__COMPILER` should be preferred. + +In the case of cross compiling provided software, it is usually required to +specify the locations of compilers, the sysroot, custom compile flags and +settings to affect behavior specific to cross-compiling. Users can maintain +a :variable:`toolchain file ` with specific paths to +particular cross-compiling environments. Such files are usually not +distributable because they only contain content specific to a machine such as +user paths in the filesystem. For more see :ref:`Cross Compiling Toolchain`. + +For most generators, the compiler for each language is a primary +customization point. For Visual Studio however, the user does not generally +specify the compilers to use, but may specify a particular toolset. This +can be used to specify a +:ref:`cross compiling toolchain ` or to specify +the Windows port of the Clang toolchain for use with Visual Studio: + +.. code-block:: console + + $ # Build with the clang-cl toolset + $ cmake.exe .. -G "Visual Studio 2013" -T LLVM-vs2013 + $ # Build targetting Windows XP + $ cmake.exe .. -G "Visual Studio 2013" -T v120_xp + +The :variable:`CMAKE_GENERATOR_TOOLSET` may also be specified in +a :variable:`toolchain file ` instead of as a +CMake execution setting. + +If using Xcode build tools, the ``Makefile`` and ``Ninja`` generators +determine the compilers to use when CMake is run. Changing the +``DEVELOPER_DIR`` environment variable, or using ``xcode-select`` +to select a different version of Xcode will not affect the toolchain +used to build with those generators as the paths to the tools will be +cached. If using the :generator:`Xcode` generator, executing the build +in a different toolchain environment than it was generated in results +in undefined behavior. + +.. _`Choosing a Build Configuration`: + +Choosing a Build Configuration +------------------------------ + +Often software packages are intended to be built in at least two +configurations: Debug and Release. These configurations are defined by +a small number of build flags, such as for generating debugging symbols, +defining the ``NDEBUG`` macro or activating a particular optimization level. +Some software also provides extra configurations defined in their CMake +files such as a configuration for compiling in a mode for generating +coverage statistics. + +The available configurations known to the provided buildsystem are listed +in the :variable:`CMAKE_CONFIGURATION_TYPES` variable. + +The IDE generators, Visual Studio and Xcode, are multi-configuration +generators. The user does not specify the build configuration when +invoking CMake to generate the project files. The user instead generates +project files capable of building all configurations listed in the +:variable:`CMAKE_CONFIGURATION_TYPES` variable, and the then chooses +a particular configuration to build afterward. The IDEs themselves +provide user interface for choosing the build configuration, and +the :manual:`cmake(1)` tool +:ref:`provides a mode ` to build a +particular configuration on the command line. + +All other generators are for one particular configuration, determined by +the :variable:`CMAKE_BUILD_TYPE` variable. The user can set that variable +in a gui tool or on the command line to choose a particular configuration +to generate for: + +.. code-block:: console + + $ cmake .. -G "Ninja" -DCMAKE_BUILD_TYPE=Debug + +The build flags used for a particular configuration and compile language are +specified by the ``CMAKE__FLAGS_`` variables such +as :variable:`CMAKE_CXX_FLAGS_DEBUG _FLAGS_DEBUG>`. + +Configuration names are always handled in a case-insensitive way by +CMake. That is, ``release``, ``RELEASE`` and ``Release`` are all acceptable +ways of specifying the configuration. + +Customizing the Build +--------------------- + +CMake files in a software package may provide high-level cache options for +some build customization, such as with or without multi-threading support, +enabling compiler warnings etc. Where high-level interfaces are not +provided, users may specify additional flags when invoking +:manual:`cmake(1)`. + +The :variable:`CMAKE__FLAGS` variables such as ``CMAKE_CXX_FLAGS`` can +be populated with a strings containing flags which will be passed to the +compiler for the appropriate language: + +.. code-block:: console + + $ cmake .. -DCMAKE_CXX_FLAGS="-Wall -Werror" + +For linker flag customization, variables specific to the type of target +being linked are used: + +.. code-block:: console + + $ cmake .. -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--no-undefined" + +The initial values of the compiler and linker flags are populated with the +content of the environment variables ``CFLAGS``, ``CXXFLAGS`` and +``LDFLAGS``. These environment variables are considered only on the first +invocation of :manual:`cmake(1)` and are ignored if on subsequent +invocations, so setting the appropriate variables should be preferred. + +Because build configurations are defined by variables with a naming +convention, it is often possible to define the build configuration even if +the CMake files do not explicitly provide it: + +.. code-block:: console + + $ cmake .. -DCMAKE_BUILD_TYPE=Coverage \ + -DCMAKE_CXX_FLAGS_COVERAGE="-fprofile-arcs -ftest-coverage" \ + -DCMAKE_C_FLAGS_COVERAGE="-fprofile-arcs -ftest-coverage" \ + -DCMAKE_EXE_LINKER_FLAGS_COVERAGE="-fprofile-arcs -ftest-coverage" + +Note that both the generic build property variables, such +as ``CMAKE_CXX_FLAGS``, and the config-specific build property variables, +such as ``CMAKE_CXX_FLAGS_RELEASE``, are used when invoking the compiler. +The config-specifc variants are additions, not replacements. + +Finding Dependencies +-------------------- + +CMake files provided with a software package contain instructions for +finding each build dependency. Some build dependencies are optional +in that the build may succeed with a different feature set if the +dependency is missing, and some dependencies are required. CMake +searches well-known locations for each dependency, and the provided +software may supply additional hints or locations to CMake to find each +dependency. + +If a required dependency is not found by :manual:`cmake(1)`, the cache is +populated with an entry which contains a ``NOTFOUND`` value. This value +can be replaced by specifying it on the command line, or in +the :manual:`ccmake(1)` or :manual:`cmake-gui(1)` tool. + +The cache entries which need to be populated depend on several factors +relating to the dependency. CMake-aware upstreams may +provide :ref:`Config File Packages` which supply all required information +about the package. All packaged artifacts such as libraries and header +files have their location specified in +the :ref:`Config File Package `, so there is nothing +more CMake is required to find. + +CMake searches certain well-known locations for :ref:`Config File Packages`, +and end users can extend the locations searched by populating the +:variable:`CMAKE_PREFIX_PATH` variable, or the environment variable +of the same name. For each particular package, CMake provides a cache +entry matching the name ``_DIR``, which can be populated on +the command line or using the :manual:`ccmake(1)` or :manual:`cmake-gui(1)` +tool. The :variable:`CMAKE_PREFIX_PATH` and ``_DIR`` are +dis-similar in that the former is a prefix within which the ``Config.cmake`` +file is searched in several locations, whereas the ``_DIR`` +is a specific individual directory where the ``Config.cmake`` is expected +to be found directly. + +Where dependencies are not CMake-aware, each of their artifacts may need +to be found by specifying their path. In some cases, this will involve +specifying locations of multiple configurations, such as debug and +release versions. Some modules are written to find some artifacts +relative to others, so for example specifying the location of ``qmake`` +is enough to define the location of the accompanying Qt4 libraries. Some +find scripts in use by a CMake buildsystem are +:manual:`supplied by CMake `, while others are +maintained by the software being built. Consult the documentation of the +particular module for specific information. + +Invoking the Buildsystem +======================== + +After generating the buildsystem, the software can be built by invoking +the particular build tool. In the case of the IDE generators, this can +involve loading the generated project file into the IDE to invoke the +build. + +For all generators, it is possible to run the underlying build tool after +invoking CMake. For example, ``make`` may be executed after generating +with the :generator:`Unix Makefiles` generator to invoke the build, or +``ninja`` after generating with the :generator:`Ninja` generator etc. +The IDE buildsystems usually provide command line tooling for building +a project which can also be invoked. + +CMake is aware of the specific build tool needed to invoke a build so in +general, to build a buildsystem or project from the command line after +generating, the following command may be invoked in the build directory: + +.. code-block:: console + + $ cmake --build . + +The ``--build`` flag enables a particular mode of operation for +the :manual:`cmake(1)` tool. It invokes the :variable:`CMAKE_MAKE_PROGRAM` +command associated with the :manual:`generator `, or +the build tool configured by the user. + +The ``--build`` mode also accepts the parameter ``--target`` to specify a +particular target to build, for example a particular library, executable or +custom target, or a particular special target like ``install``. + +.. code-block:: console + + $ cmake --build . --target myexe + +The ``--build`` mode can also pass particular command line options to the +underlying build tool by listing them after ``--``. This can be useful to +specify options to the build tool, such as parallel jobs, where CMake does +not provide a high-level user interface. + +Selecting a Target +------------------ + +Each executable and library described in the CMake files is a build +target, and the provided package may describe custom targets, either for +internal use, or for user consumption, for example to create documentation. + +CMake provides some built-in targets for all buildsystems providing CMake +files. + +``all`` + The default target used by ``Makefile`` and ``Ninja`` generators. Builds + all targets in the buildsystem, except those which are excluded by + their :prop_tgt:`EXCLUDE_FROM_ALL` target property + or :prop_dir:`EXCLUDE_FROM_ALL` directory property. The name ``ALL_BUILD`` + is used for this purpose for the Xcode and Visual Studio generators. +``help`` + Lists the targets available for build. This target is available when + using the :generator:`Unix Makefiles` or :generator:`Ninja` generator, and + the exact output is tool-specific. +``clean`` + Delete built object files and other output files. The ``Makefile`` based + generators create a ``clean`` target per directory, so that an individual + directory can be cleaned. The ``Ninja`` tool provides its own granular + ``-t clean`` system. +``test`` + Runs tests. This target is only automatically available if the CMake + files provide CTest-based tests. See also `Running Tests`_. +``install`` + Installs the software. This target is only automatically available if + the software defines install rules with the :command:`install` + command. See also `Software Installation`_. +``package`` + Creates a binary package. This target is only automatically available + if the CMake files provide CPack-based packages. +``package_source`` + Creates a source package. This target is only automatically available + if the CMake files provide CPack-based packages. + +For ``Makefile`` based systems, ``/fast`` variants of binary build targets +are provided. The ``/fast`` variants are used to build the specified target +without regard for its dependencies. The dependencies are not checked and +are not rebuilt if out of date. The :generator:`Ninja` generator is +sufficiently fast at dependency checking that such targets are not provided. + +``Makefile`` based systems also provide build-targets to preprocess, +assemble and compile individual files in a particular directory. + +.. code-block:: console + + $ make foo.cpp.i + $ make foo.cpp.s + $ make foo.cpp.o + +The file extension is built into the name of the target because another file +with the same name but a different extension may exist. However, +build-targets without the file extension are also provided. + +.. code-block:: console + + $ make foo.i + $ make foo.s + $ make foo.o + +In buildsystems which contain ``foo.c`` and ``foo.cpp``, building +the ``foo.i`` target will preprocess both files. + +.. _`Specifying the Build Configuration`: + +Specifying a Build Configuration +-------------------------------- + +The mode also accepts a ``--config`` parameter in the case of multi-config +IDE projects to specify which particular configuration to build. + +.. code-block:: console + + $ cmake --build . --target myexe --config Release + +The ``--config`` option has no effect if the generator generates a +buildsystem specific to a configuration which is +:ref:`chosen when invoking cmake ` with +the :variable:`CMAKE_BUILD_TYPE` variable. + +Specifying a Build Program +-------------------------- + +The program invoked by the ``--build`` mode is determined by the +:variable:`CMAKE_MAKE_PROGRAM` variable. For some generators, the +particular program does not need to be configured. + +===================== =========================== =========================== + Generator Default make program Alternatives +===================== =========================== =========================== + XCode ``xcodebuild`` + Unix Makefiles ``make`` + NMake Makefiles ``nmake`` ``jom`` + NMake Makefiles JOM ``jom`` ``nmake`` + MinGW Makefiles ``mingw32-make`` + MSYS Makefiles ``make`` + Ninja ``ninja`` + Visual Studio ``msbuild`` ``devenv`` + Watcom WMake ``wmake`` +===================== =========================== =========================== + +The ``jom`` tool is capable of reading makefiles of the ``NMake`` flavor +and building in parallel, while the ``nmake`` tool always builds +serially. After generating with the :generator:`NMake Makefiles` generator +a user can run ``jom`` instead of ``nmake``. The ``--build`` mode would +also use ``jom`` if the :variable:`CMAKE_MAKE_PROGRAM` was set to ``jom`` +while using the :generator:`NMake Makefiles` generator, and as a +convenience, the :generator:`NMake Makefiles JOM` generator is provided +to find ``jom`` in the normal way and use it as +the :variable:`CMAKE_MAKE_PROGRAM`. For completeness, ``nmake`` is an +alternative tool which can process the output of +the :generator:`NMake Makefiles JOM` generator, but doing so would be a +pessimisation. + +The Visual Studio generators use either ``msbuild`` or ``devenv`` by +default, depending on the version and the enabled toolsets. + +Software Installation +===================== + +The :variable:`CMAKE_INSTALL_PREFIX` variable can be set in the CMake cache +to specify where to install the provided software. If the provided +software has install rules, specified using the :command:`install` command, +they will install artifacts into that prefix. On Windows, the default +installation location corresponds to the ``ProgramFiles`` system directory +which may be architecture specific. On Unix hosts, ``/usr/local`` is the +default installation location. + +The :variable:`CMAKE_INSTALL_PREFIX` variable always refers to the +installation prefix on the target filesystem. The CMake RPath-related +features ensure that this is the string written into the installed binary, +and the buildsystem might write it into the compiled binary in some cases. + +In cross-compiling or packaging scenarios where the sysroot is read-only +or where the sysroot should otherwise remain pristine, +the :variable:`CMAKE_STAGING_PREFIX` variable can be set to a location to +actually install the files. + +The commands: + +.. code-block:: console + + $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local \ + -DCMAKE_SYSROOT=$HOME/root \ + -DCMAKE_STAGING_PREFIX=/tmp/package + $ cmake --build . + $ cmake --build . --target install + +result in files being installed to paths such +as ``/tmp/package/lib/libfoo.so`` on the host machine, with RPath +information on the installed binaries prefixed at ``/usr/local``. The +``/usr/local`` location on the host machine is not affected. + +Some provided software may specify ``uninstall`` rules, but CMake does not +generate such rules by default itself. ----------------------------------------------------------------------- Summary of changes: Help/index.rst | 1 + Help/manual/cmake-user-interaction.7.rst | 654 ++++++++++++++++++++++++++++++ 2 files changed, 655 insertions(+) create mode 100644 Help/manual/cmake-user-interaction.7.rst hooks/post-receive -- CMake From steveire at gmail.com Mon Feb 9 17:31:02 2015 From: steveire at gmail.com (Stephen Kelly) Date: Mon, 9 Feb 2015 17:31:02 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1140-gd96c269 Message-ID: <20150209223102.A9705AA7E7@public.kitware.com> 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 d96c269d8e899f9318ea4f30794b4b4b4f000a97 (commit) via f0bd3e98c6aa5a899349a2740f0f19a4a29d2d16 (commit) from 0f1c0377293906e3dbd6c898b36b14d92335c8c4 (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=d96c269d8e899f9318ea4f30794b4b4b4f000a97 commit d96c269d8e899f9318ea4f30794b4b4b4f000a97 Merge: 0f1c037 f0bd3e9 Author: Stephen Kelly AuthorDate: Mon Feb 9 17:31:02 2015 -0500 Commit: CMake Topic Stage CommitDate: Mon Feb 9 17:31:02 2015 -0500 Merge topic 'doc-user-interaction' into next f0bd3e98 Remove reference to invalid section. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f0bd3e98c6aa5a899349a2740f0f19a4a29d2d16 commit f0bd3e98c6aa5a899349a2740f0f19a4a29d2d16 Author: Stephen Kelly AuthorDate: Mon Feb 9 23:30:27 2015 +0100 Commit: Stephen Kelly CommitDate: Mon Feb 9 23:30:27 2015 +0100 Remove reference to invalid section. diff --git a/Help/manual/cmake-user-interaction.7.rst b/Help/manual/cmake-user-interaction.7.rst index 81bb4c1..519c187 100644 --- a/Help/manual/cmake-user-interaction.7.rst +++ b/Help/manual/cmake-user-interaction.7.rst @@ -520,7 +520,7 @@ files. ``-t clean`` system. ``test`` Runs tests. This target is only automatically available if the CMake - files provide CTest-based tests. See also `Running Tests`_. + files provide CTest-based tests. ``install`` Installs the software. This target is only automatically available if the software defines install rules with the :command:`install` ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-user-interaction.7.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From kwrobot at kitware.com Tue Feb 10 00:01:10 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Tue, 10 Feb 2015 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1023-g7ab4fb5 Message-ID: <20150210050110.701D4AAC68@public.kitware.com> 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 7ab4fb5760a03cfcf1317351ebc75c7cfd91de96 (commit) from 9bbfe76d2c899fdbb54eb92716aea7282d2f3cce (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=7ab4fb5760a03cfcf1317351ebc75c7cfd91de96 commit 7ab4fb5760a03cfcf1317351ebc75c7cfd91de96 Author: Kitware Robot AuthorDate: Tue Feb 10 00:01:07 2015 -0500 Commit: Kitware Robot CommitDate: Tue Feb 10 00:01:07 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 6ac9705..03df29d 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150209) +set(CMake_VERSION_PATCH 20150210) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From nilsgladitz at gmail.com Tue Feb 10 06:27:50 2015 From: nilsgladitz at gmail.com (Nils Gladitz) Date: Tue, 10 Feb 2015 06:27:50 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1143-g6818ee6 Message-ID: <20150210112753.E8A35AA895@public.kitware.com> 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 6818ee67a5b1f81e3e5b7db36a49774d3dde8c99 (commit) via 007bab6b400d1da0b4afb6a3b13fbbbe7b533361 (commit) via 7ab4fb5760a03cfcf1317351ebc75c7cfd91de96 (commit) from d96c269d8e899f9318ea4f30794b4b4b4f000a97 (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=6818ee67a5b1f81e3e5b7db36a49774d3dde8c99 commit 6818ee67a5b1f81e3e5b7db36a49774d3dde8c99 Merge: d96c269 007bab6 Author: Nils Gladitz AuthorDate: Tue Feb 10 06:27:48 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 06:27:48 2015 -0500 Merge topic 'makefile-missing-comment' into next 007bab6b Makefile: Fix target bound custom command COMMENT output. 7ab4fb57 CMake Nightly Date Stamp http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=007bab6b400d1da0b4afb6a3b13fbbbe7b533361 commit 007bab6b400d1da0b4afb6a3b13fbbbe7b533361 Author: Nils Gladitz AuthorDate: Tue Feb 10 12:26:56 2015 +0100 Commit: Nils Gladitz CommitDate: Tue Feb 10 12:26:56 2015 +0100 Makefile: Fix target bound custom command COMMENT output. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index fbf2140..dfa6cc9 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -1132,7 +1132,7 @@ cmLocalUnixMakefileGenerator3 if(echo_comment) { const char* comment = ccg.GetComment(); - if(comment && !*comment) + if(comment && *comment) { this->AppendEcho(commands, comment, cmLocalUnixMakefileGenerator3::EchoGenerate); ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/cmLocalUnixMakefileGenerator3.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:27:34 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:27:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1145-g57c6574 Message-ID: <20150210142734.CAE82AA917@public.kitware.com> 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 57c6574b35a3d533e47cc8c2be131c46d2b30a99 (commit) via eeb2831b5f35af1ec8a65be343e754ff1c29550d (commit) from 6818ee67a5b1f81e3e5b7db36a49774d3dde8c99 (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=57c6574b35a3d533e47cc8c2be131c46d2b30a99 commit 57c6574b35a3d533e47cc8c2be131c46d2b30a99 Merge: 6818ee6 eeb2831 Author: Brad King AuthorDate: Tue Feb 10 09:27:33 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:27:33 2015 -0500 Merge topic 'makefile-missing-comment' into next eeb2831b Makefile: Fix regression in target-bound custom command COMMENT output http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=eeb2831b5f35af1ec8a65be343e754ff1c29550d commit eeb2831b5f35af1ec8a65be343e754ff1c29550d Author: Nils Gladitz AuthorDate: Tue Feb 10 12:26:56 2015 +0100 Commit: Brad King CommitDate: Tue Feb 10 09:22:05 2015 -0500 Makefile: Fix regression in target-bound custom command COMMENT output Fix a logic typo introduced by commit v3.1.0-rc1~781^2 (Generalize cmCustomCommandGenerator to more fields, 2014-03-10). diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 23513fa..280d4ab 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -1076,7 +1076,7 @@ cmLocalUnixMakefileGenerator3 if(echo_comment) { const char* comment = ccg.GetComment(); - if(comment && !*comment) + if(comment && *comment) { this->AppendEcho(commands, comment, cmLocalUnixMakefileGenerator3::EchoGenerate); ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:45 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:45 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1026-gf2ae132 Message-ID: <20150210143745.E23FCAADE2@public.kitware.com> 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 f2ae132d96e36b856f91da499800d58efc37ccf5 (commit) via 39e0aa5390964953e1462f0efed0058c172a0a26 (commit) via 892b854f57f48381751b79bfc52048ea57bb0376 (commit) from 7ab4fb5760a03cfcf1317351ebc75c7cfd91de96 (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=f2ae132d96e36b856f91da499800d58efc37ccf5 commit f2ae132d96e36b856f91da499800d58efc37ccf5 Merge: 7ab4fb5 39e0aa5 Author: Brad King AuthorDate: Tue Feb 10 09:37:44 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:44 2015 -0500 Merge topic 'FindBoost-per-config-libraries' 39e0aa53 Help: Add notes for topic 'FindBoost-per-config-libraries' 892b854f FindBoost: Search for debug and release libraries separately (#15364) ----------------------------------------------------------------------- Summary of changes: .../release/dev/FindBoost-per-config-libraries.rst | 5 + Modules/FindBoost.cmake | 156 ++++++++++++++------ 2 files changed, 112 insertions(+), 49 deletions(-) create mode 100644 Help/release/dev/FindBoost-per-config-libraries.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:47 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:47 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1030-g06e527b Message-ID: <20150210143747.AFEE0AA930@public.kitware.com> 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 06e527b36ccb86078e0caad2cd2962057b0c0558 (commit) via d2fe4c420370727c644432549b7a5ca9dfef3a28 (commit) via de63ff489d25095e41deae724f499ea3df05b6cf (commit) via 9924486f8a979bf937c8fd7749aaf37c1bd762e1 (commit) from f2ae132d96e36b856f91da499800d58efc37ccf5 (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=06e527b36ccb86078e0caad2cd2962057b0c0558 commit 06e527b36ccb86078e0caad2cd2962057b0c0558 Merge: f2ae132 d2fe4c4 Author: Brad King AuthorDate: Tue Feb 10 09:37:46 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:46 2015 -0500 Merge topic 'xcode-flags-per-language' d2fe4c42 cmGlobalXCodeGenerator: Rename variable 'lang' => 'llang' de63ff48 Xcode: Generate Intel Fortran compiler flags in project files 9924486f Xcode: Refactor generation of per-language compiler flags ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalXCodeGenerator.cxx | 155 +++++++++++++++++++------------------ 1 file changed, 79 insertions(+), 76 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:49 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:49 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1034-g80c0800 Message-ID: <20150210143750.005F9AADEA@public.kitware.com> 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 80c080052a123b71b69bf42fa99e01df621502bb (commit) via 1814cf744ce69ab97ce4a8fe8183b4d4f7f75cf4 (commit) via 54e900abfbbddde560a853355b448e1b86681741 (commit) via 393a45e2e1fa2f0d9657d4a686257d828cd918e4 (commit) from 06e527b36ccb86078e0caad2cd2962057b0c0558 (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=80c080052a123b71b69bf42fa99e01df621502bb commit 80c080052a123b71b69bf42fa99e01df621502bb Merge: 06e527b 1814cf7 Author: Brad King AuthorDate: Tue Feb 10 09:37:48 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:48 2015 -0500 Merge topic 'add-CheckFortranCompilerFlag' 1814cf74 Help: Add notes for topic 'add-CheckFortranCompilerFlag' 54e900ab CheckFortranCompilerFlag: Add test case 393a45e2 CheckFortranCompilerFlag: Add module to check Fortran flag existence ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-modules.7.rst | 1 + Help/module/CheckFortranCompilerFlag.rst | 1 + Help/release/dev/add-CheckFortranCompilerFlag.rst | 6 ++ Modules/CMakeCheckCompilerFlagCommonPatterns.cmake | 5 +- Modules/CheckFortranCompilerFlag.cmake | 66 ++++++++++++++++++++ Tests/FortranOnly/CMakeLists.txt | 7 +++ 6 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 Help/module/CheckFortranCompilerFlag.rst create mode 100644 Help/release/dev/add-CheckFortranCompilerFlag.rst create mode 100644 Modules/CheckFortranCompilerFlag.cmake hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:52 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:52 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1038-gdb9a2e8 Message-ID: <20150210143752.5EED0AADEB@public.kitware.com> 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 db9a2e8966256d50efcd593a20ed8a2b8b9cc05e (commit) via 0f870234febd9dba0df78e903b412ea19d681062 (commit) via cd408d93fdf347ff63a8062f75f1f4ee3e898b17 (commit) via 87be2e1427ba2b1b7697c9332487862917897dca (commit) from 80c080052a123b71b69bf42fa99e01df621502bb (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=db9a2e8966256d50efcd593a20ed8a2b8b9cc05e commit db9a2e8966256d50efcd593a20ed8a2b8b9cc05e Merge: 80c0800 0f87023 Author: Brad King AuthorDate: Tue Feb 10 09:37:50 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:50 2015 -0500 Merge topic 'no-global-setlocale' 0f870234 Merge branch 'backport-no-global-setlocale' into no-global-setlocale cd408d93 Add setlocale() calls around use of libarchive APIs (#14934, #15377) 87be2e14 Do not call setlocale() globally in CMake applications (#15377) ----------------------------------------------------------------------- Summary of changes: Source/CMakeLists.txt | 1 + Source/CPack/cpack.cxx | 2 -- Source/CursesDialog/ccmake.cxx | 3 --- Source/cmArchiveWrite.cxx | 4 ++++ Source/{cmCurl.h => cmLocale.h} | 22 ++++++++++++++++------ Source/cmSystemTools.cxx | 3 +++ Source/cmakemain.cxx | 2 -- Source/ctest.cxx | 3 --- Tests/CMakeLib/PseudoMemcheck/memtester.cxx.in | 2 -- 9 files changed, 24 insertions(+), 18 deletions(-) copy Source/{cmCurl.h => cmLocale.h} (67%) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:54 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:54 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1040-g1d6f4b6 Message-ID: <20150210143754.28070AADEC@public.kitware.com> 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 1d6f4b6fcc04620fd5f8e090381e8330dc2a4b23 (commit) via 220c427e84215b28ea1dd6de74e9dc6e81f7962e (commit) from db9a2e8966256d50efcd593a20ed8a2b8b9cc05e (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=1d6f4b6fcc04620fd5f8e090381e8330dc2a4b23 commit 1d6f4b6fcc04620fd5f8e090381e8330dc2a4b23 Merge: db9a2e8 220c427 Author: Brad King AuthorDate: Tue Feb 10 09:37:53 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:53 2015 -0500 Merge topic 'try_compile-quote-module-path' 220c427e try_compile: Quote the content of CMAKE_MODULE_PATH to allow for spaces ----------------------------------------------------------------------- Summary of changes: Source/cmCoreTryCompile.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:56 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:56 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1047-gc548ddc Message-ID: <20150210143756.7CDA4AADE3@public.kitware.com> 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 c548ddc1724c9c96bab04d2f51d1740360bcb737 (commit) via 63668954e002aa41ff0287aae22caeeacdc0c356 (commit) via ae775fe8041183030c69db1714c898b6e74f1284 (commit) via 7bb50e4a31ad5a8a58fe60885014d431a887b27f (commit) via c6ada8275b680e02f50a7aee1c02b0b184cadf83 (commit) via 8521fdf56e4908676c28c6bbdda3f1fb2284d3d7 (commit) via 69ac6d27555cd4819d0c7f40e4471c6f885e23ab (commit) from 1d6f4b6fcc04620fd5f8e090381e8330dc2a4b23 (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=c548ddc1724c9c96bab04d2f51d1740360bcb737 commit c548ddc1724c9c96bab04d2f51d1740360bcb737 Merge: 1d6f4b6 6366895 Author: Brad King AuthorDate: Tue Feb 10 09:37:55 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:55 2015 -0500 Merge topic 'makefile-progress-improvements' 63668954 Help: Add notes for topic 'makefile-progress-improvements' ae775fe8 Makefile: Change link step message color to bold green 7bb50e4a Makefile: Add progress to link step messages c6ada827 Makefile: Print all color escape sequences before newline 8521fdf5 Makefile: Fix output during parallel builds (#12991) 69ac6d27 bootstrap: Enable color Makefile output diff --cc Source/cmSystemTools.cxx index 6a7467f,f50d16c..d6f8d6b --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@@ -26,9 -26,7 +26,8 @@@ #include #if defined(CMAKE_BUILD_WITH_CMAKE) # include "cmArchiveWrite.h" +# include "cmLocale.h" # include - # include #endif #include #include ----------------------------------------------------------------------- Summary of changes: .../release/dev/makefile-progress-improvements.rst | 7 ++ Source/cmGlobalUnixMakefileGenerator3.cxx | 43 +++---- Source/cmLocalUnixMakefileGenerator3.cxx | 35 +++--- Source/cmLocalUnixMakefileGenerator3.h | 5 +- Source/cmMakefileExecutableTargetGenerator.cxx | 6 +- Source/cmMakefileLibraryTargetGenerator.cxx | 6 +- Source/cmMakefileTargetGenerator.cxx | 36 +++--- Source/cmMakefileTargetGenerator.h | 2 +- Source/cmSystemTools.cxx | 16 ++- Source/cmSystemTools.h | 2 - Source/cmcmd.cxx | 128 ++++++++++++-------- bootstrap | 9 +- 12 files changed, 170 insertions(+), 125 deletions(-) create mode 100644 Help/release/dev/makefile-progress-improvements.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:37:58 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:37:58 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1066-ge2619c1 Message-ID: <20150210143758.65427AAE5C@public.kitware.com> 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 e2619c13f727504b7368e0bf156c17112ee81568 (commit) via d8639733a42149ca1402dcae427f2142ab0cf037 (commit) via 803317aab622e4f12e7d342be5bbb4f16b088efd (commit) via 11093a03e064e1b7ef2d5db28845b5da7b934806 (commit) via 6cd2ee9524e501a4ef9dc481b469b91f8f022dc9 (commit) via 94e993a0c170cf84da9ddb026dfec9d8d99304e0 (commit) via 69dbe51b08bd6b4564d031d78034633f55ed4593 (commit) via 683fafea088c26658283da3bdf05277aaa1a3cee (commit) via 63f584b618b3381ad93c901f691191acd48329a7 (commit) via 74c4d9d27aece9a619eaab330ad23cf4b0de2b19 (commit) via 71d47115d009983665d6db4b25ea0ef40464f365 (commit) via 39622c995c189b4e22dfdc0e9aa29c8fce5eac17 (commit) via a7fcc148bdfa5e9f2c6901b0de8192f5aa043741 (commit) via d46c4f0727acb35963dfda579cd5c9efd63aab01 (commit) via d59913f001b6eb74f9baf8bad183dc83d5e7bcd1 (commit) via 3f3db74413fc6b0afe4aa484c0ada2d5271ef0ba (commit) via bd990c803b40e1532cab6b29c75414ca6f30e782 (commit) via 5fc53f1edb2d003595ef224b31a805c3af0dc0e6 (commit) via 421eadb45b48d40aa7d0b5e42a48df4ba94b9fc0 (commit) from c548ddc1724c9c96bab04d2f51d1740360bcb737 (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=e2619c13f727504b7368e0bf156c17112ee81568 commit e2619c13f727504b7368e0bf156c17112ee81568 Merge: c548ddc d863973 Author: Brad King AuthorDate: Tue Feb 10 09:37:57 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:37:57 2015 -0500 Merge topic 'use-algorithms' d8639733 cmSystemTools: Remove unnecessary comparison. 803317aa cmSystemTools: Early return if size makes later comparison false. 11093a03 Replace temporary bool by inlining warning condition. 6cd2ee95 Replace loop with member algorithm. 94e993a0 cmComputeLinkDepends: Remove temporary iterator copy. 69dbe51b Replace loop with algorithm. 683fafea Replace a loop with std::transform. 63f584b6 Replace while loop with member insert. 74c4d9d2 Take a size check outside of an inner loop. 71d47115 Use insert member instead of back_inserter. 39622c99 Convert while loop to member insert. a7fcc148 Convert loop to algorithm. d46c4f07 Extract a prefix variable from loop. d59913f0 Take computation out of loop. 3f3db744 cmMakefile: Remove ExpandSourceListArguments. bd990c80 Remove use of ExpandSourceListArguments. ... ----------------------------------------------------------------------- Summary of changes: Source/CPack/OSXScriptLauncher.cxx | 8 ++++---- Source/CPack/cmCPackNSISGenerator.cxx | 2 +- Source/CTest/cmCTestCoverageHandler.cxx | 4 ++-- Source/QtDialog/CMakeSetup.cxx | 6 +++--- Source/cmAddLibraryCommand.cxx | 6 +----- Source/cmCPluginAPI.cxx | 7 +++---- Source/cmComputeLinkDepends.cxx | 7 +++---- Source/cmFLTKWrapUICommand.cxx | 7 ++----- Source/cmFileCommand.cxx | 4 ++-- Source/cmFindLibraryCommand.cxx | 4 ++-- Source/cmInstallFilesCommand.cxx | 7 ++----- Source/cmLocalGenerator.cxx | 33 +++++++++++------------------- Source/cmLocalUnixMakefileGenerator3.cxx | 14 +++++-------- Source/cmMakefile.cxx | 13 ------------ Source/cmMakefile.h | 11 ---------- Source/cmQTWrapCPPCommand.cxx | 10 +++------ Source/cmQTWrapUICommand.cxx | 10 +++------ Source/cmSetTargetPropertiesCommand.cxx | 15 ++++---------- Source/cmSetTestsPropertiesCommand.cxx | 15 ++++---------- Source/cmSystemTools.cxx | 8 ++++++-- Source/cmTarget.cxx | 13 ++++-------- Source/cmXMLSafe.cxx | 4 ++-- Source/cmXMLSafe.h | 4 ++-- Source/cmake.cxx | 9 ++++---- 24 files changed, 74 insertions(+), 147 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:38:22 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:38:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1153-g2681102 Message-ID: <20150210143822.4CFD5AADF4@public.kitware.com> 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 2681102e08a5a1f3615ee0c7717e7569ee460e25 (commit) via e2619c13f727504b7368e0bf156c17112ee81568 (commit) via c548ddc1724c9c96bab04d2f51d1740360bcb737 (commit) via 1d6f4b6fcc04620fd5f8e090381e8330dc2a4b23 (commit) via db9a2e8966256d50efcd593a20ed8a2b8b9cc05e (commit) via 80c080052a123b71b69bf42fa99e01df621502bb (commit) via 06e527b36ccb86078e0caad2cd2962057b0c0558 (commit) via f2ae132d96e36b856f91da499800d58efc37ccf5 (commit) from 57c6574b35a3d533e47cc8c2be131c46d2b30a99 (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=2681102e08a5a1f3615ee0c7717e7569ee460e25 commit 2681102e08a5a1f3615ee0c7717e7569ee460e25 Merge: 57c6574 e2619c1 Author: Brad King AuthorDate: Tue Feb 10 09:38:13 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 09:38:13 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:42:19 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:42:19 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1155-g4267f43 Message-ID: <20150210144219.46446499E@public.kitware.com> 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 4267f43d15cd42040773c620781ab8f7926f343b (commit) via 3d99355b11b2509f4e16ddfd71373538410364e7 (commit) from 2681102e08a5a1f3615ee0c7717e7569ee460e25 (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=4267f43d15cd42040773c620781ab8f7926f343b commit 4267f43d15cd42040773c620781ab8f7926f343b Merge: 2681102 3d99355 Author: Brad King AuthorDate: Tue Feb 10 09:42:18 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:42:18 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' into next 3d99355b CPackRPM: Fix recognition of absolute relocation paths http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3d99355b11b2509f4e16ddfd71373538410364e7 commit 3d99355b11b2509f4e16ddfd71373538410364e7 Author: Domen Vrankar AuthorDate: Sun Feb 8 20:03:53 2015 +0100 Commit: Brad King CommitDate: Tue Feb 10 09:41:37 2015 -0500 CPackRPM: Fix recognition of absolute relocation paths Fix typo in logic added by commit 3ec02547 (CPackRPM: Allow multiple path relocation prefixes for one package, 2015-01-21). diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index 43e3fe0..214d655 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -442,7 +442,7 @@ function(cpack_rpm_prepare_relocation_paths) # set other path prefixes foreach(RELOCATION_PATH ${RPM_RELOCATION_PATHS}) - if(IS_ABSOLUTE "${RELOCATE_PATH}") + if(IS_ABSOLUTE "${RELOCATION_PATH}") set(PREPARED_RELOCATION_PATH "${RELOCATION_PATH}") else() set(PREPARED_RELOCATION_PATH "${PATH_PREFIX}/${RELOCATION_PATH}") ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:42:22 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:42:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1068-geb8acf8 Message-ID: <20150210144222.678B349CC@public.kitware.com> 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 eb8acf85d0e49c8b5f5e291cab043028dd979fac (commit) via 3d99355b11b2509f4e16ddfd71373538410364e7 (commit) from e2619c13f727504b7368e0bf156c17112ee81568 (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=eb8acf85d0e49c8b5f5e291cab043028dd979fac commit eb8acf85d0e49c8b5f5e291cab043028dd979fac Merge: e2619c1 3d99355 Author: Brad King AuthorDate: Tue Feb 10 09:42:21 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:42:21 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' 3d99355b CPackRPM: Fix recognition of absolute relocation paths ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:43:01 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:43:01 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1157-gc2edefc Message-ID: <20150210144301.A94F749D5@public.kitware.com> 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 c2edefc15ec1f2c13c64ac0b999caf1fd23f029f (commit) via eb8acf85d0e49c8b5f5e291cab043028dd979fac (commit) from 4267f43d15cd42040773c620781ab8f7926f343b (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=c2edefc15ec1f2c13c64ac0b999caf1fd23f029f commit c2edefc15ec1f2c13c64ac0b999caf1fd23f029f Merge: 4267f43 eb8acf8 Author: Brad King AuthorDate: Tue Feb 10 09:42:50 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 09:42:50 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:48:39 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:48:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1073-gd46e1e3 Message-ID: <20150210144839.8403DAA1CB@public.kitware.com> 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 d46e1e3f0fa386638b5a50b45783f4ec4d94bf2c (commit) via 0b8d9581c0a651f36fc5a2d0b996fd006152ce50 (commit) via 52340b904d2eed7f5f337c255486017626b01593 (commit) via 8772420e2ff1da38903162ce8e9335edbe1c3dcd (commit) via e1ce81a2cb66c70d806adf755d9ee273687ca962 (commit) from eb8acf85d0e49c8b5f5e291cab043028dd979fac (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:48:39 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:48:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1163-gf69ce95 Message-ID: <20150210144839.A1B3EAA1CE@public.kitware.com> 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 f69ce957afe5631e73f2130c725474e651813623 (commit) via d46e1e3f0fa386638b5a50b45783f4ec4d94bf2c (commit) via 0b8d9581c0a651f36fc5a2d0b996fd006152ce50 (commit) via 52340b904d2eed7f5f337c255486017626b01593 (commit) via 8772420e2ff1da38903162ce8e9335edbe1c3dcd (commit) via e1ce81a2cb66c70d806adf755d9ee273687ca962 (commit) from c2edefc15ec1f2c13c64ac0b999caf1fd23f029f (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=f69ce957afe5631e73f2130c725474e651813623 commit f69ce957afe5631e73f2130c725474e651813623 Merge: c2edefc d46e1e3 Author: Brad King AuthorDate: Tue Feb 10 09:48:23 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 09:48:23 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:48:39 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:48:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.1.2-1022-g0b8d958 Message-ID: <20150210144839.DF3CBAA1E5@public.kitware.com> 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, release has been updated via 0b8d9581c0a651f36fc5a2d0b996fd006152ce50 (commit) via 3d99355b11b2509f4e16ddfd71373538410364e7 (commit) via 8772420e2ff1da38903162ce8e9335edbe1c3dcd (commit) via 0f870234febd9dba0df78e903b412ea19d681062 (commit) via cd408d93fdf347ff63a8062f75f1f4ee3e898b17 (commit) via 87be2e1427ba2b1b7697c9332487862917897dca (commit) from cb01f1517051b577d571e8fd21d210ef303f56c9 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 2 +- Source/CMakeLists.txt | 1 + Source/CPack/cpack.cxx | 2 -- Source/CursesDialog/ccmake.cxx | 3 --- Source/cmArchiveWrite.cxx | 4 ++++ Source/{cmCurl.h => cmLocale.h} | 22 ++++++++++++++++------ Source/cmSystemTools.cxx | 3 +++ Source/cmakemain.cxx | 2 -- Source/ctest.cxx | 3 --- Tests/CMakeLib/PseudoMemcheck/memtester.cxx.in | 2 -- 10 files changed, 25 insertions(+), 19 deletions(-) copy Source/{cmCurl.h => cmLocale.h} (67%) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 09:56:13 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 09:56:13 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1165-g5b19ac5 Message-ID: <20150210145613.52E4BAAC7A@public.kitware.com> 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 5b19ac52bb4db11dd932c2f522cdda25a19a2ba3 (commit) via e5ef9271a1bb1a0779132beba4cf2b0bae13d6cc (commit) from f69ce957afe5631e73f2130c725474e651813623 (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=5b19ac52bb4db11dd932c2f522cdda25a19a2ba3 commit 5b19ac52bb4db11dd932c2f522cdda25a19a2ba3 Merge: f69ce95 e5ef927 Author: Brad King AuthorDate: Tue Feb 10 09:56:12 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 09:56:12 2015 -0500 Merge topic 'FindRuby-windows-x64' into next e5ef9271 FindRuby: Fix finding 64-bit Ruby on Windows http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e5ef9271a1bb1a0779132beba4cf2b0bae13d6cc commit e5ef9271a1bb1a0779132beba4cf2b0bae13d6cc Author: Michael Smith AuthorDate: Fri Feb 6 12:21:51 2015 -0800 Commit: Brad King CommitDate: Tue Feb 10 09:54:21 2015 -0500 FindRuby: Fix finding 64-bit Ruby on Windows Ruby 2.0.0 and 2.1.5 have 64-bit binaries for Windows, with "x64-" prefix. diff --git a/Modules/FindRuby.cmake b/Modules/FindRuby.cmake index 4be16c9..e5ea210 100644 --- a/Modules/FindRuby.cmake +++ b/Modules/FindRuby.cmake @@ -234,11 +234,16 @@ if(WIN32) set( _RUBY_MSVC_RUNTIME "90" ) endif() + set(_RUBY_ARCH_PREFIX "") + if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_RUBY_ARCH_PREFIX "x64-") + endif() + list(APPEND _RUBY_POSSIBLE_LIB_NAMES - "msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}" - "msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}-static" - "msvcrt-ruby${_RUBY_NODOT_VERSION}" - "msvcrt-ruby${_RUBY_NODOT_VERSION}-static" ) + "${_RUBY_ARCH_PREFIX}msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}" + "${_RUBY_ARCH_PREFIX}msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}-static" + "${_RUBY_ARCH_PREFIX}msvcrt-ruby${_RUBY_NODOT_VERSION}" + "${_RUBY_ARCH_PREFIX}msvcrt-ruby${_RUBY_NODOT_VERSION}-static" ) endif() find_library(RUBY_LIBRARY NAMES ${_RUBY_POSSIBLE_LIB_NAMES} HINTS ${RUBY_POSSIBLE_LIB_DIR} ) ----------------------------------------------------------------------- Summary of changes: Modules/FindRuby.cmake | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 10:07:28 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 10:07:28 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1167-g0f422f3 Message-ID: <20150210150728.D7673AAF24@public.kitware.com> 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 0f422f38cb7532af36b6d0a080dcf5ef4ff77748 (commit) via 85fd62ee91b7a8dcb929eee36424886bd0b59592 (commit) from 5b19ac52bb4db11dd932c2f522cdda25a19a2ba3 (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=0f422f38cb7532af36b6d0a080dcf5ef4ff77748 commit 0f422f38cb7532af36b6d0a080dcf5ef4ff77748 Merge: 5b19ac5 85fd62e Author: Brad King AuthorDate: Tue Feb 10 10:07:28 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 10:07:28 2015 -0500 Merge topic 'bootstrap-sphinx-qthelp' into next 85fd62ee bootstrap: Add --sphinx-qthelp option to enable qthelp doc generation http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=85fd62ee91b7a8dcb929eee36424886bd0b59592 commit 85fd62ee91b7a8dcb929eee36424886bd0b59592 Author: Nuno Sucena Almeida AuthorDate: Sat Feb 7 17:23:28 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 10:03:10 2015 -0500 bootstrap: Add --sphinx-qthelp option to enable qthelp doc generation diff --git a/bootstrap b/bootstrap index a88eb6a..e7d0496 100755 --- a/bootstrap +++ b/bootstrap @@ -72,6 +72,7 @@ cmake_bootstrap_qt_gui="" cmake_bootstrap_qt_qmake="" cmake_sphinx_man="" cmake_sphinx_html="" +cmake_sphinx_qthelp="" cmake_sphinx_build="" # Determine whether this is a Cygwin environment. @@ -410,6 +411,7 @@ Configuration: --sphinx-man build man pages with Sphinx --sphinx-html build html help with Sphinx + --sphinx-qthelp build qch help with Sphinx --sphinx-build= use as the sphinx-build executable Directory and file names: @@ -646,6 +648,7 @@ while test $# != 0; do --qt-qmake=*) cmake_bootstrap_qt_qmake=`cmake_arg "$1"` ;; --sphinx-man) cmake_sphinx_man="1" ;; --sphinx-html) cmake_sphinx_html="1" ;; + --sphinx-qthelp) cmake_sphinx_qthelp="1" ;; --sphinx-build=*) cmake_sphinx_build=`cmake_arg "$1"` ;; --help) cmake_usage ;; --version) cmake_version_display ; exit 2 ;; @@ -1661,6 +1664,11 @@ if [ "x${cmake_sphinx_html}" != "x" ]; then set (SPHINX_HTML "'"${cmake_sphinx_html}"'" CACHE FILEPATH "Build html help with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi +if [ "x${cmake_sphinx_qthelp}" != "x" ]; then + echo ' +set (SPHINX_QTHELP "'"${cmake_sphinx_qthelp}"'" CACHE FILEPATH "Build qch help with Sphinx" FORCE) +' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" +fi if [ "x${cmake_sphinx_build}" != "x" ]; then echo ' set (SPHINX_EXECUTABLE "'"${cmake_sphinx_build}"'" CACHE FILEPATH "Location of Qt sphinx-build" FORCE) ----------------------------------------------------------------------- Summary of changes: bootstrap | 8 ++++++++ 1 file changed, 8 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 10:09:48 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 10:09:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1077-g2fd44b0 Message-ID: <20150210150948.7930F25E8@public.kitware.com> 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 2fd44b082b0a8e546c73d921f9d8264a668c3b78 (commit) via c0d8e715915f65196353c09d86d4d34fe100437f (commit) via 68d29f519047aeef92a0ab8fef531010c311efaa (commit) via 1c3918ff0278715e2a4ec5929f75f7812003ee97 (commit) from d46e1e3f0fa386638b5a50b45783f4ec4d94bf2c (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=2fd44b082b0a8e546c73d921f9d8264a668c3b78 commit 2fd44b082b0a8e546c73d921f9d8264a668c3b78 Merge: d46e1e3 c0d8e71 Author: Brad King AuthorDate: Tue Feb 10 10:09:47 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 10:09:47 2015 -0500 Merge topic 'test-RunCMake-updates' c0d8e715 RunCMake: Allow specifying the stderr file for a test. 68d29f51 RunCMake: Allow specifying the directory to run tests in. 1c3918ff RunCMake: Remove unneeded files. ----------------------------------------------------------------------- Summary of changes: Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt | 1 - .../RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt | 1 - .../CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt | 1 - .../CMP0022-NOWARN-static-link_libraries-stderr.txt | 1 - .../RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt | 1 - Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt | 1 - .../CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt | 1 - .../CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt | 1 - Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt | 1 - .../RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt | 1 - Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt | 1 - Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt | 1 - .../CMP0040/CMP0040-NEW-existing-target-stderr.txt | 1 - .../CMP0040/CMP0040-OLD-existing-target-stderr.txt | 1 - .../CMP0040/CMP0040-OLD-missing-target-stderr.txt | 1 - Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt | 1 - Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt | 1 - Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt | 1 - .../CMP0046-NEW-existing-dependency-stderr.txt | 1 - .../CMP0046-OLD-existing-dependency-stderr.txt | 1 - .../CMP0046/CMP0046-OLD-missing-dependency-stderr.txt | 1 - Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt | 1 - Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt | 1 - .../CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt | 1 - .../CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt | 1 - Tests/RunCMake/CMakeLists.txt | 17 ++++++++++++++--- .../LinkImplementationFeatureCycleSolved-stderr.txt | 1 - .../DisallowedCommands/CMP0029-OLD-stderr.txt | 1 - .../File_Generate/CarryPermissions-stderr.txt | 1 - .../RunCMake/File_Generate/GenerateSource-stderr.txt | 1 - .../OutputNameMatchesOtherSources-stderr.txt | 1 - Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt | 1 - .../File_Generate/WriteIfDifferent-stderr.txt | 1 - .../ValidTarget-TARGET_PDB_FILE-stderr.txt | 1 - Tests/RunCMake/RunCMake.cmake | 5 ++++- Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt | 1 - .../LinkImplementationCycle3-stderr.txt | 1 - .../TargetSources/CMP0026-LOCATION-stderr.txt | 1 - .../BinInInstallPrefix-CMP0052-OLD-stderr.txt | 1 - .../include_directories/DirInInstallPrefix-stderr.txt | 1 - .../InstallPrefixInInterface-stderr.txt | 1 - .../InstallToPrefixInSrcDirInSource-stderr.txt | 1 - .../InstallToPrefixInSrcDirOutOfSource-stderr.txt | 1 - .../SrcInInstallPrefix-CMP0052-OLD-stderr.txt | 1 - .../include_directories/export-NOWARN-stderr.txt | 1 - .../install/SkipInstallRulesNoWarning1-stderr.txt | 1 - .../install/SkipInstallRulesNoWarning2-stderr.txt | 1 - .../RunCMake/interface_library/genex_link-stderr.txt | 1 - .../interface_library/no_shared_libs-stderr.txt | 1 - Tests/RunCMake/message/nomessage-stderr.txt | 1 - .../no_install_prefix/with_install_prefix-stderr.txt | 1 - Tests/RunCMake/project/CMP0048-NEW-stderr.txt | 1 - 59 files changed, 18 insertions(+), 61 deletions(-) delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-exe-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-shared-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-link_libraries-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-NOWARN-static-stderr.txt delete mode 100644 Tests/RunCMake/CMP0022/CMP0022-export-exe-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-CONFIG-LOCATION-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-IMPORTED-stderr.txt delete mode 100644 Tests/RunCMake/CMP0026/CMP0026-LOCATION-CONFIG-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-iface-stderr.txt delete mode 100644 Tests/RunCMake/CMP0028/CMP0028-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-reserved-stderr.txt delete mode 100644 Tests/RunCMake/CMP0037/CMP0037-OLD-space-stderr.txt delete mode 100644 Tests/RunCMake/CMP0038/CMP0038-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0039/CMP0039-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-NEW-existing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-existing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0040/CMP0040-OLD-missing-target-stderr.txt delete mode 100644 Tests/RunCMake/CMP0041/CMP0041-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0041/CMP0041-tid-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0042/CMP0042-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0042/CMP0042-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0043/CMP0043-NEW-stderr.txt delete mode 100644 Tests/RunCMake/CMP0043/CMP0043-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0045/CMP0045-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-NEW-existing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-existing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0046/CMP0046-OLD-missing-dependency-stderr.txt delete mode 100644 Tests/RunCMake/CMP0049/CMP0049-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0050/CMP0050-OLD-stderr.txt delete mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Out-of-Scope-stderr.txt delete mode 100644 Tests/RunCMake/CMP0055/CMP0055-OLD-Reject-Arguments-stderr.txt delete mode 100644 Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved-stderr.txt delete mode 100644 Tests/RunCMake/DisallowedCommands/CMP0029-OLD-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/CarryPermissions-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/GenerateSource-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/OutputNameMatchesOtherSources-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/ReRunCMake-stderr.txt delete mode 100644 Tests/RunCMake/File_Generate/WriteIfDifferent-stderr.txt delete mode 100644 Tests/RunCMake/GeneratorExpression/ValidTarget-TARGET_PDB_FILE-stderr.txt delete mode 100644 Tests/RunCMake/Syntax/ParenNoSpace2-stderr.txt delete mode 100644 Tests/RunCMake/TargetPropertyGeneratorExpressions/LinkImplementationCycle3-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/CMP0026-LOCATION-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-OLD-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallPrefixInInterface-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirInSource-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/InstallToPrefixInSrcDirOutOfSource-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-OLD-stderr.txt delete mode 100644 Tests/RunCMake/include_directories/export-NOWARN-stderr.txt delete mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning1-stderr.txt delete mode 100644 Tests/RunCMake/install/SkipInstallRulesNoWarning2-stderr.txt delete mode 100644 Tests/RunCMake/interface_library/genex_link-stderr.txt delete mode 100644 Tests/RunCMake/interface_library/no_shared_libs-stderr.txt delete mode 100644 Tests/RunCMake/message/nomessage-stderr.txt delete mode 100644 Tests/RunCMake/no_install_prefix/with_install_prefix-stderr.txt delete mode 100644 Tests/RunCMake/project/CMP0048-NEW-stderr.txt hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 10:10:10 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 10:10:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1169-g5367c0e Message-ID: <20150210151010.8C74A49B8@public.kitware.com> 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 5367c0e4781644a33ce9163666a626e50efffa2c (commit) via 2fd44b082b0a8e546c73d921f9d8264a668c3b78 (commit) from 0f422f38cb7532af36b6d0a080dcf5ef4ff77748 (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=5367c0e4781644a33ce9163666a626e50efffa2c commit 5367c0e4781644a33ce9163666a626e50efffa2c Merge: 0f422f3 2fd44b0 Author: Brad King AuthorDate: Tue Feb 10 10:10:02 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 10:10:02 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 10:35:26 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 10:35:26 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1171-ga06bd9f Message-ID: <20150210153526.99217AB0D2@public.kitware.com> 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 a06bd9fdc9c2ac5a921f6836454fc13c7523d060 (commit) via f3e9eeedf43f783c02b2a2a10fc0e632eaf7cfd0 (commit) from 5367c0e4781644a33ce9163666a626e50efffa2c (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=a06bd9fdc9c2ac5a921f6836454fc13c7523d060 commit a06bd9fdc9c2ac5a921f6836454fc13c7523d060 Merge: 5367c0e f3e9eee Author: Brad King AuthorDate: Tue Feb 10 10:35:25 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 10:35:25 2015 -0500 Merge topic 'try_compile-shorter-names' into next f3e9eeed try_compile: Use shorter test executable name with consistent length http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f3e9eeedf43f783c02b2a2a10fc0e632eaf7cfd0 commit f3e9eeedf43f783c02b2a2a10fc0e632eaf7cfd0 Author: Brad King AuthorDate: Tue Feb 10 10:21:55 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 10:28:41 2015 -0500 try_compile: Use shorter test executable name with consistent length Since commit v2.8.8~176^2 (try_compile: Use random executable file name, 2012-02-13) the length of the test executable name in generated try_compile projects has been longer and unpredictable. With Visual Studio on windows, the tools try to create paths like: CMakeFiles/CMakeTmp/$tgt.dir/Debug/$tgt.tlog/$tgt.lastbuildstate With the target name repeated up to 3 times, we must make it short and of consistent length to avoid overrunning the 260 character limit imposed by VS tools. diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx index c414553..d9369e6 100644 --- a/Source/cmCoreTryCompile.cxx +++ b/Source/cmCoreTryCompile.cxx @@ -383,8 +383,8 @@ int cmCoreTryCompile::TryCompileCode(std::vector const& argv) /* Use a random file name to avoid rapid creation and deletion of the same executable name (some filesystems fail on that). */ - sprintf(targetNameBuf, "cmTryCompileExec%u", - cmSystemTools::RandomSeed()); + sprintf(targetNameBuf, "cmTC_%05x", + cmSystemTools::RandomSeed() & 0xFFFFF); targetName = targetNameBuf; if (!targets.empty()) ----------------------------------------------------------------------- Summary of changes: Source/cmCoreTryCompile.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 11:00:39 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 11:00:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1173-gfa1af50 Message-ID: <20150210160039.BE39AAB225@public.kitware.com> 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 fa1af50e9bbe0506da14019b82cbc86fd1333e02 (commit) via a27c13f4cad2247833d048ec5e334861943fd4d9 (commit) from a06bd9fdc9c2ac5a921f6836454fc13c7523d060 (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=fa1af50e9bbe0506da14019b82cbc86fd1333e02 commit fa1af50e9bbe0506da14019b82cbc86fd1333e02 Merge: a06bd9f a27c13f Author: Brad King AuthorDate: Tue Feb 10 11:00:39 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 11:00:39 2015 -0500 Merge topic 'BundleUtilities-install_name_tool-exit' into next a27c13f4 BundleUtilities: Teach fixup_bundle to check install_name_tool result http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a27c13f4cad2247833d048ec5e334861943fd4d9 commit a27c13f4cad2247833d048ec5e334861943fd4d9 Author: Ruslan Baratov AuthorDate: Mon Feb 9 20:09:41 2015 +0300 Commit: Brad King CommitDate: Tue Feb 10 11:00:27 2015 -0500 BundleUtilities: Teach fixup_bundle to check install_name_tool result Fail explicitly if install_name_tool fails to make an update we need. diff --git a/Modules/BundleUtilities.cmake b/Modules/BundleUtilities.cmake index fee0a7c..ce90f30 100644 --- a/Modules/BundleUtilities.cmake +++ b/Modules/BundleUtilities.cmake @@ -776,7 +776,12 @@ function(fixup_bundle_item resolved_embedded_item exepath dirs) # to install_name_tool: # if(changes) - execute_process(COMMAND install_name_tool ${changes} "${resolved_embedded_item}") + set(cmd install_name_tool ${changes} "${resolved_embedded_item}") + execute_process(COMMAND ${cmd} RESULT_VARIABLE install_name_tool_result) + if(NOT install_name_tool_result EQUAL 0) + string(REPLACE ";" "' '" msg "'${cmd}'") + message(FATAL_ERROR "Command failed:\n ${msg}") + endif() endif() endfunction() ----------------------------------------------------------------------- Summary of changes: Modules/BundleUtilities.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From zack.galbreath at kitware.com Tue Feb 10 11:10:03 2015 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Tue, 10 Feb 2015 11:10:03 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1175-g8926a09 Message-ID: <20150210161003.902B321F8@public.kitware.com> 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 8926a09dd37e32502f0ed82b5b84dda9ce686d82 (commit) via 248d74165ed6f18d130e13a19fa8a866d81fabe8 (commit) from fa1af50e9bbe0506da14019b82cbc86fd1333e02 (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=8926a09dd37e32502f0ed82b5b84dda9ce686d82 commit 8926a09dd37e32502f0ed82b5b84dda9ce686d82 Merge: fa1af50 248d741 Author: Zack Galbreath AuthorDate: Tue Feb 10 11:10:02 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 11:10:02 2015 -0500 Merge topic 'fix_timeout_docs' into next 248d7416 fix the name of the referenced variable. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=248d74165ed6f18d130e13a19fa8a866d81fabe8 commit 248d74165ed6f18d130e13a19fa8a866d81fabe8 Author: Zack Galbreath AuthorDate: Tue Feb 10 11:07:26 2015 -0500 Commit: Zack Galbreath CommitDate: Tue Feb 10 11:07:26 2015 -0500 fix the name of the referenced variable. It's CTEST_TEST_TIMEOUT, not CTEST_TESTING_TIMEOUT. This change also adds a link to the variable's documentation. diff --git a/Help/prop_test/TIMEOUT.rst b/Help/prop_test/TIMEOUT.rst index 0b247b8..d1cb90d 100644 --- a/Help/prop_test/TIMEOUT.rst +++ b/Help/prop_test/TIMEOUT.rst @@ -6,4 +6,4 @@ How many seconds to allow for this test. This property if set will limit a test to not take more than the specified number of seconds to run. If it exceeds that the test process will be killed and ctest will move to the next test. This -setting takes precedence over CTEST_TESTING_TIMEOUT. +setting takes precedence over :variable:`CTEST_TEST_TIMEOUT`. ----------------------------------------------------------------------- Summary of changes: Help/prop_test/TIMEOUT.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 12:56:09 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 12:56:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1081-gcbffbf7 Message-ID: <20150210175609.890D6AAC91@public.kitware.com> 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 cbffbf7437ea2d571e26bedee032c23be9347d94 (commit) via af65da0aa97f20947f93ddcf9872d23d671f699b (commit) via e848cc5074c402fe38bb19c831f0b71dc34ece73 (commit) via 5fea6898346f30119b7f5272033b0713aca4c389 (commit) from 2fd44b082b0a8e546c73d921f9d8264a668c3b78 (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=cbffbf7437ea2d571e26bedee032c23be9347d94 commit cbffbf7437ea2d571e26bedee032c23be9347d94 Merge: 2fd44b0 af65da0 Author: Brad King AuthorDate: Tue Feb 10 12:56:08 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 12:56:08 2015 -0500 Merge topic 'cmStandardIncludes-cleanup' af65da0a cmStandardIncludes: Remove list include. e848cc50 cmStandardIncludes: Remove deque include. 5fea6898 cmStandardIncludes: Remove some VS6 workarounds. ----------------------------------------------------------------------- Summary of changes: Source/CPack/cmCPackGenerator.cxx | 1 + Source/CTest/cmCTestBuildHandler.h | 2 ++ Source/CTest/cmCTestGlobalVC.h | 2 ++ Source/CTest/cmCTestMultiProcessHandler.cxx | 1 + Source/CTest/cmCTestSVN.h | 2 ++ Source/cmCommands.h | 2 ++ Source/cmConditionEvaluator.h | 2 ++ Source/cmFileLockPool.h | 2 ++ Source/cmMakefile.cxx | 1 + Source/cmMakefile.h | 1 + Source/cmQtAutoGenerators.h | 2 ++ Source/cmStandardIncludes.h | 12 ------------ Source/cmake.cxx | 2 ++ 13 files changed, 20 insertions(+), 12 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 12:56:29 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 12:56:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1177-ga027292 Message-ID: <20150210175629.5B6E5AACA4@public.kitware.com> 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 a0272926fcd2ff20b26092c789dd6ae9538fc5e5 (commit) via cbffbf7437ea2d571e26bedee032c23be9347d94 (commit) from 8926a09dd37e32502f0ed82b5b84dda9ce686d82 (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=a0272926fcd2ff20b26092c789dd6ae9538fc5e5 commit a0272926fcd2ff20b26092c789dd6ae9538fc5e5 Merge: 8926a09 cbffbf7 Author: Brad King AuthorDate: Tue Feb 10 12:56:22 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 12:56:22 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 12:59:00 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 12:59:00 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1179-g17fef0d Message-ID: <20150210175900.C5F12AAD14@public.kitware.com> 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 17fef0dae571e0f745c3dd14facd90e68cf8c9db (commit) via 56cb4a6c3a71f1a3d3e0dccbdc593bc58d76c5ee (commit) from a0272926fcd2ff20b26092c789dd6ae9538fc5e5 (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=17fef0dae571e0f745c3dd14facd90e68cf8c9db commit 17fef0dae571e0f745c3dd14facd90e68cf8c9db Merge: a027292 56cb4a6 Author: Brad King AuthorDate: Tue Feb 10 12:59:00 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 12:59:00 2015 -0500 Merge topic 'fix_timeout_docs' into next 56cb4a6c Help: Fix variable reference in TIMEOUT test property docs http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=56cb4a6c3a71f1a3d3e0dccbdc593bc58d76c5ee commit 56cb4a6c3a71f1a3d3e0dccbdc593bc58d76c5ee Author: Zack Galbreath AuthorDate: Tue Feb 10 11:07:26 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 12:58:01 2015 -0500 Help: Fix variable reference in TIMEOUT test property docs Link to 'CTEST_TEST_TIMEOUT', not 'CTEST_TESTING_TIMEOUT'. diff --git a/Help/prop_test/TIMEOUT.rst b/Help/prop_test/TIMEOUT.rst index 0b247b8..d1cb90d 100644 --- a/Help/prop_test/TIMEOUT.rst +++ b/Help/prop_test/TIMEOUT.rst @@ -6,4 +6,4 @@ How many seconds to allow for this test. This property if set will limit a test to not take more than the specified number of seconds to run. If it exceeds that the test process will be killed and ctest will move to the next test. This -setting takes precedence over CTEST_TESTING_TIMEOUT. +setting takes precedence over :variable:`CTEST_TEST_TIMEOUT`. ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Feb 10 13:01:41 2015 From: brad.king at kitware.com (Brad King) Date: Tue, 10 Feb 2015 13:01:41 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1181-g5e36f8e Message-ID: <20150210180141.8B7DCAAD4A@public.kitware.com> 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 5e36f8ee1ebf4538146f9f0cb5974426eac14249 (commit) via 918bf7fa136b79ccd4a572214b803e94a4fa5e69 (commit) from 17fef0dae571e0f745c3dd14facd90e68cf8c9db (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=5e36f8ee1ebf4538146f9f0cb5974426eac14249 commit 5e36f8ee1ebf4538146f9f0cb5974426eac14249 Merge: 17fef0d 918bf7f Author: Brad King AuthorDate: Tue Feb 10 13:01:40 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 13:01:40 2015 -0500 Merge topic 'doc-user-interaction' into next 918bf7fa fixup! Help: Add a new user manual for user interaction. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=918bf7fa136b79ccd4a572214b803e94a4fa5e69 commit 918bf7fa136b79ccd4a572214b803e94a4fa5e69 Author: Brad King AuthorDate: Tue Feb 10 13:01:20 2015 -0500 Commit: Brad King CommitDate: Tue Feb 10 13:01:20 2015 -0500 fixup! Help: Add a new user manual for user interaction. diff --git a/Help/manual/cmake-user-interaction.7.rst b/Help/manual/cmake-user-interaction.7.rst index 519c187..85e506e 100644 --- a/Help/manual/cmake-user-interaction.7.rst +++ b/Help/manual/cmake-user-interaction.7.rst @@ -25,7 +25,8 @@ to their system. Generated buildsystems should generally be treated as read-only. The CMake files as a primary artifact should completely specify the buildsystem and -there should be no reason to populate properties in an IDE for example. +there should be no reason to populate properties manually in an IDE for +example. The features and user interfaces described in this manual are available for all CMake-based build systems by virtue of providing CMake files. @@ -84,9 +85,8 @@ simply deleting the build directory. The CMake tooling may report warnings which are intended for the provider of the software, not intended for the consumer of the software. Such -warnings usually take the form of :manual:`policy ` -warnings. Users may disable such warnings by passing the ``-Wno-dev`` flag -to :manual:`cmake(1)`. +warnings end with "This warning is for project developers". Users may +disable such warnings by passing the ``-Wno-dev`` flag to :manual:`cmake(1)`. Note that spaces in the path to the source directory or build directory can cause problems if the provided software is not written to carefully quote @@ -110,7 +110,7 @@ The output of ``cmake --help`` includes a list of :manual:`generators ` available for the user to choose from. -On Unix-like systems (including Apple), the :generator:`Unix Makefiles` +On Unix-like systems (including Mac OS X), the :generator:`Unix Makefiles` generator is used by default. A variant of that generator can also be used on Windows in various environments, such as the :generator:`NMake Makefiles` and :generator:`MinGW Makefiles` generator. These generators generate ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-user-interaction.7.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) hooks/post-receive -- CMake From domen.vrankar at gmail.com Tue Feb 10 17:04:54 2015 From: domen.vrankar at gmail.com (Domen Vrankar) Date: Tue, 10 Feb 2015 17:04:54 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1183-gfd2cc9a Message-ID: <20150210220454.8F2D7AADE0@public.kitware.com> 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 fd2cc9a1071279c0e3d41c38d670d0e669ab92bb (commit) via a06feb122e5a76f43f2cdbfe6ef5ed54ad711375 (commit) from 5e36f8ee1ebf4538146f9f0cb5974426eac14249 (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=fd2cc9a1071279c0e3d41c38d670d0e669ab92bb commit fd2cc9a1071279c0e3d41c38d670d0e669ab92bb Merge: 5e36f8e a06feb1 Author: Domen Vrankar AuthorDate: Tue Feb 10 17:04:53 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 17:04:53 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_policy_version_fixup' into next a06feb12 fixup! cpack_rpm_mulit_prefix http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a06feb122e5a76f43f2cdbfe6ef5ed54ad711375 commit a06feb122e5a76f43f2cdbfe6ef5ed54ad711375 Author: Domen Vrankar AuthorDate: Tue Feb 10 23:03:06 2015 +0100 Commit: Domen Vrankar CommitDate: Tue Feb 10 23:03:06 2015 +0100 fixup! cpack_rpm_mulit_prefix Fix infinite loop with symbolic links when using minimum required cmake version with CMP0009 policy not set in logic added by commit 3ec02547 (CPackRPM: Allow multiple path relocation prefixes for one package, 2015-01-21). diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index 214d655..c53caa1 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -423,6 +423,10 @@ # Author: Eric Noulard with the help of Alexander Neundorf. +# prevent older policies from interfearing with this script +cmake_policy(PUSH) +cmake_policy(VERSION ${CMAKE_VERSION}) + function(cpack_rpm_prepare_relocation_paths) # set appropriate prefix, remove possible trailing slash and convert backslashes to slashes if(CPACK_RPM_${CPACK_RPM_PACKAGE_COMPONENT}_PACKAGE_PREFIX) @@ -1308,3 +1312,6 @@ if(CPACK_RPM_PACKAGE_DESCRIPTION_) else() unset(CPACK_RPM_PACKAGE_DESCRIPTION) endif() + +# restore previous policies +cmake_policy(POP) ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 7 +++++++ 1 file changed, 7 insertions(+) hooks/post-receive -- CMake From steveire at gmail.com Tue Feb 10 18:50:11 2015 From: steveire at gmail.com (Stephen Kelly) Date: Tue, 10 Feb 2015 18:50:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1204-g03d60ba Message-ID: <20150210235012.0CFD1AA94E@public.kitware.com> 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 03d60ba97b9790ec80a22be5b51d91492235a11f (commit) via a7c8ee44932d6983dea9a55bf18857ee9aa3e75f (commit) via f09d355d7dd7f1d66b7f43980523b673f12f6798 (commit) via 63dcb641c903d97f4e26a83e3efcf24acbb44f53 (commit) via 87680637654721c4827636f571f794865c2c0a55 (commit) via 709e3e17fbbc3fec6dc30d31c8f3a083f5e83d8e (commit) via cc02a6647b5473d3c92318f134ffa6ef081564d7 (commit) via 780f75dc43f754e3ad10bf48328a33c1d2173463 (commit) via d4cee4e382e48949920b81e7219ab48f06bfc398 (commit) via 1e57ca6f0f69efb3238a98434fb086c30f1a02f1 (commit) via 55a11552a49c59b786feb9c229ec2d4ee84a70e7 (commit) via 05097f44d032e65891746edf5fecc610017ef214 (commit) via 4d3b952d7b2d4d708d823914e49c07cd9c065880 (commit) via ee1304531efb85b41d3c2f84f32c7d2901298be7 (commit) via b4edadd2c32f881a06c79ab7c1385a27ddc4b971 (commit) via 7b92bdd86f6d180031d8bea2222f4dc971eab8d3 (commit) via 8da80aed2d8b2d82f0bd56804fe9366ea651d516 (commit) via 45795a9a2e8d51b72fb5f19a5de1db628c7dd2cb (commit) via 562a3ea3d4c4ba431f7c109c6fac41decba96e50 (commit) via 7e7d489030dbd63dfb00d407b4d61a33d55747b5 (commit) via ac26d4b343aece40b6b9a931ab619fc88d4b9492 (commit) from fd2cc9a1071279c0e3d41c38d670d0e669ab92bb (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=03d60ba97b9790ec80a22be5b51d91492235a11f commit 03d60ba97b9790ec80a22be5b51d91492235a11f Merge: fd2cc9a a7c8ee4 Author: Stephen Kelly AuthorDate: Tue Feb 10 18:50:01 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 18:50:01 2015 -0500 Merge topic 'use-cmRange' into next a7c8ee44 Convert loop into two algorithms. f09d355d Convert loop to the common pattern. 63dcb641 Move loop inside of condition. 87680637 Handle last element outside of the loop. 709e3e17 cmTarget: Use a sorted vector in place of a set. cc02a664 cmSet: Replace loop with cmJoin. 780f75dc cmFindBase: Replace loop with cmJoin on range. d4cee4e3 Convert loops to cmJoin algorithm with cmRange. 1e57ca6f cmStringCommand: Accumulate with cmJoin and range adaptors. 55a11552 cmAlgorithms: Add a range adaptor and API for adjusting a range. 05097f44 Use cmJoin to accumulate string ranges. 4d3b952d cmAlgorithms: Add a Range container and adaptor method. ee130453 Replace common loop pattern with cmJoin b4edadd2 Convert loops populating maybe-empty content into the common pattern. 7b92bdd8 Convert loops into the commonly used pattern. 8da80aed cmMacroCommand: Remove counting variable. ... http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a7c8ee44932d6983dea9a55bf18857ee9aa3e75f commit a7c8ee44932d6983dea9a55bf18857ee9aa3e75f Author: Stephen Kelly AuthorDate: Sat Jan 24 18:07:37 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:15 2015 +0100 Convert loop into two algorithms. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 359141a..a08c159 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,16 +2299,12 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - const char* sep = ""; - for(unsigned int i=1; i < components.size() - 1; ++i) - { - if(!components[i].empty()) - { - result += sep; - result += components[i]; - sep = slash; - } - } + std::vector::const_iterator compEnd + = std::remove(components.begin() + 1, components.end() - 1, + std::string()); + std::vector::const_iterator compStart + = components.begin() + 1; + result += cmJoin(cmRange(compStart, compEnd), slash); // Only the last component can be empty to avoid double slashes. result += slash; result += components.back(); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f09d355d7dd7f1d66b7f43980523b673f12f6798 commit f09d355d7dd7f1d66b7f43980523b673f12f6798 Author: Stephen Kelly AuthorDate: Fri Jan 23 01:06:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:15 2015 +0100 Convert loop to the common pattern. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 703ab27..359141a 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,24 +2299,18 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - bool first = true; + const char* sep = ""; for(unsigned int i=1; i < components.size() - 1; ++i) { if(!components[i].empty()) { - if(!first) - { - result += slash; - } + result += sep; result += components[i]; - first = false; + sep = slash; } } // Only the last component can be empty to avoid double slashes. - if(!first) - { - result += slash; - } + result += slash; result += components.back(); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=63dcb641c903d97f4e26a83e3efcf24acbb44f53 commit 63dcb641c903d97f4e26a83e3efcf24acbb44f53 Author: Stephen Kelly AuthorDate: Tue Feb 10 23:09:03 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:14 2015 +0100 Move loop inside of condition. The loop is only executed if the condition is true. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 32da821..703ab27 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2295,23 +2295,23 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, // Begin the quoted result with the root component. result += components[0]; - // Now add the rest of the components separated by the proper slash - // direction for this platform. - bool first = true; - for(unsigned int i=1; i < components.size() - 1; ++i) + if (components.size() > 1) { - if(!components[i].empty()) + // Now add the rest of the components separated by the proper slash + // direction for this platform. + bool first = true; + for(unsigned int i=1; i < components.size() - 1; ++i) { - if(!first) + if(!components[i].empty()) { - result += slash; + if(!first) + { + result += slash; + } + result += components[i]; + first = false; } - result += components[i]; - first = false; } - } - if (components.size() > 1) - { // Only the last component can be empty to avoid double slashes. if(!first) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=87680637654721c4827636f571f794865c2c0a55 commit 87680637654721c4827636f571f794865c2c0a55 Author: Stephen Kelly AuthorDate: Fri Jan 23 01:03:45 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:14 2015 +0100 Handle last element outside of the loop. There is no point in checking on each loop iteration whether it is the last element. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 54d330f..32da821 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2298,10 +2298,9 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, // Now add the rest of the components separated by the proper slash // direction for this platform. bool first = true; - for(unsigned int i=1; i < components.size(); ++i) + for(unsigned int i=1; i < components.size() - 1; ++i) { - // Only the last component can be empty to avoid double slashes. - if(!components[i].empty() || (i == (components.size()-1))) + if(!components[i].empty()) { if(!first) { @@ -2311,6 +2310,15 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, first = false; } } + if (components.size() > 1) + { + // Only the last component can be empty to avoid double slashes. + if(!first) + { + result += slash; + } + result += components.back(); + } } // Close the quoted result. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=709e3e17fbbc3fec6dc30d31c8f3a083f5e83d8e commit 709e3e17fbbc3fec6dc30d31c8f3a083f5e83d8e Author: Stephen Kelly AuthorDate: Tue Feb 10 22:48:02 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:14 2015 +0100 cmTarget: Use a sorted vector in place of a set. The vector has a more easy-to-use API. Join the string with cmJoin, and avoid erasing from the container in the loop. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index f0bdea7..526a923 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -6687,40 +6687,33 @@ void cmTarget::CheckPropertyCompatibility(cmComputeLinkInformation *info, if (!prop.empty()) { - // Use a std::set to keep the error message sorted. - std::set props; + // Use a sorted std::vector to keep the error message sorted. + std::vector props; std::set::const_iterator i = emittedBools.find(prop); if (i != emittedBools.end()) { - props.insert(strBool); + props.push_back(strBool); } i = emittedStrings.find(prop); if (i != emittedStrings.end()) { - props.insert(strString); + props.push_back(strString); } i = emittedMinNumbers.find(prop); if (i != emittedMinNumbers.end()) { - props.insert(strNumMin); + props.push_back(strNumMin); } i = emittedMaxNumbers.find(prop); if (i != emittedMaxNumbers.end()) { - props.insert(strNumMax); + props.push_back(strNumMax); } + std::sort(props.begin(), props.end()); + + std::string propsString = cmJoin(cmRange(props).retreat(1), ", "); + propsString += " and the " + props.back(); - std::string propsString = *props.begin(); - props.erase(props.begin()); - while (props.size() > 1) - { - propsString += ", " + *props.begin(); - props.erase(props.begin()); - } - if (props.size() == 1) - { - propsString += " and the " + *props.begin(); - } std::ostringstream e; e << "Property \"" << prop << "\" appears in both the " << propsString << http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cc02a6647b5473d3c92318f134ffa6ef081564d7 commit cc02a6647b5473d3c92318f134ffa6ef081564d7 Author: Stephen Kelly AuthorDate: Tue Feb 10 23:26:58 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:14 2015 +0100 cmSet: Replace loop with cmJoin. diff --git a/Source/cmSetCommand.cxx b/Source/cmSetCommand.cxx index 90d7b03..204d95b 100644 --- a/Source/cmSetCommand.cxx +++ b/Source/cmSetCommand.cxx @@ -108,17 +108,7 @@ bool cmSetCommand } // collect any values into a single semi-colon separated value list - if(static_cast(args.size()) > - static_cast(1 + ignoreLastArgs)) - { - value = args[1]; - size_t endPos = args.size() - ignoreLastArgs; - for(size_t i = 2; i < endPos; ++i) - { - value += ";"; - value += args[i]; - } - } + value = cmJoin(cmRange(args).advance(1).retreat(ignoreLastArgs), ";"); if (parentScope) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=780f75dc43f754e3ad10bf48328a33c1d2173463 commit 780f75dc43f754e3ad10bf48328a33c1d2173463 Author: Stephen Kelly AuthorDate: Wed Jan 14 22:23:41 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:14 2015 +0100 cmFindBase: Replace loop with cmJoin on range. diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx index 69991d5..6e55533 100644 --- a/Source/cmFindBase.cxx +++ b/Source/cmFindBase.cxx @@ -166,11 +166,9 @@ bool cmFindBase::ParseArguments(std::vector const& argsIn) } else { - this->VariableDocumentation += "one of the " + this->Names[0]; - for (unsigned int j = 1; j < this->Names.size() - 1; ++j) - { - this->VariableDocumentation += ", " + this->Names[j]; - } + this->VariableDocumentation += "one of the "; + this->VariableDocumentation += cmJoin(cmRange(this->Names).retreat(1), + ", "); this->VariableDocumentation += " or " + this->Names[this->Names.size() - 1] + " libraries be found"; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d4cee4e382e48949920b81e7219ab48f06bfc398 commit d4cee4e382e48949920b81e7219ab48f06bfc398 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:53:20 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:35:14 2015 +0100 Convert loops to cmJoin algorithm with cmRange. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 8d1657d..dd0cfa9 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -259,14 +259,7 @@ bool cmListCommand::HandleAppendCommand(std::vector const& args) { listString += ";"; } - const char* sep = ""; - size_t cc; - for ( cc = 2; cc < args.size(); ++ cc ) - { - listString += sep; - listString += args[cc]; - sep = ";"; - } + listString += cmJoin(cmRange(args).advance(2), ";"); this->Makefile->AddDefinition(listName, listString.c_str()); return true; diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 05d8ab5..35956ad 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3016,13 +3016,7 @@ cmLocalGenerator::ConvertToRelativePath(const std::vector& local, { relative += "/"; } - const char* sep = ""; - for(unsigned int i=common; i < remote.size(); ++i) - { - relative += sep; - relative += remote[i]; - sep = "/"; - } + relative += cmJoin(cmRange(remote).advance(common), "/"); // Finally return the path. return relative; diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 14b241d..ecdd4a0 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -172,12 +172,7 @@ bool cmMacroHelperCommand::InvokeInitialPass } std::vector::const_iterator eit = expandedArgs.begin() + this->Args.size() - 1; - const char* sep = ""; - for( ; eit != expandedArgs.end(); ++eit) - { - argnDef += sep + *eit; - sep = ";"; - } + argnDef += cmJoin(cmRange(eit, expandedArgs.end()), ";"); } argnDefInitialized = true; } diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 5260cb0..5c93975 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -406,12 +406,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) // Clock command else if (args[1] == "time" && args.size() > 2) { - std::string command = args[2]; - for (std::string::size_type cc = 3; cc < args.size(); cc ++) - { - command += " "; - command += args[cc]; - } + std::string command = cmJoin(cmRange(args).advance(2), " "); clock_t clock_start, clock_finish; time_t time_start, time_finish; @@ -473,14 +468,8 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) } std::string command = "\""; - command += args[3]; + command += cmJoin(cmRange(args).advance(3), "\" \""); command += "\""; - for (std::string::size_type cc = 4; cc < args.size(); cc ++) - { - command += " \""; - command += args[cc]; - command += "\""; - } int retval = 0; int timeout = 0; if ( cmSystemTools::RunSingleCommand(command.c_str(), 0, &retval, http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1e57ca6f0f69efb3238a98434fb086c30f1a02f1 commit 1e57ca6f0f69efb3238a98434fb086c30f1a02f1 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:23:41 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:34 2015 +0100 cmStringCommand: Accumulate with cmJoin and range adaptors. diff --git a/Source/cmStringCommand.cxx b/Source/cmStringCommand.cxx index 3e606d7..edc6afc 100644 --- a/Source/cmStringCommand.cxx +++ b/Source/cmStringCommand.cxx @@ -303,13 +303,6 @@ bool cmStringCommand::RegexMatch(std::vector const& args) std::string regex = args[2]; std::string outvar = args[3]; - // Concatenate all the last arguments together. - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -321,6 +314,9 @@ bool cmStringCommand::RegexMatch(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(4), std::string()); + // Scan through the input for all matches. std::string output; if(re.find(input.c_str())) @@ -352,13 +348,6 @@ bool cmStringCommand::RegexMatchAll(std::vector const& args) std::string regex = args[2]; std::string outvar = args[3]; - // Concatenate all the last arguments together. - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -371,6 +360,9 @@ bool cmStringCommand::RegexMatchAll(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(4), std::string()); + // Scan through the input for all matches. std::string output; const char* p = input.c_str(); @@ -456,13 +448,6 @@ bool cmStringCommand::RegexReplace(std::vector const& args) l = r; } - // Concatenate all the last arguments together. - std::string input = args[5]; - for(unsigned int i=6; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -475,6 +460,9 @@ bool cmStringCommand::RegexReplace(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(5), std::string()); + // Scan through the input for all matches. std::string output; std::string::size_type base = 0; @@ -673,11 +661,7 @@ bool cmStringCommand::HandleReplaceCommand(std::vector const& const std::string& replaceExpression = args[2]; const std::string& variableName = args[3]; - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } + std::string input = cmJoin(cmRange(args).advance(4), std::string()); cmsys::SystemTools::ReplaceString(input, matchExpression.c_str(), replaceExpression.c_str()); @@ -756,11 +740,7 @@ bool cmStringCommand } std::string const& variableName = args[1]; - std::string value; - for(unsigned int i = 2; i < args.size(); ++i) - { - value += args[i]; - } + std::string value = cmJoin(cmRange(args).advance(2), std::string()); this->Makefile->AddDefinition(variableName, value.c_str()); return true; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=55a11552a49c59b786feb9c229ec2d4ee84a70e7 commit 55a11552a49c59b786feb9c229ec2d4ee84a70e7 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:14:54 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:34 2015 +0100 cmAlgorithms: Add a range adaptor and API for adjusting a range. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 6c03f51..851b105 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -122,6 +122,17 @@ struct Range const_iterator begin() const { return Begin; } const_iterator end() const { return End; } bool empty() const { return std::distance(Begin, End) == 0; } + Range& advance(size_t amount) + { + std::advance(Begin, amount); + return *this; + } + + Range& retreat(size_t amount) + { + std::advance(End, -amount); + return *this; + } private: const_iterator Begin; const_iterator End; @@ -135,6 +146,14 @@ ContainerAlgorithms::Range cmRange(Iter1 begin, Iter2 end) return ContainerAlgorithms::Range(begin, end); } +template +ContainerAlgorithms::Range +cmRange(Range const& range) +{ + return ContainerAlgorithms::Range( + range.begin(), range.end()); +} + template void cmDeleteAll(Container const& c) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=05097f44d032e65891746edf5fecc610017ef214 commit 05097f44d032e65891746edf5fecc610017ef214 Author: Stephen Kelly AuthorDate: Wed Jan 14 21:27:25 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:34 2015 +0100 Use cmJoin to accumulate string ranges. Avoid using the std::accumulate algorithm which is designed for numeric types, not complex types. It introduces unneccessary copies. Initialize variables where they are populated. diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 8b893bc..212603c 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -217,7 +217,6 @@ bool cmFileCommand bool cmFileCommand::HandleWriteCommand(std::vector const& args, bool append) { - std::string message; std::vector::const_iterator i = args.begin(); i++; // Get rid of subcommand @@ -231,10 +230,6 @@ bool cmFileCommand::HandleWriteCommand(std::vector const& args, i++; - for(;i != args.end(); ++i) - { - message += *i; - } if ( !this->Makefile->CanIWriteThisFile(fileName.c_str()) ) { std::string e @@ -272,6 +267,7 @@ bool cmFileCommand::HandleWriteCommand(std::vector const& args, this->SetError(error); return false; } + std::string message = cmJoin(cmRange(i, args.end()), std::string()); file << message; file.close(); if(mode) diff --git a/Source/cmMessageCommand.cxx b/Source/cmMessageCommand.cxx index 88d6a77..0449c50 100644 --- a/Source/cmMessageCommand.cxx +++ b/Source/cmMessageCommand.cxx @@ -20,7 +20,6 @@ bool cmMessageCommand this->SetError("called with incorrect number of arguments"); return false; } - std::string message; std::vector::const_iterator i = args.begin(); cmake::MessageType type = cmake::MESSAGE; @@ -70,10 +69,7 @@ bool cmMessageCommand ++i; } - for(;i != args.end(); ++i) - { - message += *i; - } + std::string message = cmJoin(cmRange(i, args.end()), std::string()); if (type != cmake::MESSAGE) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4d3b952d7b2d4d708d823914e49c07cd9c065880 commit 4d3b952d7b2d4d708d823914e49c07cd9c065880 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:19:21 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:34 2015 +0100 cmAlgorithms: Add a Range container and adaptor method. This can make a pair of iterators API compatible with the cmJoin algorithm and other range-based algorithms. Accept different iterator types in the cmRange adaptor so that a const and non-const iterator are accepted. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 4938140..6c03f51 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -112,6 +112,27 @@ struct DefaultDeleter } }; +template +struct Range +{ + typedef const_iterator_ const_iterator; + typedef typename std::iterator_traits::value_type value_type; + Range(const_iterator begin_, const_iterator end_) + : Begin(begin_), End(end_) {} + const_iterator begin() const { return Begin; } + const_iterator end() const { return End; } + bool empty() const { return std::distance(Begin, End) == 0; } +private: + const_iterator Begin; + const_iterator End; +}; + +} + +template +ContainerAlgorithms::Range cmRange(Iter1 begin, Iter2 end) +{ + return ContainerAlgorithms::Range(begin, end); } template http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ee1304531efb85b41d3c2f84f32c7d2901298be7 commit ee1304531efb85b41d3c2f84f32c7d2901298be7 Author: Stephen Kelly AuthorDate: Wed Jan 14 21:31:46 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:34 2015 +0100 Replace common loop pattern with cmJoin diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index 7746980..fd9b236 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -1064,26 +1064,11 @@ void cmFindPackageCommand::AppendToFoundProperty(bool found) } - std::string tmp; - const char* sep =""; - for(size_t i=0; iMakefile->GetCMakeInstance()->SetProperty("PACKAGES_FOUND", tmp.c_str()); - tmp = ""; - sep = ""; - for(size_t i=0; iMakefile->GetCMakeInstance()->SetProperty("PACKAGES_NOT_FOUND", tmp.c_str()); } diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index c33048c..2e71b01 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -194,11 +194,8 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, { std::string name = this->Args[0]; std::vector::size_type cc; - name += "("; - for ( cc = 0; cc < this->Args.size(); cc ++ ) - { - name += " " + this->Args[cc]; - } + name += "( "; + name += cmJoin(this->Args, " "); name += " )"; // create a new command and add it to cmake diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx index c0e4683..84c00ba 100644 --- a/Source/cmGetCMakePropertyCommand.cxx +++ b/Source/cmGetCMakePropertyCommand.cxx @@ -34,15 +34,7 @@ bool cmGetCMakePropertyCommand std::vector vars = this->Makefile->GetDefinitions(cacheonly); if (!vars.empty()) { - output = ""; - const char* sep = ""; - std::vector::size_type cc; - for ( cc = 0; cc < vars.size(); ++cc ) - { - output += sep; - output += vars[cc]; - sep = ";"; - } + output = cmJoin(vars, ";"); } } else if ( args[1] == "MACROS" ) @@ -54,15 +46,7 @@ bool cmGetCMakePropertyCommand const std::set* components = this->Makefile->GetLocalGenerator()->GetGlobalGenerator() ->GetInstallComponents(); - std::set::const_iterator compIt; - output = ""; - const char* sep = ""; - for (compIt = components->begin(); compIt != components->end(); ++compIt) - { - output += sep; - output += *compIt; - sep = ";"; - } + output = cmJoin(*components, ";"); } else { diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 27154d2..14b241d 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -197,14 +197,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argvDef += ";"; } - const char* sep = ""; - std::vector::const_iterator eit; - for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) - { - argvDef += sep; - argvDef += *eit; - sep = ";"; - } + argvDef += cmJoin(expandedArgs, ";"); argvDefInitialized = true; } cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index aca4413..ac5fec9 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -4202,15 +4202,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LISTFILE_STACK") { - const char* sep = ""; - for (std::deque::const_iterator - i = this->ListFileStack.begin(); - i != this->ListFileStack.end(); ++i) - { - output += sep; - output += *i; - sep = ";"; - } + output = cmJoin(this->ListFileStack, ";"); return output.c_str(); } else if (prop == "VARIABLES" || prop == "CACHE_VARIABLES") @@ -4220,14 +4212,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, { cacheonly = 1; } - std::vector vars = this->GetDefinitions(cacheonly); - const char* sep = ""; - for (unsigned int cc = 0; cc < vars.size(); cc ++ ) - { - output += sep; - output += vars[cc]; - sep = ";"; - } + output = cmJoin(this->GetDefinitions(cacheonly), ";"); return output.c_str(); } else if (prop == "MACROS") @@ -4242,16 +4227,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LINK_DIRECTORIES") { - const char* sep = ""; - for (std::vector::const_iterator - it = this->GetLinkDirectories().begin(); - it != this->GetLinkDirectories().end(); - ++ it ) - { - output += sep; - output += *it; - sep = ";"; - } + output = cmJoin(this->GetLinkDirectories(), ";"); return output.c_str(); } else if (prop == "INCLUDE_DIRECTORIES") diff --git a/Source/cmOptionCommand.cxx b/Source/cmOptionCommand.cxx index e505440..60728ea 100644 --- a/Source/cmOptionCommand.cxx +++ b/Source/cmOptionCommand.cxx @@ -34,11 +34,7 @@ bool cmOptionCommand if(argError) { std::string m = "called with incorrect number of arguments: "; - for(size_t i =0; i < args.size(); ++i) - { - m += args[i]; - m += " "; - } + m += cmJoin(args, " "); this->SetError(m); return false; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b4edadd2c32f881a06c79ab7c1385a27ddc4b971 commit b4edadd2c32f881a06c79ab7c1385a27ddc4b971 Author: Stephen Kelly AuthorDate: Sat Jan 17 17:36:19 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:34 2015 +0100 Convert loops populating maybe-empty content into the common pattern. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 107dca9..8d1657d 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -254,14 +254,18 @@ bool cmListCommand::HandleAppendCommand(std::vector const& args) // expand the variable std::string listString; this->GetListString(listString, listName); + + if(!listString.empty() && !args.empty()) + { + listString += ";"; + } + const char* sep = ""; size_t cc; for ( cc = 2; cc < args.size(); ++ cc ) { - if(!listString.empty()) - { - listString += ";"; - } + listString += sep; listString += args[cc]; + sep = ";"; } this->Makefile->AddDefinition(listName, listString.c_str()); diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 7afe05f..05d8ab5 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3011,13 +3011,17 @@ cmLocalGenerator::ConvertToRelativePath(const std::vector& local, // trailing slash in the input then the last iteration of the loop // will add a slash followed by an empty string which will preserve // the trailing slash in the output. + + if(!relative.empty() && !remote.empty()) + { + relative += "/"; + } + const char* sep = ""; for(unsigned int i=common; i < remote.size(); ++i) { - if(!relative.empty()) - { - relative += "/"; - } + relative += sep; relative += remote[i]; + sep = "/"; } // Finally return the path. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 8ffd909..27154d2 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -166,15 +166,17 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (expandedArgs.size() > this->Args.size() - 1) { + if (!argnDef.empty() && !expandedArgs.empty()) + { + argnDef += ";"; + } std::vector::const_iterator eit = expandedArgs.begin() + this->Args.size() - 1; + const char* sep = ""; for( ; eit != expandedArgs.end(); ++eit) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += sep + *eit; + sep = ";"; } } argnDefInitialized = true; @@ -191,14 +193,17 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGV, compute it only once if (!argvDefInitialized) { + if (!argvDef.empty() && !expandedArgs.empty()) + { + argvDef += ";"; + } + const char* sep = ""; std::vector::const_iterator eit; for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) { - if (!argvDef.empty()) - { - argvDef += ";"; - } + argvDef += sep; argvDef += *eit; + sep = ";"; } argvDefInitialized = true; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7b92bdd86f6d180031d8bea2222f4dc971eab8d3 commit 7b92bdd86f6d180031d8bea2222f4dc971eab8d3 Author: Stephen Kelly AuthorDate: Sat Jan 17 17:47:10 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:33 2015 +0100 Convert loops into the commonly used pattern. diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx index e193cf5..c0e4683 100644 --- a/Source/cmGetCMakePropertyCommand.cxx +++ b/Source/cmGetCMakePropertyCommand.cxx @@ -25,7 +25,6 @@ bool cmGetCMakePropertyCommand return false; } - std::vector::size_type cc; std::string variable = args[0]; std::string output = "NOTFOUND"; @@ -35,12 +34,15 @@ bool cmGetCMakePropertyCommand std::vector vars = this->Makefile->GetDefinitions(cacheonly); if (!vars.empty()) { - output = vars[0]; - } - for ( cc = 1; cc < vars.size(); ++cc ) - { - output += ";"; - output += vars[cc]; + output = ""; + const char* sep = ""; + std::vector::size_type cc; + for ( cc = 0; cc < vars.size(); ++cc ) + { + output += sep; + output += vars[cc]; + sep = ";"; + } } } else if ( args[1] == "MACROS" ) @@ -54,13 +56,12 @@ bool cmGetCMakePropertyCommand ->GetInstallComponents(); std::set::const_iterator compIt; output = ""; + const char* sep = ""; for (compIt = components->begin(); compIt != components->end(); ++compIt) { - if (compIt != components->begin()) - { - output += ";"; - } + output += sep; output += *compIt; + sep = ";"; } } else diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index eb68e49..aca4413 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -3752,15 +3752,12 @@ void cmMakefile::GetListOfMacros(std::string& macros) const { StringStringMap::const_iterator it; macros = ""; - int cc = 0; + const char* sep = ""; for ( it = this->MacrosMap.begin(); it != this->MacrosMap.end(); ++it ) { - if ( cc > 0 ) - { - macros += ";"; - } + macros += sep; macros += it->first; - cc ++; + sep = ""; } } @@ -4205,15 +4202,14 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LISTFILE_STACK") { + const char* sep = ""; for (std::deque::const_iterator i = this->ListFileStack.begin(); i != this->ListFileStack.end(); ++i) { - if (i != this->ListFileStack.begin()) - { - output += ";"; - } + output += sep; output += *i; + sep = ";"; } return output.c_str(); } @@ -4225,13 +4221,12 @@ const char *cmMakefile::GetProperty(const std::string& prop, cacheonly = 1; } std::vector vars = this->GetDefinitions(cacheonly); + const char* sep = ""; for (unsigned int cc = 0; cc < vars.size(); cc ++ ) { - if ( cc > 0 ) - { - output += ";"; - } + output += sep; output += vars[cc]; + sep = ";"; } return output.c_str(); } @@ -4247,19 +4242,16 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LINK_DIRECTORIES") { - std::ostringstream str; + const char* sep = ""; for (std::vector::const_iterator it = this->GetLinkDirectories().begin(); it != this->GetLinkDirectories().end(); ++ it ) { - if ( it != this->GetLinkDirectories().begin()) - { - str << ";"; - } - str << it->c_str(); + output += sep; + output += *it; + sep = ";"; } - output = str.str(); return output.c_str(); } else if (prop == "INCLUDE_DIRECTORIES") http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8da80aed2d8b2d82f0bd56804fe9366ea651d516 commit 8da80aed2d8b2d82f0bd56804fe9366ea651d516 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:47:21 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:33 2015 +0100 cmMacroCommand: Remove counting variable. Start iteration at correct starting point directly. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 743cd13..8ffd909 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -167,19 +167,14 @@ bool cmMacroHelperCommand::InvokeInitialPass if (expandedArgs.size() > this->Args.size() - 1) { std::vector::const_iterator eit - = expandedArgs.begin(); - std::vector::size_type cnt = 0; + = expandedArgs.begin() + this->Args.size() - 1; for( ; eit != expandedArgs.end(); ++eit) { - if ( cnt >= this->Args.size()-1 ) + if (!argnDef.empty()) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += ";"; } - cnt ++; + argnDef += *eit; } } argnDefInitialized = true; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=45795a9a2e8d51b72fb5f19a5de1db628c7dd2cb commit 45795a9a2e8d51b72fb5f19a5de1db628c7dd2cb Author: Stephen Kelly AuthorDate: Sun Jan 25 15:44:49 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:33 2015 +0100 cmMacroCommand: Execute loop only if it has an effect. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 5f7fa36..743cd13 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -164,20 +164,23 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (!argnDefInitialized) { - std::vector::const_iterator eit - = expandedArgs.begin(); - std::vector::size_type cnt = 0; - for( ; eit != expandedArgs.end(); ++eit) + if (expandedArgs.size() > this->Args.size() - 1) { - if ( cnt >= this->Args.size()-1 ) + std::vector::const_iterator eit + = expandedArgs.begin(); + std::vector::size_type cnt = 0; + for( ; eit != expandedArgs.end(); ++eit) { - if (!argnDef.empty()) + if ( cnt >= this->Args.size()-1 ) { - argnDef += ";"; + if (!argnDef.empty()) + { + argnDef += ";"; + } + argnDef += *eit; } - argnDef += *eit; + cnt ++; } - cnt ++; } argnDefInitialized = true; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=562a3ea3d4c4ba431f7c109c6fac41decba96e50 commit 562a3ea3d4c4ba431f7c109c6fac41decba96e50 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:42:12 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:33 2015 +0100 cmMacroCommand: Extract iteration starting point. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index a5804b2..5f7fa36 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -164,9 +164,10 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (!argnDefInitialized) { - std::vector::const_iterator eit; + std::vector::const_iterator eit + = expandedArgs.begin(); std::vector::size_type cnt = 0; - for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) + for( ; eit != expandedArgs.end(); ++eit) { if ( cnt >= this->Args.size()-1 ) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7e7d489030dbd63dfb00d407b4d61a33d55747b5 commit 7e7d489030dbd63dfb00d407b4d61a33d55747b5 Author: Stephen Kelly AuthorDate: Wed Feb 11 00:29:20 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:30:20 2015 +0100 cmMacroCommand: Replace a loop with cmJoin. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 69fcca7..a5804b2 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -264,9 +264,10 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, std::string name = this->Args[0]; std::vector::size_type cc; name += "("; - for ( cc = 0; cc < this->Args.size(); cc ++ ) + if (!this->Args.empty()) { - name += " " + this->Args[cc]; + name += " "; + name += cmJoin(this->Args, " "); } name += " )"; mf.AddMacro(this->Args[0].c_str(), name.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ac26d4b343aece40b6b9a931ab619fc88d4b9492 commit ac26d4b343aece40b6b9a931ab619fc88d4b9492 Author: Stephen Kelly AuthorDate: Tue Feb 10 21:50:16 2015 +0100 Commit: Stephen Kelly CommitDate: Tue Feb 10 22:14:18 2015 +0100 Split cmAlgorithms into a separate header file. diff --git a/Source/CPack/cmCPackGeneratorFactory.cxx b/Source/CPack/cmCPackGeneratorFactory.cxx index a07c29a..4626142 100644 --- a/Source/CPack/cmCPackGeneratorFactory.cxx +++ b/Source/CPack/cmCPackGeneratorFactory.cxx @@ -46,6 +46,7 @@ #endif #include "cmCPackLog.h" +#include "cmAlgorithms.h" //---------------------------------------------------------------------- diff --git a/Source/CTest/cmCTestGIT.cxx b/Source/CTest/cmCTestGIT.cxx index 98bc9d7..6b84bab 100644 --- a/Source/CTest/cmCTestGIT.cxx +++ b/Source/CTest/cmCTestGIT.cxx @@ -13,6 +13,7 @@ #include "cmCTest.h" #include "cmSystemTools.h" +#include "cmAlgorithms.h" #include "cmXMLSafe.h" #include diff --git a/Source/cmStandardIncludes.h b/Source/cmAlgorithms.h similarity index 52% copy from Source/cmStandardIncludes.h copy to Source/cmAlgorithms.h index 77b4f62..4938140 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmAlgorithms.h @@ -1,6 +1,6 @@ /*============================================================================ CMake - Cross Platform Makefile Generator - Copyright 2000-2009 Kitware, Inc., Insight Software Consortium + Copyright 2015 Stephen Kelly Distributed under the OSI-approved BSD License (the "License"); see accompanying file Copyright.txt for details. @@ -9,154 +9,10 @@ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License for more information. ============================================================================*/ -/** - * Include header files as a function of the build process, compiler, - * and operating system. - */ -#ifndef cmStandardIncludes_h -#define cmStandardIncludes_h +#ifndef cmAlgorithms_h +#define cmAlgorithms_h -#include -#include - -#ifdef _MSC_VER -#pragma warning ( disable : 4786 ) -#pragma warning ( disable : 4503 ) -#endif - - -#ifdef __ICL -#pragma warning ( disable : 985 ) -#pragma warning ( disable : 1572 ) /* floating-point equality test */ -#endif - -// Provide fixed-size integer types. -#include - -// Include stream compatibility layer from KWSys. -// This is needed to work with large file support -// on some platforms whose stream operators do not -// support the large integer types. -#if defined(CMAKE_BUILD_WITH_CMAKE) -# include -#endif - -#include -#include -#include -#include - -// we must have stl with the standard include style -#include -#include -#include -#include -#include -#include -#include - -// include the "c" string header -#include -#include -#include - -#if defined( _MSC_VER ) -typedef unsigned short mode_t; -#endif - -// use this class to shrink the size of symbols in .o files -// std::string is really basic_string<....lots of stuff....> -// when combined with a map or set, the symbols can be > 2000 chars! -#include -//typedef cmsys::String std::string; - -/* Poison this operator to avoid common mistakes. */ -extern void operator << (std::ostream&, const std::ostringstream&); - -/** Standard documentation entry for cmDocumentation's formatting. */ -struct cmDocumentationEntry -{ - std::string Name; - std::string Brief; - cmDocumentationEntry(){} - cmDocumentationEntry(const char *doc[2]) - { if (doc[0]) this->Name = doc[0]; - if (doc[1]) this->Brief = doc[1];} - cmDocumentationEntry(const char *n, const char *b) - { if (n) this->Name = n; if (b) this->Brief = b; } -}; - -/** Data structure to represent a single command line. */ -class cmCustomCommandLine: public std::vector -{ -public: - typedef std::vector Superclass; - typedef Superclass::iterator iterator; - typedef Superclass::const_iterator const_iterator; -}; - -/** Data structure to represent a list of command lines. */ -class cmCustomCommandLines: public std::vector -{ -public: - typedef std::vector Superclass; - typedef Superclass::iterator iterator; - typedef Superclass::const_iterator const_iterator; -}; - -// All subclasses of cmCommand or cmCTestGenericHandler should -// invoke this macro. -#define cmTypeMacro(thisClass,superclass) \ -virtual const char* GetNameOfClass() { return #thisClass; } \ -typedef superclass Superclass; \ -static bool IsTypeOf(const char *type) \ -{ \ - if ( !strcmp(#thisClass,type) ) \ - { \ - return true; \ - } \ - return Superclass::IsTypeOf(type); \ -} \ -virtual bool IsA(const char *type) \ -{ \ - return thisClass::IsTypeOf(type); \ -} \ -static thisClass* SafeDownCast(cmObject *c) \ -{ \ - if ( c && c->IsA(#thisClass) ) \ - { \ - return static_cast(c); \ - } \ - return 0;\ -} \ -class cmTypeMacro_UseTrailingSemicolon - -template -std::string cmJoin(Range const& r, const char* delimiter) -{ - if (r.empty()) - { - return std::string(); - } - std::ostringstream os; - typedef typename Range::value_type ValueType; - typedef typename Range::const_iterator InputIt; - InputIt first = r.begin(); - InputIt last = r.end(); - --last; - std::copy(first, last, - std::ostream_iterator(os, delimiter)); - - os << *last; - - return os.str(); -} - -template -std::string cmJoin(Range const& r, std::string delimiter) -{ - return cmJoin(r, delimiter.c_str()); -}; +#include "cmStandardIncludes.h" inline bool cmHasLiteralPrefixImpl(const std::string &str1, const char *str2, @@ -265,4 +121,31 @@ void cmDeleteAll(Container const& c) ContainerAlgorithms::DefaultDeleter()); } +template +std::string cmJoin(Range const& r, const char* delimiter) +{ + if (r.empty()) + { + return std::string(); + } + std::ostringstream os; + typedef typename Range::value_type ValueType; + typedef typename Range::const_iterator InputIt; + InputIt first = r.begin(); + InputIt last = r.end(); + --last; + std::copy(first, last, + std::ostream_iterator(os, delimiter)); + + os << *last; + + return os.str(); +} + +template +std::string cmJoin(Range const& r, std::string delimiter) +{ + return cmJoin(r, delimiter.c_str()); +}; + #endif diff --git a/Source/cmExportSet.cxx b/Source/cmExportSet.cxx index 14812e4..4148fb5 100644 --- a/Source/cmExportSet.cxx +++ b/Source/cmExportSet.cxx @@ -12,6 +12,7 @@ #include "cmExportSet.h" #include "cmTargetExport.h" +#include "cmAlgorithms.h" cmExportSet::~cmExportSet() { diff --git a/Source/cmExportSetMap.cxx b/Source/cmExportSetMap.cxx index 14c4458..cf431c6 100644 --- a/Source/cmExportSetMap.cxx +++ b/Source/cmExportSetMap.cxx @@ -12,6 +12,7 @@ #include "cmExportSetMap.h" #include "cmExportSet.h" +#include "cmAlgorithms.h" cmExportSet* cmExportSetMap::operator[](const std::string &name) { diff --git a/Source/cmFileLockPool.cxx b/Source/cmFileLockPool.cxx index cf8e9a9..3710eb0 100644 --- a/Source/cmFileLockPool.cxx +++ b/Source/cmFileLockPool.cxx @@ -16,6 +16,7 @@ #include "cmFileLock.h" #include "cmFileLockResult.h" +#include "cmAlgorithms.h" cmFileLockPool::cmFileLockPool() { diff --git a/Source/cmInstalledFile.h b/Source/cmInstalledFile.h index 503f92c..cdb0866 100644 --- a/Source/cmInstalledFile.h +++ b/Source/cmInstalledFile.h @@ -13,6 +13,7 @@ #define cmInstalledFile_h #include "cmGeneratorExpression.h" +#include "cmAlgorithms.h" /** \class cmInstalledFile * \brief Represents a file intended for installation. diff --git a/Source/cmRST.cxx b/Source/cmRST.cxx index f4607c6..d20d999 100644 --- a/Source/cmRST.cxx +++ b/Source/cmRST.cxx @@ -12,6 +12,7 @@ #include "cmRST.h" #include "cmSystemTools.h" +#include "cmAlgorithms.h" #include "cmVersion.h" #include #include diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h index 77b4f62..a9796b9 100644 --- a/Source/cmStandardIncludes.h +++ b/Source/cmStandardIncludes.h @@ -131,138 +131,4 @@ static thisClass* SafeDownCast(cmObject *c) \ } \ class cmTypeMacro_UseTrailingSemicolon -template -std::string cmJoin(Range const& r, const char* delimiter) -{ - if (r.empty()) - { - return std::string(); - } - std::ostringstream os; - typedef typename Range::value_type ValueType; - typedef typename Range::const_iterator InputIt; - InputIt first = r.begin(); - InputIt last = r.end(); - --last; - std::copy(first, last, - std::ostream_iterator(os, delimiter)); - - os << *last; - - return os.str(); -} - -template -std::string cmJoin(Range const& r, std::string delimiter) -{ - return cmJoin(r, delimiter.c_str()); -}; - -inline bool cmHasLiteralPrefixImpl(const std::string &str1, - const char *str2, - size_t N) -{ - return strncmp(str1.c_str(), str2, N) == 0; -} - -inline bool cmHasLiteralPrefixImpl(const char* str1, - const char *str2, - size_t N) -{ - return strncmp(str1, str2, N) == 0; -} - -inline bool cmHasLiteralSuffixImpl(const std::string &str1, - const char *str2, - size_t N) -{ - size_t len = str1.size(); - return len >= N && strcmp(str1.c_str() + len - N, str2) == 0; -} - -inline bool cmHasLiteralSuffixImpl(const char* str1, - const char* str2, - size_t N) -{ - size_t len = strlen(str1); - return len >= N && strcmp(str1 + len - N, str2) == 0; -} - -template -const T* cmArrayBegin(const T (&a)[N]) { return a; } -template -const T* cmArrayEnd(const T (&a)[N]) { return a + N; } -template -size_t cmArraySize(const T (&)[N]) { return N; } - -template -bool cmHasLiteralPrefix(T str1, const char (&str2)[N]) -{ - return cmHasLiteralPrefixImpl(str1, str2, N - 1); -} - -template -bool cmHasLiteralSuffix(T str1, const char (&str2)[N]) -{ - return cmHasLiteralSuffixImpl(str1, str2, N - 1); -} - -struct cmStrCmp { - cmStrCmp(const char *test) : m_test(test) {} - cmStrCmp(const std::string &test) : m_test(test) {} - - bool operator()(const std::string& input) const - { - return m_test == input; - } - - bool operator()(const char * input) const - { - return strcmp(input, m_test.c_str()) == 0; - } - -private: - const std::string m_test; -}; - -namespace ContainerAlgorithms { - -template -struct cmIsPair -{ - enum { value = false }; -}; - -template -struct cmIsPair > -{ - enum { value = true }; -}; - -template::value> -struct DefaultDeleter -{ - void operator()(typename Container::value_type value) { - delete value; - } -}; - -template -struct DefaultDeleter -{ - void operator()(typename Container::value_type value) { - delete value.second; - } -}; - -} - -template -void cmDeleteAll(Container const& c) -{ - std::for_each(c.begin(), c.end(), - ContainerAlgorithms::DefaultDeleter()); -} - #endif diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 7dd6121..bf496e9 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -11,6 +11,7 @@ ============================================================================*/ #include "cmSystemTools.h" +#include "cmAlgorithms.h" #include #include #include diff --git a/Source/cmVariableWatch.cxx b/Source/cmVariableWatch.cxx index b8a6df2..57dde31 100644 --- a/Source/cmVariableWatch.cxx +++ b/Source/cmVariableWatch.cxx @@ -11,6 +11,8 @@ ============================================================================*/ #include "cmVariableWatch.h" +#include "cmAlgorithms.h" + static const char* const cmVariableWatchAccessStrings[] = { "READ_ACCESS", ----------------------------------------------------------------------- Summary of changes: Source/CPack/cmCPackGeneratorFactory.cxx | 1 + Source/CTest/cmCTestGIT.cxx | 1 + Source/{cmStandardIncludes.h => cmAlgorithms.h} | 219 ++++++++--------------- Source/cmExportSet.cxx | 1 + Source/cmExportSetMap.cxx | 1 + Source/cmFileCommand.cxx | 6 +- Source/cmFileLockPool.cxx | 1 + Source/cmFindBase.cxx | 8 +- Source/cmFindPackageCommand.cxx | 19 +- Source/cmFunctionCommand.cxx | 7 +- Source/cmGetCMakePropertyCommand.cxx | 19 +- Source/cmInstalledFile.h | 1 + Source/cmListCommand.cxx | 11 +- Source/cmLocalGenerator.cxx | 10 +- Source/cmLocalUnixMakefileGenerator3.cxx | 24 ++- Source/cmMacroCommand.cxx | 31 ++-- Source/cmMakefile.cxx | 44 +---- Source/cmMessageCommand.cxx | 6 +- Source/cmOptionCommand.cxx | 6 +- Source/cmRST.cxx | 1 + Source/cmSetCommand.cxx | 12 +- Source/cmStandardIncludes.h | 134 -------------- Source/cmStringCommand.cxx | 42 ++--- Source/cmSystemTools.cxx | 1 + Source/cmTarget.cxx | 27 ++- Source/cmVariableWatch.cxx | 2 + Source/cmcmd.cxx | 15 +- 27 files changed, 154 insertions(+), 496 deletions(-) copy Source/{cmStandardIncludes.h => cmAlgorithms.h} (53%) hooks/post-receive -- CMake From steveire at gmail.com Tue Feb 10 18:52:10 2015 From: steveire at gmail.com (Stephen Kelly) Date: Tue, 10 Feb 2015 18:52:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1208-gdb0f1df Message-ID: <20150210235210.ED359AA9C4@public.kitware.com> 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 db0f1df7bada28ea675fb563803786e7251c42b9 (commit) via f7e33820b628f39ae2e0ba3d25279545dfe18f73 (commit) via 6da65b3907419df28484c570f24d0da3593a0e5a (commit) via 736bcb9664b714b91e8a2a573451e0453716f4da (commit) from 03d60ba97b9790ec80a22be5b51d91492235a11f (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=db0f1df7bada28ea675fb563803786e7251c42b9 commit db0f1df7bada28ea675fb563803786e7251c42b9 Merge: 03d60ba f7e3382 Author: Stephen Kelly AuthorDate: Tue Feb 10 18:52:08 2015 -0500 Commit: CMake Topic Stage CommitDate: Tue Feb 10 18:52:08 2015 -0500 Merge topic 'export-interface-source-files' into next f7e33820 Add release notes for export-interface-source-files. 6da65b39 Allow export of targets with INTERFACE_SOURCES. 736bcb96 Tests: Move IfacePaths test stderr files. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f7e33820b628f39ae2e0ba3d25279545dfe18f73 commit f7e33820b628f39ae2e0ba3d25279545dfe18f73 Author: Stephen Kelly AuthorDate: Thu Feb 5 20:40:51 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:51:35 2015 +0100 Add release notes for export-interface-source-files. diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst new file mode 100644 index 0000000..00dcd25 --- /dev/null +++ b/Help/release/dev/export-interface-source-files.rst @@ -0,0 +1,6 @@ +export-interface-source-files +----------------------------- + +* It is now possible to export targets which populate the + :prop_tgt:`INTERFACE_SOURCES` target property using the + :command:`install(EXPORT)` and :command:`export()` commands. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6da65b3907419df28484c570f24d0da3593a0e5a commit 6da65b3907419df28484c570f24d0da3593a0e5a Author: Stephen Kelly AuthorDate: Fri Nov 28 18:58:38 2014 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:51:34 2015 +0100 Allow export of targets with INTERFACE_SOURCES. Use the same rules for paths in source and binary dirs in installed INTERFACE_SOURCES as are used for INTERFACE_INCLUDE_DIRECTORIES. diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index 832240a..d6f148d 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -22,10 +22,6 @@ items will populate the :prop_tgt:`SOURCES` property of following arguments specify sources. Repeated calls for the same ```` append items in the order called. -Targets with :prop_tgt:`INTERFACE_SOURCES` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Arguments to ``target_sources`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Help/prop_tgt/INTERFACE_SOURCES.rst b/Help/prop_tgt/INTERFACE_SOURCES.rst index 696ee95..a224b68 100644 --- a/Help/prop_tgt/INTERFACE_SOURCES.rst +++ b/Help/prop_tgt/INTERFACE_SOURCES.rst @@ -12,10 +12,6 @@ When target dependencies are specified using :command:`target_link_libraries`, CMake will read this property from all target dependencies to determine the sources of the consumer. -Targets with ``INTERFACE_SOURCES`` may not be exported with the -:command:`export` or :command:`install(EXPORT)` commands. This limitation may be -lifted in a future version of CMake. - Contents of ``INTERFACE_SOURCES`` may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. See the :manual:`cmake-buildsystem(7)` diff --git a/Source/cmExportBuildFileGenerator.cxx b/Source/cmExportBuildFileGenerator.cxx index a28ec48..b1203dd 100644 --- a/Source/cmExportBuildFileGenerator.cxx +++ b/Source/cmExportBuildFileGenerator.cxx @@ -68,16 +68,6 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) tei != this->Exports.end(); ++tei) { cmTarget* te = *tei; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } this->GenerateImportTargetCode(os, te); te->AppendBuildInterfaceIncludes(); @@ -87,6 +77,9 @@ bool cmExportBuildFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateInterfaceProperty("INTERFACE_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); + this->PopulateInterfaceProperty("INTERFACE_SOURCES", te, + cmGeneratorExpression::BuildInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_COMPILE_DEFINITIONS", te, cmGeneratorExpression::BuildInterface, properties, missingTargets); diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index af4ce8b..71728be 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -224,7 +224,7 @@ static bool isSubDirectory(const char* a, const char* b) //---------------------------------------------------------------------------- static bool checkInterfaceDirs(const std::string &prepro, - cmTarget *target) + cmTarget *target, const std::string& prop) { const char* installDir = target->GetMakefile()->GetSafeDefinition("CMAKE_INSTALL_PREFIX"); @@ -250,20 +250,27 @@ static bool checkInterfaceDirs(const std::string &prepro, std::ostringstream e; if (genexPos != std::string::npos) { - switch (target->GetPolicyStatusCMP0041()) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - case cmPolicies::WARN: - messageType = cmake::WARNING; - e << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; - break; - case cmPolicies::OLD: - continue; - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::NEW: - hadFatalError = true; - break; // Issue fatal message. + switch (target->GetPolicyStatusCMP0041()) + { + case cmPolicies::WARN: + messageType = cmake::WARNING; + e << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0041) << "\n"; + break; + case cmPolicies::OLD: + continue; + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::NEW: + hadFatalError = true; + break; // Issue fatal message. + } + } + else + { + hadFatalError = true; } } if (cmHasLiteralPrefix(li->c_str(), "${_IMPORT_PREFIX}")) @@ -272,8 +279,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (!cmSystemTools::FileIsFullPath(li->c_str())) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains relative path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains relative path:\n" " \"" << *li << "\""; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -289,32 +296,35 @@ static bool checkInterfaceDirs(const std::string &prepro, (!inBinary || isSubDirectory(installDir, topBinaryDir)) && (!inSource || isSubDirectory(installDir, topSourceDir)); - if (!shouldContinue) + if (prop == "INTERFACE_INCLUDE_DIRECTORIES") { - switch(target->GetPolicyStatusCMP0052()) + if (!shouldContinue) { - case cmPolicies::WARN: + switch(target->GetPolicyStatusCMP0052()) { - std::ostringstream s; - s << target->GetMakefile()->GetPolicies() - ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; - s << "Directory:\n \"" << *li << "\"\nin " - "INTERFACE_INCLUDE_DIRECTORIES of target \"" - << target->GetName() << "\" is a subdirectory of the install " - "directory:\n \"" << installDir << "\"\nhowever it is also " - "a subdirectory of the " << (inBinary ? "build" : "source") - << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) - << "\"" << std::endl; - target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, - s.str()); + case cmPolicies::WARN: + { + std::ostringstream s; + s << target->GetMakefile()->GetPolicies() + ->GetPolicyWarning(cmPolicies::CMP0052) << "\n"; + s << "Directory:\n \"" << *li << "\"\nin " + "INTERFACE_INCLUDE_DIRECTORIES of target \"" + << target->GetName() << "\" is a subdirectory of the install " + "directory:\n \"" << installDir << "\"\nhowever it is also " + "a subdirectory of the " << (inBinary ? "build" : "source") + << " tree:\n \"" << (inBinary ? topBinaryDir : topSourceDir) + << "\"" << std::endl; + target->GetMakefile()->IssueMessage(cmake::AUTHOR_WARNING, + s.str()); + } + case cmPolicies::OLD: + shouldContinue = true; + break; + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::REQUIRED_IF_USED: + case cmPolicies::NEW: + break; } - case cmPolicies::OLD: - shouldContinue = true; - break; - case cmPolicies::REQUIRED_ALWAYS: - case cmPolicies::REQUIRED_IF_USED: - case cmPolicies::NEW: - break; } } if (shouldContinue) @@ -324,8 +334,8 @@ static bool checkInterfaceDirs(const std::string &prepro, } if (inBinary) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the build directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -333,8 +343,8 @@ static bool checkInterfaceDirs(const std::string &prepro, { if (inSource) { - e << "Target \"" << target->GetName() << "\" " - "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n" + e << "Target \"" << target->GetName() << "\" " << prop << + " property contains path:\n" " \"" << *li << "\"\nwhich is prefixed in the source directory."; target->GetMakefile()->IssueMessage(messageType, e.str()); } @@ -365,6 +375,46 @@ static void prefixItems(std::string &exportDirs) } //---------------------------------------------------------------------------- +void cmExportFileGenerator::PopulateSourcesInterface( + cmTargetExport *tei, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets) +{ + cmTarget *target = tei->Target; + assert(preprocessRule == cmGeneratorExpression::InstallInterface); + + const char *propName = "INTERFACE_SOURCES"; + const char *input = target->GetProperty(propName); + + if (!input) + { + return; + } + + if (!*input) + { + properties[propName] = ""; + return; + } + + std::string prepro = cmGeneratorExpression::Preprocess(input, + preprocessRule, + true); + if (!prepro.empty()) + { + this->ResolveTargetsInGeneratorExpressions(prepro, target, + missingTargets); + + if (!checkInterfaceDirs(prepro, target, propName)) + { + return; + } + properties[propName] = prepro; + } +} + +//---------------------------------------------------------------------------- void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( cmTargetExport *tei, cmGeneratorExpression::PreprocessContext preprocessRule, @@ -424,7 +474,7 @@ void cmExportFileGenerator::PopulateIncludeDirectoriesInterface( this->ResolveTargetsInGeneratorExpressions(prepro, target, missingTargets); - if (!checkInterfaceDirs(prepro, target)) + if (!checkInterfaceDirs(prepro, target, propName)) { return; } diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h index 919924e..b6f4166 100644 --- a/Source/cmExportFileGenerator.h +++ b/Source/cmExportFileGenerator.h @@ -139,6 +139,11 @@ protected: cmGeneratorExpression::PreprocessContext preprocessRule, ImportPropertyMap &properties, std::vector &missingTargets); + void PopulateSourcesInterface( + cmTargetExport *target, + cmGeneratorExpression::PreprocessContext preprocessRule, + ImportPropertyMap &properties, + std::vector &missingTargets); void SetImportLinkInterface(const std::string& config, std::string const& suffix, diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index 98ed818..a0d9013 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -123,6 +123,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) bool require2_8_12 = false; bool require3_0_0 = false; + bool require3_1_0 = false; bool requiresConfigFiles = false; // Create all the imported targets. for(std::vector::const_iterator @@ -131,17 +132,6 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { cmTarget* te = (*tei)->Target; - if (te->GetProperty("INTERFACE_SOURCES")) - { - std::ostringstream e; - e << "Target \"" - << te->GetName() - << "\" has a populated INTERFACE_SOURCES property. This is not " - "currently supported."; - cmSystemTools::Error(e.str().c_str()); - return false; - } - requiresConfigFiles = requiresConfigFiles || te->GetType() != cmTarget::INTERFACE_LIBRARY; @@ -152,6 +142,9 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->PopulateIncludeDirectoriesInterface(*tei, cmGeneratorExpression::InstallInterface, properties, missingTargets); + this->PopulateSourcesInterface(*tei, + cmGeneratorExpression::InstallInterface, + properties, missingTargets); this->PopulateInterfaceProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES", te, cmGeneratorExpression::InstallInterface, @@ -190,6 +183,13 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { require3_0_0 = true; } + if(te->GetProperty("INTERFACE_SOURCES")) + { + // We can only generate INTERFACE_SOURCES in CMake 3.3, but CMake 3.1 + // can consume them. + require3_1_0 = true; + } + this->PopulateInterfaceProperty("INTERFACE_POSITION_INDEPENDENT_CODE", te, properties); this->PopulateCompatibleInterfaceProperties(te, properties); @@ -197,7 +197,11 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) this->GenerateInterfaceProperties(te, os, properties); } - if (require3_0_0) + if (require3_1_0) + { + this->GenerateRequiredCMakeVersion(os, "3.1.0"); + } + else if (require3_0_0) { this->GenerateRequiredCMakeVersion(os, "3.0.0"); } diff --git a/Tests/ExportImport/Export/Interface/CMakeLists.txt b/Tests/ExportImport/Export/Interface/CMakeLists.txt index 523fc29..00a5375 100644 --- a/Tests/ExportImport/Export/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Export/Interface/CMakeLists.txt @@ -29,7 +29,17 @@ target_compile_features(use_auto_type INTERFACE cxx_auto_type) add_library(use_c_restrict INTERFACE) target_compile_features(use_c_restrict INTERFACE c_restrict) -install(TARGETS headeronly sharediface use_auto_type use_c_restrict +add_library(source_target INTERFACE) +target_sources(source_target INTERFACE + $ + $/src/source_target_for_install.cpp> +) +install(FILES + source_target_for_install.cpp + DESTINATION src +) + +install(TARGETS headeronly sharediface use_auto_type use_c_restrict source_target EXPORT expInterface ) install(TARGETS sharedlib diff --git a/Tests/ExportImport/Export/Interface/source_target.cpp b/Tests/ExportImport/Export/Interface/source_target.cpp new file mode 100644 index 0000000..037191c --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target.cpp @@ -0,0 +1,13 @@ + +#ifndef USE_FROM_BUILD_DIR +#error Expected define USE_FROM_BUILD_DIR +#endif + +#ifdef USE_FROM_INSTALL_DIR +#error Unexpected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Export/Interface/source_target_for_install.cpp b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp new file mode 100644 index 0000000..64514ed --- /dev/null +++ b/Tests/ExportImport/Export/Interface/source_target_for_install.cpp @@ -0,0 +1,13 @@ + +#ifdef USE_FROM_BUILD_DIR +#error Unexpected define USE_FROM_BUILD_DIR +#endif + +#ifndef USE_FROM_INSTALL_DIR +#error Expected define USE_FROM_INSTALL_DIR +#endif + +int source_symbol() +{ + return 42; +} diff --git a/Tests/ExportImport/Import/Interface/CMakeLists.txt b/Tests/ExportImport/Import/Interface/CMakeLists.txt index 4028405..51d518e 100644 --- a/Tests/ExportImport/Import/Interface/CMakeLists.txt +++ b/Tests/ExportImport/Import/Interface/CMakeLists.txt @@ -82,6 +82,14 @@ endmacro() do_try_compile(bld) +add_executable(source_target_test_bld source_target_test.cpp) +target_link_libraries(source_target_test_bld bld::source_target) +target_compile_definitions(source_target_test_bld PRIVATE USE_FROM_BUILD_DIR) + +add_executable(source_target_test_exp source_target_test.cpp) +target_link_libraries(source_target_test_exp exp::source_target) +target_compile_definitions(source_target_test_exp PRIVATE USE_FROM_INSTALL_DIR) + add_executable(headeronlytest_exp headeronlytest.cpp) target_link_libraries(headeronlytest_exp exp::headeronly) diff --git a/Tests/ExportImport/Import/Interface/source_target_test.cpp b/Tests/ExportImport/Import/Interface/source_target_test.cpp new file mode 100644 index 0000000..0e8ec5f --- /dev/null +++ b/Tests/ExportImport/Import/Interface/source_target_test.cpp @@ -0,0 +1,7 @@ + +extern int source_symbol(); + +int main() +{ + return source_symbol() - 42; +} diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 71507b8..2de82a7 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -192,6 +192,9 @@ add_RunCMake_test(ExternalProject) set(IfacePaths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES) add_RunCMake_test(IfacePaths_INCLUDE_DIRECTORIES TEST_DIR IfacePaths) +set(IfacePaths_SOURCES_ARGS -DTEST_PROP=SOURCES) +add_RunCMake_test(IfacePaths_SOURCES TEST_DIR IfacePaths) + if(RPMBUILD) add_RunCMake_test(CPackRPM) endif() diff --git a/Tests/RunCMake/TargetSources/ExportInstall-result.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-result.txt similarity index 100% rename from Tests/RunCMake/TargetSources/ExportInstall-result.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-result.txt diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..239c069 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/prefix/BinInInstallPrefix-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..e931a01 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/BinaryDirectoryInInterface-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake index 67ee7de..7001f3f 100644 --- a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake +++ b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_BINARY_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_BINARY_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake b/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake index fab7717..f5f3005 100644 --- a/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake +++ b/Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake @@ -1,6 +1,11 @@ enable_language(CXX) add_library(testTarget empty.cpp) -target_include_directories(testTarget INTERFACE "${CMAKE_INSTALL_PREFIX}/dir") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/dir") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_INSTALL_PREFIX}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt new file mode 100644 index 0000000..c79d598 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/InstallInBinDir-build/empty.cpp" + + which is prefixed in the build directory. diff --git a/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt new file mode 100644 index 0000000..e71921e --- /dev/null +++ b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/copy/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt new file mode 100644 index 0000000..2311af9 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" contains relative path in its INTERFACE_SOURCES: + + "empty.cpp" diff --git a/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake b/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake index 070a381..489c3a1 100644 --- a/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake +++ b/Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake @@ -2,7 +2,12 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") + +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<1:foo>") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "$<1:empty.cpp>") +endif() add_library(userTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") target_link_libraries(userTarget testTarget) diff --git a/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..f0f002c --- /dev/null +++ b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt @@ -0,0 +1,4 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains relative path: + + "empty.cpp" diff --git a/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake b/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake index 4c4727d..e974aac 100644 --- a/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake +++ b/Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake @@ -2,8 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") - +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib ) diff --git a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt new file mode 100644 index 0000000..c5157ad --- /dev/null +++ b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake index f814a3c..d80cbec 100644 --- a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake +++ b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake @@ -2,7 +2,11 @@ enable_language(CXX) add_library(testTarget "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") -target_include_directories(testTarget INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/foo") +if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES) + set_property(TARGET testTarget PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/foo") +else() + set_property(TARGET testTarget PROPERTY INTERFACE_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/empty.cpp") +endif() install(TARGETS testTarget EXPORT testTargets DESTINATION lib diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-result.txt similarity index 100% copy from Tests/RunCMake/TargetSources/ExportBuild-result.txt copy to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-result.txt diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt new file mode 100644 index 0000000..48f2485 --- /dev/null +++ b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt @@ -0,0 +1,6 @@ +CMake Error in CMakeLists.txt: + Target "testTarget" INTERFACE_SOURCES property contains path: + + ".*Tests/RunCMake/IfacePaths_SOURCES/prefix/src/empty.cpp" + + which is prefixed in the source directory. diff --git a/Tests/RunCMake/IfacePaths/export-NOWARN.cmake b/Tests/RunCMake/IfacePaths/export-NOWARN.cmake index 50720a0..592572c 100644 --- a/Tests/RunCMake/IfacePaths/export-NOWARN.cmake +++ b/Tests/RunCMake/IfacePaths/export-NOWARN.cmake @@ -1,19 +1,34 @@ enable_language(CXX) add_library(foo empty.cpp) + set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $<0:>/include/subdir) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $<0:>/include/subdir/empty.cpp) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include/subdir>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $>) set_property(TARGET foo APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES $/include>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $>) +set_property(TARGET foo APPEND PROPERTY INTERFACE_SOURCES $/include/subdir/empty.cpp>) # target_include_directories(foo INTERFACE include/subdir) # Does and should warn. INSTALL_INTERFACE must not list src dir paths. target_include_directories(foo INTERFACE $<0:>/include/subdir) # Does not and should not should warn, because it starts with a genex. target_include_directories(foo INTERFACE $/include/subdir) +target_sources(foo INTERFACE $<0:>/include/subdir/empty.cpp) +target_sources(foo INTERFACE $/include/subdir/empty.cpp) target_include_directories(foo INTERFACE $) target_include_directories(foo INTERFACE $>) +target_sources(foo INTERFACE $) +target_sources(foo INTERFACE $>) + +install(FILES include/subdir/empty.cpp + DESTINATION include/subdir +) install(TARGETS foo EXPORT FooTargets DESTINATION lib) install(EXPORT FooTargets DESTINATION lib/cmake) diff --git a/Tests/RunCMake/TargetSources/ExportBuild-result.txt b/Tests/RunCMake/TargetSources/ExportBuild-result.txt index d00491f..573541a 100644 --- a/Tests/RunCMake/TargetSources/ExportBuild-result.txt +++ b/Tests/RunCMake/TargetSources/ExportBuild-result.txt @@ -1 +1 @@ -1 +0 diff --git a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt b/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportBuild-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt b/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt deleted file mode 100644 index 0d65a55..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall-stderr.txt +++ /dev/null @@ -1 +0,0 @@ -CMake Error: Target "iface" has a populated INTERFACE_SOURCES property. This is not currently supported. diff --git a/Tests/RunCMake/TargetSources/ExportInstall.cmake b/Tests/RunCMake/TargetSources/ExportInstall.cmake deleted file mode 100644 index 8e7c9f9..0000000 --- a/Tests/RunCMake/TargetSources/ExportInstall.cmake +++ /dev/null @@ -1,6 +0,0 @@ - -add_library(iface INTERFACE) -target_sources(iface INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/empty_1.cpp") - -install(TARGETS iface EXPORT exp) -install(EXPORT exp DESTINATION cmake) diff --git a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake index 1b4ef0b..4416ef9 100644 --- a/Tests/RunCMake/TargetSources/RunCMakeTest.cmake +++ b/Tests/RunCMake/TargetSources/RunCMakeTest.cmake @@ -10,4 +10,3 @@ endif() run_cmake(CMP0026-LOCATION) run_cmake(RelativePathInInterface) run_cmake(ExportBuild) -run_cmake(ExportInstall) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=736bcb9664b714b91e8a2a573451e0453716f4da commit 736bcb9664b714b91e8a2a573451e0453716f4da Author: Stephen Kelly AuthorDate: Sun Nov 30 13:54:18 2014 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 00:51:30 2015 +0100 Tests: Move IfacePaths test stderr files. Rename the files with a property-specific name, so that additional properties can be easily tested. diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/InstallInBinDir-stderr.txt rename to Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt b/Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr.txt rename to Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr.txt b/Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr.txt rename to Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake index 8febf18..489e3df 100644 --- a/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake +++ b/Tests/RunCMake/IfacePaths/RunCMakeTest.cmake @@ -2,6 +2,7 @@ include(RunCMake) macro(run_cmake test) list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP}) + set(RunCMake-stderr-file ${test}-stderr_${TEST_PROP}.txt) _run_cmake(${test}) endmacro() diff --git a/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt b/Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr.txt rename to Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt diff --git a/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt b/Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt similarity index 100% rename from Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr.txt rename to Tests/RunCMake/IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Wed Feb 11 00:01:12 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Wed, 11 Feb 2015 00:01:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1082-g1979330 Message-ID: <20150211050112.1B983AAA4A@public.kitware.com> 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 197933018863c4845262dd6fb47e4edf721445f1 (commit) from cbffbf7437ea2d571e26bedee032c23be9347d94 (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=197933018863c4845262dd6fb47e4edf721445f1 commit 197933018863c4845262dd6fb47e4edf721445f1 Author: Kitware Robot AuthorDate: Wed Feb 11 00:01:09 2015 -0500 Commit: Kitware Robot CommitDate: Wed Feb 11 00:01:09 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 03df29d..62cc2b6 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150210) +set(CMake_VERSION_PATCH 20150211) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 03:41:48 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 03:41:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1211-g6c29803 Message-ID: <20150211084148.BA08F513B@public.kitware.com> 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 6c298034a8dabeea546317e152c7167924839c39 (commit) via 348155f1314d2538353b6936f76dc0466bd60f35 (commit) via df38fac03da0d9c05d3c613f40f1421088ba8b66 (commit) from db0f1df7bada28ea675fb563803786e7251c42b9 (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=6c298034a8dabeea546317e152c7167924839c39 commit 6c298034a8dabeea546317e152c7167924839c39 Merge: db0f1df 348155f Author: Stephen Kelly AuthorDate: Wed Feb 11 03:41:47 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 03:41:47 2015 -0500 Merge topic 'use-cmRange' into next 348155f1 Resolve warning. df38fac0 Remove unused variable. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=348155f1314d2538353b6936f76dc0466bd60f35 commit 348155f1314d2538353b6936f76dc0466bd60f35 Author: Stephen Kelly AuthorDate: Wed Feb 11 09:41:15 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 09:41:15 2015 +0100 Resolve warning. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 851b105..430e25e 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -122,13 +122,15 @@ struct Range const_iterator begin() const { return Begin; } const_iterator end() const { return End; } bool empty() const { return std::distance(Begin, End) == 0; } - Range& advance(size_t amount) + template + Range& advance(Distance amount) { std::advance(Begin, amount); return *this; } - Range& retreat(size_t amount) + template + Range& retreat(Distance amount) { std::advance(End, -amount); return *this; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=df38fac03da0d9c05d3c613f40f1421088ba8b66 commit df38fac03da0d9c05d3c613f40f1421088ba8b66 Author: Stephen Kelly AuthorDate: Wed Feb 11 09:30:49 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 09:30:49 2015 +0100 Remove unused variable. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index ecdd4a0..e09a934 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -254,7 +254,6 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, if (!this->Depth) { std::string name = this->Args[0]; - std::vector::size_type cc; name += "("; if (!this->Args.empty()) { ----------------------------------------------------------------------- Summary of changes: Source/cmAlgorithms.h | 6 ++++-- Source/cmMacroCommand.cxx | 1 - 2 files changed, 4 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:27:30 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:27:30 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1213-g4367669 Message-ID: <20150211142731.1DE11AA27F@public.kitware.com> 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 4367669ad48ddd7dafabeb8b89e1a4c01189d376 (commit) via 95f070b6213379f13e37f23af4833e76703a2399 (commit) from 6c298034a8dabeea546317e152c7167924839c39 (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=4367669ad48ddd7dafabeb8b89e1a4c01189d376 commit 4367669ad48ddd7dafabeb8b89e1a4c01189d376 Merge: 6c29803 95f070b Author: Brad King AuthorDate: Wed Feb 11 09:27:29 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:27:29 2015 -0500 Merge topic 'use-cmRange' into next 95f070b6 cmAlgorithms: Use signed pointer-size type for advance/retreat http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=95f070b6213379f13e37f23af4833e76703a2399 commit 95f070b6213379f13e37f23af4833e76703a2399 Author: Brad King AuthorDate: Wed Feb 11 09:26:35 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 09:26:35 2015 -0500 cmAlgorithms: Use signed pointer-size type for advance/retreat The template approach caused the unsigned "-" in retreat to be treated as a very large advancement. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 430e25e..ad2b9c1 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -122,15 +122,13 @@ struct Range const_iterator begin() const { return Begin; } const_iterator end() const { return End; } bool empty() const { return std::distance(Begin, End) == 0; } - template - Range& advance(Distance amount) + Range& advance(cmIML_INT_intptr_t amount) { std::advance(Begin, amount); return *this; } - template - Range& retreat(Distance amount) + Range& retreat(cmIML_INT_intptr_t amount) { std::advance(End, -amount); return *this; ----------------------------------------------------------------------- Summary of changes: Source/cmAlgorithms.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:32:23 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:32:23 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1215-g7b5cca3 Message-ID: <20150211143223.7CD67AAA8A@public.kitware.com> 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 7b5cca3b2f6a29d570a0ad74ffe242661a930a92 (commit) via 68e2abd3912d2ac859c161e9b843d878a7aa76ef (commit) from 4367669ad48ddd7dafabeb8b89e1a4c01189d376 (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=7b5cca3b2f6a29d570a0ad74ffe242661a930a92 commit 7b5cca3b2f6a29d570a0ad74ffe242661a930a92 Merge: 4367669 68e2abd Author: Brad King AuthorDate: Wed Feb 11 09:32:22 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:32:22 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' into next 68e2abd3 CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=68e2abd3912d2ac859c161e9b843d878a7aa76ef commit 68e2abd3912d2ac859c161e9b843d878a7aa76ef Author: Domen Vrankar AuthorDate: Tue Feb 10 23:03:06 2015 +0100 Commit: Brad King CommitDate: Wed Feb 11 09:31:09 2015 -0500 CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW The file(GLOB_RECURSE) call added by commit 3ec02547 (CPackRPM: Allow multiple path relocation prefixes for one package, 2015-01-21) should not follow directory symlinks, so make sure CMP0009 is set to NEW. diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index 214d655..c53caa1 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -423,6 +423,10 @@ # Author: Eric Noulard with the help of Alexander Neundorf. +# prevent older policies from interfearing with this script +cmake_policy(PUSH) +cmake_policy(VERSION ${CMAKE_VERSION}) + function(cpack_rpm_prepare_relocation_paths) # set appropriate prefix, remove possible trailing slash and convert backslashes to slashes if(CPACK_RPM_${CPACK_RPM_PACKAGE_COMPONENT}_PACKAGE_PREFIX) @@ -1308,3 +1312,6 @@ if(CPACK_RPM_PACKAGE_DESCRIPTION_) else() unset(CPACK_RPM_PACKAGE_DESCRIPTION) endif() + +# restore previous policies +cmake_policy(POP) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:56:22 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:56:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1217-ge54b99a Message-ID: <20150211145622.9D58CAAC76@public.kitware.com> 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 e54b99aa321c4290e0dce1c547107642005e78b4 (commit) via 02fc84777922c6de9923e3f5ef0ac4d3bd7b1bc4 (commit) from 7b5cca3b2f6a29d570a0ad74ffe242661a930a92 (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=e54b99aa321c4290e0dce1c547107642005e78b4 commit e54b99aa321c4290e0dce1c547107642005e78b4 Merge: 7b5cca3 02fc847 Author: Brad King AuthorDate: Wed Feb 11 09:56:21 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:56:21 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' into next 02fc8477 fixup! CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=02fc84777922c6de9923e3f5ef0ac4d3bd7b1bc4 commit 02fc84777922c6de9923e3f5ef0ac4d3bd7b1bc4 Author: Brad King AuthorDate: Wed Feb 11 09:33:51 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 09:33:51 2015 -0500 fixup! CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index c53caa1..7516393 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -423,10 +423,6 @@ # Author: Eric Noulard with the help of Alexander Neundorf. -# prevent older policies from interfearing with this script -cmake_policy(PUSH) -cmake_policy(VERSION ${CMAKE_VERSION}) - function(cpack_rpm_prepare_relocation_paths) # set appropriate prefix, remove possible trailing slash and convert backslashes to slashes if(CPACK_RPM_${CPACK_RPM_PACKAGE_COMPONENT}_PACKAGE_PREFIX) @@ -459,7 +455,12 @@ function(cpack_rpm_prepare_relocation_paths) endforeach() # warn about all the paths that are not relocatable - file(GLOB_RECURSE FILE_PATHS_ "${WDIR}/*") + cmake_policy(PUSH) + # Tell file(GLOB_RECURSE) not to follow directory symlinks + # even if the project does not set this policy to NEW. + cmake_policy(SET CMP0009 NEW) + file(GLOB_RECURSE FILE_PATHS_ "${WDIR}/*") + cmake_policy(POP) foreach(TMP_PATH ${FILE_PATHS_}) string(LENGTH "${WDIR}" WDIR_LEN) string(SUBSTRING "${TMP_PATH}" ${WDIR_LEN} -1 TMP_PATH) @@ -1312,6 +1313,3 @@ if(CPACK_RPM_PACKAGE_DESCRIPTION_) else() unset(CPACK_RPM_PACKAGE_DESCRIPTION) endif() - -# restore previous policies -cmake_policy(POP) ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:56:47 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:56:47 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1219-g0e9460a Message-ID: <20150211145648.045A0AAC7B@public.kitware.com> 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 0e9460a458bb4b5e02594a0a2f4579845f77d37b (commit) via be36bfd65d53962c7ba975382bd911e0857f6a33 (commit) from e54b99aa321c4290e0dce1c547107642005e78b4 (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=0e9460a458bb4b5e02594a0a2f4579845f77d37b commit 0e9460a458bb4b5e02594a0a2f4579845f77d37b Merge: e54b99a be36bfd Author: Brad King AuthorDate: Wed Feb 11 09:56:47 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:56:47 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' into next be36bfd6 CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=be36bfd65d53962c7ba975382bd911e0857f6a33 commit be36bfd65d53962c7ba975382bd911e0857f6a33 Author: Domen Vrankar AuthorDate: Tue Feb 10 23:03:06 2015 +0100 Commit: Brad King CommitDate: Wed Feb 11 09:56:27 2015 -0500 CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW The file(GLOB_RECURSE) call added by commit 3ec02547 (CPackRPM: Allow multiple path relocation prefixes for one package, 2015-01-21) should not follow directory symlinks, so make sure CMP0009 is set to NEW. diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index 214d655..7516393 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -455,7 +455,12 @@ function(cpack_rpm_prepare_relocation_paths) endforeach() # warn about all the paths that are not relocatable - file(GLOB_RECURSE FILE_PATHS_ "${WDIR}/*") + cmake_policy(PUSH) + # Tell file(GLOB_RECURSE) not to follow directory symlinks + # even if the project does not set this policy to NEW. + cmake_policy(SET CMP0009 NEW) + file(GLOB_RECURSE FILE_PATHS_ "${WDIR}/*") + cmake_policy(POP) foreach(TMP_PATH ${FILE_PATHS_}) string(LENGTH "${WDIR}" WDIR_LEN) string(SUBSTRING "${TMP_PATH}" ${WDIR_LEN} -1 TMP_PATH) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:19 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:19 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1084-g939167a Message-ID: <20150211145919.EB1C7AAD33@public.kitware.com> 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 939167a65cf7e057ac98c63f8e3ff0acd4129c28 (commit) via eeb2831b5f35af1ec8a65be343e754ff1c29550d (commit) from 197933018863c4845262dd6fb47e4edf721445f1 (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=939167a65cf7e057ac98c63f8e3ff0acd4129c28 commit 939167a65cf7e057ac98c63f8e3ff0acd4129c28 Merge: 1979330 eeb2831 Author: Brad King AuthorDate: Wed Feb 11 09:59:18 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:18 2015 -0500 Merge topic 'makefile-missing-comment' eeb2831b Makefile: Fix regression in target-bound custom command COMMENT output ----------------------------------------------------------------------- Summary of changes: Source/cmLocalUnixMakefileGenerator3.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:22 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1086-g0e6af85 Message-ID: <20150211145922.1B3EDAAD38@public.kitware.com> 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 0e6af852637ada6b2343f1cbf1ac5ccf0b1b3c76 (commit) via f3e9eeedf43f783c02b2a2a10fc0e632eaf7cfd0 (commit) from 939167a65cf7e057ac98c63f8e3ff0acd4129c28 (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=0e6af852637ada6b2343f1cbf1ac5ccf0b1b3c76 commit 0e6af852637ada6b2343f1cbf1ac5ccf0b1b3c76 Merge: 939167a f3e9eee Author: Brad King AuthorDate: Wed Feb 11 09:59:20 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:20 2015 -0500 Merge topic 'try_compile-shorter-names' f3e9eeed try_compile: Use shorter test executable name with consistent length ----------------------------------------------------------------------- Summary of changes: Source/cmCoreTryCompile.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:24 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1088-gdcc5de9 Message-ID: <20150211145924.2E8BBAAD35@public.kitware.com> 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 dcc5de9c4b7dbc17229d9f11aee978f6828d932d (commit) via e5ef9271a1bb1a0779132beba4cf2b0bae13d6cc (commit) from 0e6af852637ada6b2343f1cbf1ac5ccf0b1b3c76 (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=dcc5de9c4b7dbc17229d9f11aee978f6828d932d commit dcc5de9c4b7dbc17229d9f11aee978f6828d932d Merge: 0e6af85 e5ef927 Author: Brad King AuthorDate: Wed Feb 11 09:59:22 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:22 2015 -0500 Merge topic 'FindRuby-windows-x64' e5ef9271 FindRuby: Fix finding 64-bit Ruby on Windows ----------------------------------------------------------------------- Summary of changes: Modules/FindRuby.cmake | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:25 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:25 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1090-gf3c0c61 Message-ID: <20150211145925.E55EEAAC7E@public.kitware.com> 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 f3c0c6140360d0591c5163e7a3fcdf0040f4690f (commit) via 85fd62ee91b7a8dcb929eee36424886bd0b59592 (commit) from dcc5de9c4b7dbc17229d9f11aee978f6828d932d (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=f3c0c6140360d0591c5163e7a3fcdf0040f4690f commit f3c0c6140360d0591c5163e7a3fcdf0040f4690f Merge: dcc5de9 85fd62e Author: Brad King AuthorDate: Wed Feb 11 09:59:24 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:24 2015 -0500 Merge topic 'bootstrap-sphinx-qthelp' 85fd62ee bootstrap: Add --sphinx-qthelp option to enable qthelp doc generation ----------------------------------------------------------------------- Summary of changes: bootstrap | 8 ++++++++ 1 file changed, 8 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:27 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:27 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1092-g79ea7e6 Message-ID: <20150211145927.A1A23AAD3C@public.kitware.com> 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 79ea7e6d087924ff1c898e727b6e83944f0f689d (commit) via a27c13f4cad2247833d048ec5e334861943fd4d9 (commit) from f3c0c6140360d0591c5163e7a3fcdf0040f4690f (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=79ea7e6d087924ff1c898e727b6e83944f0f689d commit 79ea7e6d087924ff1c898e727b6e83944f0f689d Merge: f3c0c61 a27c13f Author: Brad King AuthorDate: Wed Feb 11 09:59:26 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:26 2015 -0500 Merge topic 'BundleUtilities-install_name_tool-exit' a27c13f4 BundleUtilities: Teach fixup_bundle to check install_name_tool result ----------------------------------------------------------------------- Summary of changes: Modules/BundleUtilities.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:29 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1094-gc1772e5 Message-ID: <20150211145929.627CFAAD41@public.kitware.com> 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 c1772e5fb25b798a99cdcc820272ca9457123eb6 (commit) via 56cb4a6c3a71f1a3d3e0dccbdc593bc58d76c5ee (commit) from 79ea7e6d087924ff1c898e727b6e83944f0f689d (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=c1772e5fb25b798a99cdcc820272ca9457123eb6 commit c1772e5fb25b798a99cdcc820272ca9457123eb6 Merge: 79ea7e6 56cb4a6 Author: Brad King AuthorDate: Wed Feb 11 09:59:28 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:28 2015 -0500 Merge topic 'fix_timeout_docs' 56cb4a6c Help: Fix variable reference in TIMEOUT test property docs ----------------------------------------------------------------------- Summary of changes: Help/prop_test/TIMEOUT.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 09:59:31 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 09:59:31 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1100-g108e94e Message-ID: <20150211145931.67475AAD42@public.kitware.com> 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 108e94ecf11d33f3d87ea3c09cfc7961aa785641 (commit) via f7e33820b628f39ae2e0ba3d25279545dfe18f73 (commit) via 6da65b3907419df28484c570f24d0da3593a0e5a (commit) via 736bcb9664b714b91e8a2a573451e0453716f4da (commit) via d9f8390db6ab0d776eb39b840a3b096b5422229f (commit) via cc1520947608f5224a4fdfa94b5cb07e19e23600 (commit) from c1772e5fb25b798a99cdcc820272ca9457123eb6 (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=108e94ecf11d33f3d87ea3c09cfc7961aa785641 commit 108e94ecf11d33f3d87ea3c09cfc7961aa785641 Merge: c1772e5 f7e3382 Author: Brad King AuthorDate: Wed Feb 11 09:59:30 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 09:59:30 2015 -0500 Merge topic 'export-interface-source-files' f7e33820 Add release notes for export-interface-source-files. 6da65b39 Allow export of targets with INTERFACE_SOURCES. 736bcb96 Tests: Move IfacePaths test stderr files. d9f8390d Tests: Run IfacePaths tests with a parameter. cc152094 Tests: Split part of include_directories test to a generic location. ----------------------------------------------------------------------- Summary of changes: Help/command/target_sources.rst | 4 - Help/prop_tgt/INTERFACE_SOURCES.rst | 4 - Help/release/dev/export-interface-source-files.rst | 6 + Source/cmExportBuildFileGenerator.cxx | 13 +- Source/cmExportFileGenerator.cxx | 136 +++++++++++++------ Source/cmExportFileGenerator.h | 5 + Source/cmExportInstallFileGenerator.cxx | 28 ++-- Tests/ExportImport/Export/Interface/CMakeLists.txt | 12 +- .../Export/Interface/source_target.cpp | 13 ++ .../Export/Interface/source_target_for_install.cpp | 13 ++ Tests/ExportImport/Import/Interface/CMakeLists.txt | 8 ++ .../Import/Interface/source_target_test.cpp | 7 + Tests/RunCMake/CMakeLists.txt | 6 + .../BinInInstallPrefix-CMP0052-NEW-result.txt} | 0 ...fix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../BinInInstallPrefix-CMP0052-OLD-result.txt | 0 .../BinInInstallPrefix-CMP0052-WARN-result.txt | 0 ...ix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} | 6 +- .../BinInInstallPrefix-result.txt} | 0 .../BinInInstallPrefix-stderr_SOURCES.txt | 6 + .../BinaryDirectoryInInterface-result.txt} | 0 ...toryInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../BinaryDirectoryInInterface-stderr_SOURCES.txt | 6 + .../IfacePaths/BinaryDirectoryInInterface.cmake | 15 +++ .../CMakeLists.txt | 0 .../DirInInstallPrefix-result.txt | 0 Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake | 14 ++ .../InstallInBinDir-result.txt} | 0 ...InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../IfacePaths/InstallInBinDir-stderr_SOURCES.txt | 6 + .../InstallInSrcDir-result.txt} | 0 ...InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../IfacePaths/InstallInSrcDir-stderr_SOURCES.txt | 6 + .../InstallPrefixInInterface-result.txt | 0 .../InstallPrefixInInterface.cmake | 0 .../InstallToPrefixInSrcDirInSource-result.txt | 0 .../InstallToPrefixInSrcDirOutOfSource-result.txt | 0 .../RelativePathInGenex-result.txt} | 0 ...tivePathInGenex-stderr_INCLUDE_DIRECTORIES.txt} | 0 .../RelativePathInGenex-stderr_SOURCES.txt | 4 + .../RunCMake/IfacePaths/RelativePathInGenex.cmake | 13 ++ .../RelativePathInInterface-result.txt} | 0 ...PathInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 0 .../RelativePathInInterface-stderr_SOURCES.txt | 4 + .../IfacePaths/RelativePathInInterface.cmake | 14 ++ .../RunCMakeTest.cmake | 42 +++--- .../SourceDirectoryInInterface-result.txt} | 0 ...toryInInterface-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../SourceDirectoryInInterface-stderr_SOURCES.txt | 6 + .../IfacePaths/SourceDirectoryInInterface.cmake | 15 +++ .../SrcInInstallPrefix-CMP0052-NEW-result.txt} | 0 ...fix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} | 2 +- .../SrcInInstallPrefix-CMP0052-OLD-result.txt | 0 .../SrcInInstallPrefix-CMP0052-WARN-result.txt | 0 ...ix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} | 6 +- .../SrcInInstallPrefix-result.txt} | 0 .../SrcInInstallPrefix-stderr_SOURCES.txt | 6 + Tests/RunCMake/{CMP0004 => IfacePaths}/empty.cpp | 0 .../export-NOWARN-result.txt | 0 .../export-NOWARN.cmake | 15 +++ .../RunCMake/TargetSources/ExportBuild-result.txt | 2 +- .../RunCMake/TargetSources/ExportBuild-stderr.txt | 1 - .../TargetSources/ExportInstall-result.txt | 1 - .../TargetSources/ExportInstall-stderr.txt | 1 - Tests/RunCMake/TargetSources/ExportInstall.cmake | 6 - Tests/RunCMake/TargetSources/RunCMakeTest.cmake | 1 - .../BinInInstallPrefix-CMP0052-NEW-result.txt | 1 - .../BinaryDirectoryInInterface-result.txt | 1 - .../BinaryDirectoryInInterface.cmake | 11 -- Tests/RunCMake/include_directories/CMakeLists.txt | 5 +- .../include_directories/DirInInstallPrefix.cmake | 9 -- .../include_directories/InstallInBinDir-result.txt | 1 - .../include_directories/InstallInSrcDir-result.txt | 1 - .../RelativePathInGenex-result.txt | 1 - .../include_directories/RelativePathInGenex.cmake | 8 -- .../RelativePathInInterface-result.txt | 1 - .../RelativePathInInterface.cmake | 11 -- .../include_directories/RunCMakeTest.cmake | 141 -------------------- .../SourceDirectoryInInterface-result.txt | 1 - .../SourceDirectoryInInterface.cmake | 11 -- .../SrcInInstallPrefix-CMP0052-NEW-result.txt | 1 - 81 files changed, 349 insertions(+), 318 deletions(-) create mode 100644 Help/release/dev/export-interface-source-files.rst create mode 100644 Tests/ExportImport/Export/Interface/source_target.cpp create mode 100644 Tests/ExportImport/Export/Interface/source_target_for_install.cpp create mode 100644 Tests/ExportImport/Import/Interface/source_target_test.cpp copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/BinInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{include_directories/BinInInstallPrefix-CMP0052-NEW-stderr.txt => IfacePaths/BinInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} (60%) rename Tests/RunCMake/{include_directories => IfacePaths}/BinInInstallPrefix-CMP0052-OLD-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/BinInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{include_directories/BinInInstallPrefix-CMP0052-WARN-stderr.txt => IfacePaths/BinInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} (66%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/BinInInstallPrefix-result.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/BinInInstallPrefix-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/BinaryDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/BinaryDirectoryInInterface-stderr.txt => IfacePaths/BinaryDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt} (64%) create mode 100644 Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/BinaryDirectoryInInterface.cmake copy Tests/RunCMake/{include_directories => IfacePaths}/CMakeLists.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/DirInInstallPrefix-result.txt (100%) create mode 100644 Tests/RunCMake/IfacePaths/DirInInstallPrefix.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/InstallInBinDir-result.txt} (100%) rename Tests/RunCMake/{include_directories/InstallInBinDir-stderr.txt => IfacePaths/InstallInBinDir-stderr_INCLUDE_DIRECTORIES.txt} (65%) create mode 100644 Tests/RunCMake/IfacePaths/InstallInBinDir-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/InstallInSrcDir-result.txt} (100%) rename Tests/RunCMake/{include_directories/InstallInSrcDir-stderr.txt => IfacePaths/InstallInSrcDir-stderr_INCLUDE_DIRECTORIES.txt} (70%) create mode 100644 Tests/RunCMake/IfacePaths/InstallInSrcDir-stderr_SOURCES.txt rename Tests/RunCMake/{include_directories => IfacePaths}/InstallPrefixInInterface-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/InstallPrefixInInterface.cmake (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/InstallToPrefixInSrcDirInSource-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/InstallToPrefixInSrcDirOutOfSource-result.txt (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/RelativePathInGenex-result.txt} (100%) rename Tests/RunCMake/{include_directories/RelativePathInGenex-stderr.txt => IfacePaths/RelativePathInGenex-stderr_INCLUDE_DIRECTORIES.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInGenex-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInGenex.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/RelativePathInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/RelativePathInInterface-stderr.txt => IfacePaths/RelativePathInInterface-stderr_INCLUDE_DIRECTORIES.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/RelativePathInInterface.cmake copy Tests/RunCMake/{include_directories => IfacePaths}/RunCMakeTest.cmake (86%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/SourceDirectoryInInterface-result.txt} (100%) rename Tests/RunCMake/{include_directories/SourceDirectoryInInterface-stderr.txt => IfacePaths/SourceDirectoryInInterface-stderr_INCLUDE_DIRECTORIES.txt} (78%) create mode 100644 Tests/RunCMake/IfacePaths/SourceDirectoryInInterface-stderr_SOURCES.txt create mode 100644 Tests/RunCMake/IfacePaths/SourceDirectoryInInterface.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/SrcInInstallPrefix-CMP0052-NEW-result.txt} (100%) rename Tests/RunCMake/{include_directories/SrcInInstallPrefix-CMP0052-NEW-stderr.txt => IfacePaths/SrcInInstallPrefix-CMP0052-NEW-stderr_INCLUDE_DIRECTORIES.txt} (69%) rename Tests/RunCMake/{include_directories => IfacePaths}/SrcInInstallPrefix-CMP0052-OLD-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/SrcInInstallPrefix-CMP0052-WARN-result.txt (100%) rename Tests/RunCMake/{include_directories/SrcInInstallPrefix-CMP0052-WARN-stderr.txt => IfacePaths/SrcInInstallPrefix-CMP0052-WARN-stderr_INCLUDE_DIRECTORIES.txt} (72%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => IfacePaths/SrcInInstallPrefix-result.txt} (100%) create mode 100644 Tests/RunCMake/IfacePaths/SrcInInstallPrefix-stderr_SOURCES.txt copy Tests/RunCMake/{CMP0004 => IfacePaths}/empty.cpp (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/export-NOWARN-result.txt (100%) rename Tests/RunCMake/{include_directories => IfacePaths}/export-NOWARN.cmake (71%) delete mode 100644 Tests/RunCMake/TargetSources/ExportBuild-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall-result.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall-stderr.txt delete mode 100644 Tests/RunCMake/TargetSources/ExportInstall.cmake delete mode 100644 Tests/RunCMake/include_directories/BinInInstallPrefix-CMP0052-NEW-result.txt delete mode 100644 Tests/RunCMake/include_directories/BinaryDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/BinaryDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/DirInInstallPrefix.cmake delete mode 100644 Tests/RunCMake/include_directories/InstallInBinDir-result.txt delete mode 100644 Tests/RunCMake/include_directories/InstallInSrcDir-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInGenex.cmake delete mode 100644 Tests/RunCMake/include_directories/RelativePathInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/RelativePathInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/SourceDirectoryInInterface-result.txt delete mode 100644 Tests/RunCMake/include_directories/SourceDirectoryInInterface.cmake delete mode 100644 Tests/RunCMake/include_directories/SrcInInstallPrefix-CMP0052-NEW-result.txt hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 10:02:38 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 10:02:38 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1228-g72cef44 Message-ID: <20150211150238.B4E49AAD9E@public.kitware.com> 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 72cef4494cf123a04cc1cf447950fa4c51558d89 (commit) via 108e94ecf11d33f3d87ea3c09cfc7961aa785641 (commit) via c1772e5fb25b798a99cdcc820272ca9457123eb6 (commit) via 79ea7e6d087924ff1c898e727b6e83944f0f689d (commit) via f3c0c6140360d0591c5163e7a3fcdf0040f4690f (commit) via dcc5de9c4b7dbc17229d9f11aee978f6828d932d (commit) via 0e6af852637ada6b2343f1cbf1ac5ccf0b1b3c76 (commit) via 939167a65cf7e057ac98c63f8e3ff0acd4129c28 (commit) via 197933018863c4845262dd6fb47e4edf721445f1 (commit) from 0e9460a458bb4b5e02594a0a2f4579845f77d37b (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=72cef4494cf123a04cc1cf447950fa4c51558d89 commit 72cef4494cf123a04cc1cf447950fa4c51558d89 Merge: 0e9460a 108e94e Author: Brad King AuthorDate: Wed Feb 11 10:02:27 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 10:02:27 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 10:05:55 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 10:05:55 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1230-g517360a Message-ID: <20150211150555.45CBBAAE14@public.kitware.com> 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 517360a715c0f52408359715c0505789262692f2 (commit) via bc76786efe4f4bebfa6fbd5b217b16c596ed1cd6 (commit) from 72cef4494cf123a04cc1cf447950fa4c51558d89 (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=517360a715c0f52408359715c0505789262692f2 commit 517360a715c0f52408359715c0505789262692f2 Merge: 72cef44 bc76786 Author: Brad King AuthorDate: Wed Feb 11 10:05:54 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 10:05:54 2015 -0500 Merge topic 'use-cmRange' into next bc76786e cmFunctionCommand: Remove unused variable http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bc76786efe4f4bebfa6fbd5b217b16c596ed1cd6 commit bc76786efe4f4bebfa6fbd5b217b16c596ed1cd6 Author: Brad King AuthorDate: Wed Feb 11 10:04:41 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 10:04:41 2015 -0500 cmFunctionCommand: Remove unused variable diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index 2e71b01..b44e228 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -193,7 +193,6 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, if (!this->Depth) { std::string name = this->Args[0]; - std::vector::size_type cc; name += "( "; name += cmJoin(this->Args, " "); name += " )"; ----------------------------------------------------------------------- Summary of changes: Source/cmFunctionCommand.cxx | 1 - 1 file changed, 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 10:22:36 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 10:22:36 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1106-gf00829a Message-ID: <20150211152236.565BBAA34D@public.kitware.com> 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 f00829a9384283ef1cf86b337b41eaed30ca7ded (commit) via d891b971b7d5d39c05d1e757ebc6068260bf1e9e (commit) via 0a95c5ce2ef8d9887c4a0bdde480155d75f12c7b (commit) via f3a6e0cb6a96ca2c3e363371c17940d5cb2ed791 (commit) via 001cd08187513809e688d12469c5b6a13702aeba (commit) via 8ad8a81d5c150db2c4823b57cdc8e2f2de9afc91 (commit) from 108e94ecf11d33f3d87ea3c09cfc7961aa785641 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 10:22:36 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 10:22:36 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1237-g546ffe6 Message-ID: <20150211152236.7B4E8AA396@public.kitware.com> 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 546ffe6f3e9f29a41584b7f72700f79b4e62bc59 (commit) via f00829a9384283ef1cf86b337b41eaed30ca7ded (commit) via d891b971b7d5d39c05d1e757ebc6068260bf1e9e (commit) via 0a95c5ce2ef8d9887c4a0bdde480155d75f12c7b (commit) via f3a6e0cb6a96ca2c3e363371c17940d5cb2ed791 (commit) via 001cd08187513809e688d12469c5b6a13702aeba (commit) via 8ad8a81d5c150db2c4823b57cdc8e2f2de9afc91 (commit) from 517360a715c0f52408359715c0505789262692f2 (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=546ffe6f3e9f29a41584b7f72700f79b4e62bc59 commit 546ffe6f3e9f29a41584b7f72700f79b4e62bc59 Merge: 517360a f00829a Author: Brad King AuthorDate: Wed Feb 11 10:22:25 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 10:22:25 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 10:22:36 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 10:22:36 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.1.2-1028-g0a95c5c Message-ID: <20150211152236.9D740AA3E0@public.kitware.com> 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, release has been updated via 0a95c5ce2ef8d9887c4a0bdde480155d75f12c7b (commit) via 56cb4a6c3a71f1a3d3e0dccbdc593bc58d76c5ee (commit) via f3a6e0cb6a96ca2c3e363371c17940d5cb2ed791 (commit) via 85fd62ee91b7a8dcb929eee36424886bd0b59592 (commit) via 001cd08187513809e688d12469c5b6a13702aeba (commit) via eeb2831b5f35af1ec8a65be343e754ff1c29550d (commit) from 0b8d9581c0a651f36fc5a2d0b996fd006152ce50 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Help/prop_test/TIMEOUT.rst | 2 +- Source/cmLocalUnixMakefileGenerator3.cxx | 2 +- bootstrap | 8 ++++++++ 3 files changed, 10 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 10:24:45 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 10:24:45 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1240-g6d83350 Message-ID: <20150211152445.BD9BDAA92F@public.kitware.com> 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 6d83350ced7e7a3760c60ab37bf5aecd3eb70637 (commit) via c24aa305bc437c6f1c13ce17e18eccb3a52f5a60 (commit) via bd6389f7bce6d69a75e6f84245834e19b24cc03f (commit) from 546ffe6f3e9f29a41584b7f72700f79b4e62bc59 (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=6d83350ced7e7a3760c60ab37bf5aecd3eb70637 commit 6d83350ced7e7a3760c60ab37bf5aecd3eb70637 Merge: 546ffe6 c24aa30 Author: Brad King AuthorDate: Wed Feb 11 10:24:44 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 10:24:44 2015 -0500 Merge topic 'test-release' into next c24aa305 Merge branch 'release-3.1' into test-release bd6389f7 CMake 3.1.3 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c24aa305bc437c6f1c13ce17e18eccb3a52f5a60 commit c24aa305bc437c6f1c13ce17e18eccb3a52f5a60 Merge: f00829a bd6389f Author: Brad King AuthorDate: Wed Feb 11 10:24:01 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 10:24:01 2015 -0500 Merge branch 'release-3.1' into test-release http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bd6389f7bce6d69a75e6f84245834e19b24cc03f commit bd6389f7bce6d69a75e6f84245834e19b24cc03f Author: Brad King AuthorDate: Wed Feb 11 10:23:38 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 10:23:38 2015 -0500 CMake 3.1.3 diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 7b27901..d6a2437 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 1) -set(CMake_VERSION_PATCH 2) +set(CMake_VERSION_PATCH 3) #set(CMake_VERSION_RC 0) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 11:07:36 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 11:07:36 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1242-g8a24443 Message-ID: <20150211160736.3BFF8AAF97@public.kitware.com> 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 8a2444385c68619836ed4e73a1175517b67d17c1 (commit) via e2a8984c06a5f466a268ad7f1a7a8578bfe6bf5b (commit) from 6d83350ced7e7a3760c60ab37bf5aecd3eb70637 (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=8a2444385c68619836ed4e73a1175517b67d17c1 commit 8a2444385c68619836ed4e73a1175517b67d17c1 Merge: 6d83350 e2a8984 Author: Brad King AuthorDate: Wed Feb 11 11:07:35 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 11:07:35 2015 -0500 Merge topic 'FindCoin3D-drop-link' into next e2a8984c FindCoin3D: Drop link to project homepage http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e2a8984c06a5f466a268ad7f1a7a8578bfe6bf5b commit e2a8984c06a5f466a268ad7f1a7a8578bfe6bf5b Author: Brad King AuthorDate: Wed Feb 11 11:03:02 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 11:05:55 2015 -0500 FindCoin3D: Drop link to project homepage The project has moved from to . Simply drop the out-dated link. Few find modules have links to the project sites. Anyone looking to use a given find module likely already knows about the project it finds and can use a search engine to find its homepage. diff --git a/Modules/FindCoin3D.cmake b/Modules/FindCoin3D.cmake index b5c3a96..f90860c 100644 --- a/Modules/FindCoin3D.cmake +++ b/Modules/FindCoin3D.cmake @@ -5,8 +5,7 @@ # Find Coin3D (Open Inventor) # # Coin3D is an implementation of the Open Inventor API. It provides -# data structures and algorithms for 3D visualization -# http://www.coin3d.org/ +# data structures and algorithms for 3D visualization. # # This module defines the following variables # ----------------------------------------------------------------------- Summary of changes: Modules/FindCoin3D.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 14:51:38 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 14:51:38 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1262-g06b19bb Message-ID: <20150211195138.5A3DCAAA5C@public.kitware.com> 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 06b19bbb3777430b3348a082d57da56f0d6e0e34 (commit) via 60ebc7d79f98c44fee7d3b9011808278284eaade (commit) via 6def2609ecf259c34b5d4fcac1f0702e648a7d61 (commit) via 3f1cb2c0712e4e87b092643db981339033558a1b (commit) via 40c13235fca82b96a1d6ee7ac6b7bb4d6020562a (commit) via a6a7e14a9242e7eb8bd0828aeeff39fd0f9794cd (commit) via a505a05562e50fdf8251e5fdbf2d32383f6b47aa (commit) via 59345fec63e59eda6c9ffd257ace7b15d4ebfb97 (commit) via 28ec965e9cb5fd997c611081a1add1c410e35916 (commit) via 437febee725af25a028e786571120d073933c763 (commit) via 4d6ba5ceb73a61aafd0a47da70c02c65daac1c2d (commit) via 892c822a209097b23150a031a76e477cfcd6b067 (commit) via 6650bcdcb1c99550983a1b8e8d25e8e62735f9b0 (commit) via e8c13de3780cc6ec4c213ca2c01d90aa3ebd543b (commit) via af289a56b78fe0d584cd97cb01c7e8d6f90ed91b (commit) via 9e784682ada6badec5b4da09d6e05594774801f9 (commit) via 6a4efb0ebd87bcb66a3bf98246aef491c82fa6c7 (commit) via 11ecc31d0a2da0090195a682364fb4628f55673a (commit) via f95543f8a6b38bf6d5350169bdb53d5066839b76 (commit) via 9fe8f49353f927882af256c7870eb24e4be0c9be (commit) from 8a2444385c68619836ed4e73a1175517b67d17c1 (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=06b19bbb3777430b3348a082d57da56f0d6e0e34 commit 06b19bbb3777430b3348a082d57da56f0d6e0e34 Merge: 8a24443 60ebc7d Author: Stephen Kelly AuthorDate: Wed Feb 11 14:51:35 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 14:51:35 2015 -0500 Merge topic 'use-cmRange' into next 60ebc7d7 Convert loop into two algorithms. 6def2609 Convert loop to the common pattern. 3f1cb2c0 Move loop inside of condition. 40c13235 Handle last element outside of the loop. a6a7e14a cmTarget: Use a sorted vector in place of a set. a505a055 cmSet: Replace loop with cmJoin. 59345fec cmFindBase: Replace loop with cmJoin on range. 28ec965e Convert loops to cmJoin algorithm with cmRange. 437febee cmStringCommand: Accumulate with cmJoin and range adaptors. 4d6ba5ce cmAlgorithms: Add a range adaptor and API for adjusting a range. 892c822a Use cmJoin to accumulate string ranges. 6650bcdc cmAlgorithms: Add a Range container and adaptor method. e8c13de3 Replace common loop pattern with cmJoin af289a56 Convert loops populating maybe-empty content into the common pattern. 9e784682 Convert loops into the commonly used pattern. 6a4efb0e cmMacroCommand: Remove counting variable. ... http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=60ebc7d79f98c44fee7d3b9011808278284eaade commit 60ebc7d79f98c44fee7d3b9011808278284eaade Author: Stephen Kelly AuthorDate: Sat Jan 24 18:07:37 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 Convert loop into two algorithms. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 359141a..a08c159 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,16 +2299,12 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - const char* sep = ""; - for(unsigned int i=1; i < components.size() - 1; ++i) - { - if(!components[i].empty()) - { - result += sep; - result += components[i]; - sep = slash; - } - } + std::vector::const_iterator compEnd + = std::remove(components.begin() + 1, components.end() - 1, + std::string()); + std::vector::const_iterator compStart + = components.begin() + 1; + result += cmJoin(cmRange(compStart, compEnd), slash); // Only the last component can be empty to avoid double slashes. result += slash; result += components.back(); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6def2609ecf259c34b5d4fcac1f0702e648a7d61 commit 6def2609ecf259c34b5d4fcac1f0702e648a7d61 Author: Stephen Kelly AuthorDate: Fri Jan 23 01:06:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 Convert loop to the common pattern. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 703ab27..359141a 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,24 +2299,18 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - bool first = true; + const char* sep = ""; for(unsigned int i=1; i < components.size() - 1; ++i) { if(!components[i].empty()) { - if(!first) - { - result += slash; - } + result += sep; result += components[i]; - first = false; + sep = slash; } } // Only the last component can be empty to avoid double slashes. - if(!first) - { - result += slash; - } + result += slash; result += components.back(); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f1cb2c0712e4e87b092643db981339033558a1b commit 3f1cb2c0712e4e87b092643db981339033558a1b Author: Stephen Kelly AuthorDate: Tue Feb 10 23:09:03 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 Move loop inside of condition. The loop is only executed if the condition is true. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 32da821..703ab27 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2295,23 +2295,23 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, // Begin the quoted result with the root component. result += components[0]; - // Now add the rest of the components separated by the proper slash - // direction for this platform. - bool first = true; - for(unsigned int i=1; i < components.size() - 1; ++i) + if (components.size() > 1) { - if(!components[i].empty()) + // Now add the rest of the components separated by the proper slash + // direction for this platform. + bool first = true; + for(unsigned int i=1; i < components.size() - 1; ++i) { - if(!first) + if(!components[i].empty()) { - result += slash; + if(!first) + { + result += slash; + } + result += components[i]; + first = false; } - result += components[i]; - first = false; } - } - if (components.size() > 1) - { // Only the last component can be empty to avoid double slashes. if(!first) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=40c13235fca82b96a1d6ee7ac6b7bb4d6020562a commit 40c13235fca82b96a1d6ee7ac6b7bb4d6020562a Author: Stephen Kelly AuthorDate: Fri Jan 23 01:03:45 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 Handle last element outside of the loop. There is no point in checking on each loop iteration whether it is the last element. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 54d330f..32da821 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2298,10 +2298,9 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, // Now add the rest of the components separated by the proper slash // direction for this platform. bool first = true; - for(unsigned int i=1; i < components.size(); ++i) + for(unsigned int i=1; i < components.size() - 1; ++i) { - // Only the last component can be empty to avoid double slashes. - if(!components[i].empty() || (i == (components.size()-1))) + if(!components[i].empty()) { if(!first) { @@ -2311,6 +2310,15 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, first = false; } } + if (components.size() > 1) + { + // Only the last component can be empty to avoid double slashes. + if(!first) + { + result += slash; + } + result += components.back(); + } } // Close the quoted result. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a6a7e14a9242e7eb8bd0828aeeff39fd0f9794cd commit a6a7e14a9242e7eb8bd0828aeeff39fd0f9794cd Author: Stephen Kelly AuthorDate: Tue Feb 10 22:48:02 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 cmTarget: Use a sorted vector in place of a set. The vector has a more easy-to-use API. Join the string with cmJoin, and avoid erasing from the container in the loop. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index f0bdea7..526a923 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -6687,40 +6687,33 @@ void cmTarget::CheckPropertyCompatibility(cmComputeLinkInformation *info, if (!prop.empty()) { - // Use a std::set to keep the error message sorted. - std::set props; + // Use a sorted std::vector to keep the error message sorted. + std::vector props; std::set::const_iterator i = emittedBools.find(prop); if (i != emittedBools.end()) { - props.insert(strBool); + props.push_back(strBool); } i = emittedStrings.find(prop); if (i != emittedStrings.end()) { - props.insert(strString); + props.push_back(strString); } i = emittedMinNumbers.find(prop); if (i != emittedMinNumbers.end()) { - props.insert(strNumMin); + props.push_back(strNumMin); } i = emittedMaxNumbers.find(prop); if (i != emittedMaxNumbers.end()) { - props.insert(strNumMax); + props.push_back(strNumMax); } + std::sort(props.begin(), props.end()); + + std::string propsString = cmJoin(cmRange(props).retreat(1), ", "); + propsString += " and the " + props.back(); - std::string propsString = *props.begin(); - props.erase(props.begin()); - while (props.size() > 1) - { - propsString += ", " + *props.begin(); - props.erase(props.begin()); - } - if (props.size() == 1) - { - propsString += " and the " + *props.begin(); - } std::ostringstream e; e << "Property \"" << prop << "\" appears in both the " << propsString << http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a505a05562e50fdf8251e5fdbf2d32383f6b47aa commit a505a05562e50fdf8251e5fdbf2d32383f6b47aa Author: Stephen Kelly AuthorDate: Tue Feb 10 23:26:58 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 cmSet: Replace loop with cmJoin. diff --git a/Source/cmSetCommand.cxx b/Source/cmSetCommand.cxx index 90d7b03..204d95b 100644 --- a/Source/cmSetCommand.cxx +++ b/Source/cmSetCommand.cxx @@ -108,17 +108,7 @@ bool cmSetCommand } // collect any values into a single semi-colon separated value list - if(static_cast(args.size()) > - static_cast(1 + ignoreLastArgs)) - { - value = args[1]; - size_t endPos = args.size() - ignoreLastArgs; - for(size_t i = 2; i < endPos; ++i) - { - value += ";"; - value += args[i]; - } - } + value = cmJoin(cmRange(args).advance(1).retreat(ignoreLastArgs), ";"); if (parentScope) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=59345fec63e59eda6c9ffd257ace7b15d4ebfb97 commit 59345fec63e59eda6c9ffd257ace7b15d4ebfb97 Author: Stephen Kelly AuthorDate: Wed Jan 14 22:23:41 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:08 2015 +0100 cmFindBase: Replace loop with cmJoin on range. diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx index 69991d5..6e55533 100644 --- a/Source/cmFindBase.cxx +++ b/Source/cmFindBase.cxx @@ -166,11 +166,9 @@ bool cmFindBase::ParseArguments(std::vector const& argsIn) } else { - this->VariableDocumentation += "one of the " + this->Names[0]; - for (unsigned int j = 1; j < this->Names.size() - 1; ++j) - { - this->VariableDocumentation += ", " + this->Names[j]; - } + this->VariableDocumentation += "one of the "; + this->VariableDocumentation += cmJoin(cmRange(this->Names).retreat(1), + ", "); this->VariableDocumentation += " or " + this->Names[this->Names.size() - 1] + " libraries be found"; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=28ec965e9cb5fd997c611081a1add1c410e35916 commit 28ec965e9cb5fd997c611081a1add1c410e35916 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:53:20 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:07 2015 +0100 Convert loops to cmJoin algorithm with cmRange. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 8d1657d..dd0cfa9 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -259,14 +259,7 @@ bool cmListCommand::HandleAppendCommand(std::vector const& args) { listString += ";"; } - const char* sep = ""; - size_t cc; - for ( cc = 2; cc < args.size(); ++ cc ) - { - listString += sep; - listString += args[cc]; - sep = ";"; - } + listString += cmJoin(cmRange(args).advance(2), ";"); this->Makefile->AddDefinition(listName, listString.c_str()); return true; diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 05d8ab5..35956ad 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3016,13 +3016,7 @@ cmLocalGenerator::ConvertToRelativePath(const std::vector& local, { relative += "/"; } - const char* sep = ""; - for(unsigned int i=common; i < remote.size(); ++i) - { - relative += sep; - relative += remote[i]; - sep = "/"; - } + relative += cmJoin(cmRange(remote).advance(common), "/"); // Finally return the path. return relative; diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 0ebaa50..e09a934 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -172,12 +172,7 @@ bool cmMacroHelperCommand::InvokeInitialPass } std::vector::const_iterator eit = expandedArgs.begin() + this->Args.size() - 1; - const char* sep = ""; - for( ; eit != expandedArgs.end(); ++eit) - { - argnDef += sep + *eit; - sep = ";"; - } + argnDef += cmJoin(cmRange(eit, expandedArgs.end()), ";"); } argnDefInitialized = true; } diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 5260cb0..5c93975 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -406,12 +406,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) // Clock command else if (args[1] == "time" && args.size() > 2) { - std::string command = args[2]; - for (std::string::size_type cc = 3; cc < args.size(); cc ++) - { - command += " "; - command += args[cc]; - } + std::string command = cmJoin(cmRange(args).advance(2), " "); clock_t clock_start, clock_finish; time_t time_start, time_finish; @@ -473,14 +468,8 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) } std::string command = "\""; - command += args[3]; + command += cmJoin(cmRange(args).advance(3), "\" \""); command += "\""; - for (std::string::size_type cc = 4; cc < args.size(); cc ++) - { - command += " \""; - command += args[cc]; - command += "\""; - } int retval = 0; int timeout = 0; if ( cmSystemTools::RunSingleCommand(command.c_str(), 0, &retval, http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=437febee725af25a028e786571120d073933c763 commit 437febee725af25a028e786571120d073933c763 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:23:41 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:07 2015 +0100 cmStringCommand: Accumulate with cmJoin and range adaptors. diff --git a/Source/cmStringCommand.cxx b/Source/cmStringCommand.cxx index 3e606d7..edc6afc 100644 --- a/Source/cmStringCommand.cxx +++ b/Source/cmStringCommand.cxx @@ -303,13 +303,6 @@ bool cmStringCommand::RegexMatch(std::vector const& args) std::string regex = args[2]; std::string outvar = args[3]; - // Concatenate all the last arguments together. - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -321,6 +314,9 @@ bool cmStringCommand::RegexMatch(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(4), std::string()); + // Scan through the input for all matches. std::string output; if(re.find(input.c_str())) @@ -352,13 +348,6 @@ bool cmStringCommand::RegexMatchAll(std::vector const& args) std::string regex = args[2]; std::string outvar = args[3]; - // Concatenate all the last arguments together. - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -371,6 +360,9 @@ bool cmStringCommand::RegexMatchAll(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(4), std::string()); + // Scan through the input for all matches. std::string output; const char* p = input.c_str(); @@ -456,13 +448,6 @@ bool cmStringCommand::RegexReplace(std::vector const& args) l = r; } - // Concatenate all the last arguments together. - std::string input = args[5]; - for(unsigned int i=6; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -475,6 +460,9 @@ bool cmStringCommand::RegexReplace(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(5), std::string()); + // Scan through the input for all matches. std::string output; std::string::size_type base = 0; @@ -673,11 +661,7 @@ bool cmStringCommand::HandleReplaceCommand(std::vector const& const std::string& replaceExpression = args[2]; const std::string& variableName = args[3]; - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } + std::string input = cmJoin(cmRange(args).advance(4), std::string()); cmsys::SystemTools::ReplaceString(input, matchExpression.c_str(), replaceExpression.c_str()); @@ -756,11 +740,7 @@ bool cmStringCommand } std::string const& variableName = args[1]; - std::string value; - for(unsigned int i = 2; i < args.size(); ++i) - { - value += args[i]; - } + std::string value = cmJoin(cmRange(args).advance(2), std::string()); this->Makefile->AddDefinition(variableName, value.c_str()); return true; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4d6ba5ceb73a61aafd0a47da70c02c65daac1c2d commit 4d6ba5ceb73a61aafd0a47da70c02c65daac1c2d Author: Stephen Kelly AuthorDate: Tue Feb 10 22:14:54 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:07 2015 +0100 cmAlgorithms: Add a range adaptor and API for adjusting a range. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 6c03f51..ad2b9c1 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -122,6 +122,17 @@ struct Range const_iterator begin() const { return Begin; } const_iterator end() const { return End; } bool empty() const { return std::distance(Begin, End) == 0; } + Range& advance(cmIML_INT_intptr_t amount) + { + std::advance(Begin, amount); + return *this; + } + + Range& retreat(cmIML_INT_intptr_t amount) + { + std::advance(End, -amount); + return *this; + } private: const_iterator Begin; const_iterator End; @@ -135,6 +146,14 @@ ContainerAlgorithms::Range cmRange(Iter1 begin, Iter2 end) return ContainerAlgorithms::Range(begin, end); } +template +ContainerAlgorithms::Range +cmRange(Range const& range) +{ + return ContainerAlgorithms::Range( + range.begin(), range.end()); +} + template void cmDeleteAll(Container const& c) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=892c822a209097b23150a031a76e477cfcd6b067 commit 892c822a209097b23150a031a76e477cfcd6b067 Author: Stephen Kelly AuthorDate: Wed Jan 14 21:27:25 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:07 2015 +0100 Use cmJoin to accumulate string ranges. Avoid using the std::accumulate algorithm which is designed for numeric types, not complex types. It introduces unneccessary copies. Initialize variables where they are populated. diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 8b893bc..212603c 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -217,7 +217,6 @@ bool cmFileCommand bool cmFileCommand::HandleWriteCommand(std::vector const& args, bool append) { - std::string message; std::vector::const_iterator i = args.begin(); i++; // Get rid of subcommand @@ -231,10 +230,6 @@ bool cmFileCommand::HandleWriteCommand(std::vector const& args, i++; - for(;i != args.end(); ++i) - { - message += *i; - } if ( !this->Makefile->CanIWriteThisFile(fileName.c_str()) ) { std::string e @@ -272,6 +267,7 @@ bool cmFileCommand::HandleWriteCommand(std::vector const& args, this->SetError(error); return false; } + std::string message = cmJoin(cmRange(i, args.end()), std::string()); file << message; file.close(); if(mode) diff --git a/Source/cmMessageCommand.cxx b/Source/cmMessageCommand.cxx index 88d6a77..0449c50 100644 --- a/Source/cmMessageCommand.cxx +++ b/Source/cmMessageCommand.cxx @@ -20,7 +20,6 @@ bool cmMessageCommand this->SetError("called with incorrect number of arguments"); return false; } - std::string message; std::vector::const_iterator i = args.begin(); cmake::MessageType type = cmake::MESSAGE; @@ -70,10 +69,7 @@ bool cmMessageCommand ++i; } - for(;i != args.end(); ++i) - { - message += *i; - } + std::string message = cmJoin(cmRange(i, args.end()), std::string()); if (type != cmake::MESSAGE) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6650bcdcb1c99550983a1b8e8d25e8e62735f9b0 commit 6650bcdcb1c99550983a1b8e8d25e8e62735f9b0 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:19:21 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:07 2015 +0100 cmAlgorithms: Add a Range container and adaptor method. This can make a pair of iterators API compatible with the cmJoin algorithm and other range-based algorithms. Accept different iterator types in the cmRange adaptor so that a const and non-const iterator are accepted. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 4938140..6c03f51 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -112,6 +112,27 @@ struct DefaultDeleter } }; +template +struct Range +{ + typedef const_iterator_ const_iterator; + typedef typename std::iterator_traits::value_type value_type; + Range(const_iterator begin_, const_iterator end_) + : Begin(begin_), End(end_) {} + const_iterator begin() const { return Begin; } + const_iterator end() const { return End; } + bool empty() const { return std::distance(Begin, End) == 0; } +private: + const_iterator Begin; + const_iterator End; +}; + +} + +template +ContainerAlgorithms::Range cmRange(Iter1 begin, Iter2 end) +{ + return ContainerAlgorithms::Range(begin, end); } template http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e8c13de3780cc6ec4c213ca2c01d90aa3ebd543b commit e8c13de3780cc6ec4c213ca2c01d90aa3ebd543b Author: Stephen Kelly AuthorDate: Wed Jan 14 21:31:46 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:07 2015 +0100 Replace common loop pattern with cmJoin diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index 7746980..fd9b236 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -1064,26 +1064,11 @@ void cmFindPackageCommand::AppendToFoundProperty(bool found) } - std::string tmp; - const char* sep =""; - for(size_t i=0; iMakefile->GetCMakeInstance()->SetProperty("PACKAGES_FOUND", tmp.c_str()); - tmp = ""; - sep = ""; - for(size_t i=0; iMakefile->GetCMakeInstance()->SetProperty("PACKAGES_NOT_FOUND", tmp.c_str()); } diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index c33048c..b44e228 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -193,12 +193,8 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, if (!this->Depth) { std::string name = this->Args[0]; - std::vector::size_type cc; - name += "("; - for ( cc = 0; cc < this->Args.size(); cc ++ ) - { - name += " " + this->Args[cc]; - } + name += "( "; + name += cmJoin(this->Args, " "); name += " )"; // create a new command and add it to cmake diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx index c0e4683..84c00ba 100644 --- a/Source/cmGetCMakePropertyCommand.cxx +++ b/Source/cmGetCMakePropertyCommand.cxx @@ -34,15 +34,7 @@ bool cmGetCMakePropertyCommand std::vector vars = this->Makefile->GetDefinitions(cacheonly); if (!vars.empty()) { - output = ""; - const char* sep = ""; - std::vector::size_type cc; - for ( cc = 0; cc < vars.size(); ++cc ) - { - output += sep; - output += vars[cc]; - sep = ";"; - } + output = cmJoin(vars, ";"); } } else if ( args[1] == "MACROS" ) @@ -54,15 +46,7 @@ bool cmGetCMakePropertyCommand const std::set* components = this->Makefile->GetLocalGenerator()->GetGlobalGenerator() ->GetInstallComponents(); - std::set::const_iterator compIt; - output = ""; - const char* sep = ""; - for (compIt = components->begin(); compIt != components->end(); ++compIt) - { - output += sep; - output += *compIt; - sep = ";"; - } + output = cmJoin(*components, ";"); } else { diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index e1de7c3..0ebaa50 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -197,14 +197,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argvDef += ";"; } - const char* sep = ""; - std::vector::const_iterator eit; - for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) - { - argvDef += sep; - argvDef += *eit; - sep = ";"; - } + argvDef += cmJoin(expandedArgs, ";"); argvDefInitialized = true; } cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index aca4413..ac5fec9 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -4202,15 +4202,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LISTFILE_STACK") { - const char* sep = ""; - for (std::deque::const_iterator - i = this->ListFileStack.begin(); - i != this->ListFileStack.end(); ++i) - { - output += sep; - output += *i; - sep = ";"; - } + output = cmJoin(this->ListFileStack, ";"); return output.c_str(); } else if (prop == "VARIABLES" || prop == "CACHE_VARIABLES") @@ -4220,14 +4212,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, { cacheonly = 1; } - std::vector vars = this->GetDefinitions(cacheonly); - const char* sep = ""; - for (unsigned int cc = 0; cc < vars.size(); cc ++ ) - { - output += sep; - output += vars[cc]; - sep = ";"; - } + output = cmJoin(this->GetDefinitions(cacheonly), ";"); return output.c_str(); } else if (prop == "MACROS") @@ -4242,16 +4227,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LINK_DIRECTORIES") { - const char* sep = ""; - for (std::vector::const_iterator - it = this->GetLinkDirectories().begin(); - it != this->GetLinkDirectories().end(); - ++ it ) - { - output += sep; - output += *it; - sep = ";"; - } + output = cmJoin(this->GetLinkDirectories(), ";"); return output.c_str(); } else if (prop == "INCLUDE_DIRECTORIES") diff --git a/Source/cmOptionCommand.cxx b/Source/cmOptionCommand.cxx index e505440..60728ea 100644 --- a/Source/cmOptionCommand.cxx +++ b/Source/cmOptionCommand.cxx @@ -34,11 +34,7 @@ bool cmOptionCommand if(argError) { std::string m = "called with incorrect number of arguments: "; - for(size_t i =0; i < args.size(); ++i) - { - m += args[i]; - m += " "; - } + m += cmJoin(args, " "); this->SetError(m); return false; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=af289a56b78fe0d584cd97cb01c7e8d6f90ed91b commit af289a56b78fe0d584cd97cb01c7e8d6f90ed91b Author: Stephen Kelly AuthorDate: Sat Jan 17 17:36:19 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:06 2015 +0100 Convert loops populating maybe-empty content into the common pattern. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 107dca9..8d1657d 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -254,14 +254,18 @@ bool cmListCommand::HandleAppendCommand(std::vector const& args) // expand the variable std::string listString; this->GetListString(listString, listName); + + if(!listString.empty() && !args.empty()) + { + listString += ";"; + } + const char* sep = ""; size_t cc; for ( cc = 2; cc < args.size(); ++ cc ) { - if(!listString.empty()) - { - listString += ";"; - } + listString += sep; listString += args[cc]; + sep = ";"; } this->Makefile->AddDefinition(listName, listString.c_str()); diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 7afe05f..05d8ab5 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3011,13 +3011,17 @@ cmLocalGenerator::ConvertToRelativePath(const std::vector& local, // trailing slash in the input then the last iteration of the loop // will add a slash followed by an empty string which will preserve // the trailing slash in the output. + + if(!relative.empty() && !remote.empty()) + { + relative += "/"; + } + const char* sep = ""; for(unsigned int i=common; i < remote.size(); ++i) { - if(!relative.empty()) - { - relative += "/"; - } + relative += sep; relative += remote[i]; + sep = "/"; } // Finally return the path. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 36808e0..e1de7c3 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -166,15 +166,17 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (expandedArgs.size() > this->Args.size() - 1) { + if (!argnDef.empty() && !expandedArgs.empty()) + { + argnDef += ";"; + } std::vector::const_iterator eit = expandedArgs.begin() + this->Args.size() - 1; + const char* sep = ""; for( ; eit != expandedArgs.end(); ++eit) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += sep + *eit; + sep = ";"; } } argnDefInitialized = true; @@ -191,14 +193,17 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGV, compute it only once if (!argvDefInitialized) { + if (!argvDef.empty() && !expandedArgs.empty()) + { + argvDef += ";"; + } + const char* sep = ""; std::vector::const_iterator eit; for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) { - if (!argvDef.empty()) - { - argvDef += ";"; - } + argvDef += sep; argvDef += *eit; + sep = ";"; } argvDefInitialized = true; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9e784682ada6badec5b4da09d6e05594774801f9 commit 9e784682ada6badec5b4da09d6e05594774801f9 Author: Stephen Kelly AuthorDate: Sat Jan 17 17:47:10 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:06 2015 +0100 Convert loops into the commonly used pattern. diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx index e193cf5..c0e4683 100644 --- a/Source/cmGetCMakePropertyCommand.cxx +++ b/Source/cmGetCMakePropertyCommand.cxx @@ -25,7 +25,6 @@ bool cmGetCMakePropertyCommand return false; } - std::vector::size_type cc; std::string variable = args[0]; std::string output = "NOTFOUND"; @@ -35,12 +34,15 @@ bool cmGetCMakePropertyCommand std::vector vars = this->Makefile->GetDefinitions(cacheonly); if (!vars.empty()) { - output = vars[0]; - } - for ( cc = 1; cc < vars.size(); ++cc ) - { - output += ";"; - output += vars[cc]; + output = ""; + const char* sep = ""; + std::vector::size_type cc; + for ( cc = 0; cc < vars.size(); ++cc ) + { + output += sep; + output += vars[cc]; + sep = ";"; + } } } else if ( args[1] == "MACROS" ) @@ -54,13 +56,12 @@ bool cmGetCMakePropertyCommand ->GetInstallComponents(); std::set::const_iterator compIt; output = ""; + const char* sep = ""; for (compIt = components->begin(); compIt != components->end(); ++compIt) { - if (compIt != components->begin()) - { - output += ";"; - } + output += sep; output += *compIt; + sep = ";"; } } else diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index eb68e49..aca4413 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -3752,15 +3752,12 @@ void cmMakefile::GetListOfMacros(std::string& macros) const { StringStringMap::const_iterator it; macros = ""; - int cc = 0; + const char* sep = ""; for ( it = this->MacrosMap.begin(); it != this->MacrosMap.end(); ++it ) { - if ( cc > 0 ) - { - macros += ";"; - } + macros += sep; macros += it->first; - cc ++; + sep = ""; } } @@ -4205,15 +4202,14 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LISTFILE_STACK") { + const char* sep = ""; for (std::deque::const_iterator i = this->ListFileStack.begin(); i != this->ListFileStack.end(); ++i) { - if (i != this->ListFileStack.begin()) - { - output += ";"; - } + output += sep; output += *i; + sep = ";"; } return output.c_str(); } @@ -4225,13 +4221,12 @@ const char *cmMakefile::GetProperty(const std::string& prop, cacheonly = 1; } std::vector vars = this->GetDefinitions(cacheonly); + const char* sep = ""; for (unsigned int cc = 0; cc < vars.size(); cc ++ ) { - if ( cc > 0 ) - { - output += ";"; - } + output += sep; output += vars[cc]; + sep = ";"; } return output.c_str(); } @@ -4247,19 +4242,16 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LINK_DIRECTORIES") { - std::ostringstream str; + const char* sep = ""; for (std::vector::const_iterator it = this->GetLinkDirectories().begin(); it != this->GetLinkDirectories().end(); ++ it ) { - if ( it != this->GetLinkDirectories().begin()) - { - str << ";"; - } - str << it->c_str(); + output += sep; + output += *it; + sep = ";"; } - output = str.str(); return output.c_str(); } else if (prop == "INCLUDE_DIRECTORIES") http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6a4efb0ebd87bcb66a3bf98246aef491c82fa6c7 commit 6a4efb0ebd87bcb66a3bf98246aef491c82fa6c7 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:47:21 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:06 2015 +0100 cmMacroCommand: Remove counting variable. Start iteration at correct starting point directly. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index c1e7cbb..36808e0 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -167,19 +167,14 @@ bool cmMacroHelperCommand::InvokeInitialPass if (expandedArgs.size() > this->Args.size() - 1) { std::vector::const_iterator eit - = expandedArgs.begin(); - std::vector::size_type cnt = 0; + = expandedArgs.begin() + this->Args.size() - 1; for( ; eit != expandedArgs.end(); ++eit) { - if ( cnt >= this->Args.size()-1 ) + if (!argnDef.empty()) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += ";"; } - cnt ++; + argnDef += *eit; } } argnDefInitialized = true; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=11ecc31d0a2da0090195a682364fb4628f55673a commit 11ecc31d0a2da0090195a682364fb4628f55673a Author: Stephen Kelly AuthorDate: Sun Jan 25 15:44:49 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:06 2015 +0100 cmMacroCommand: Execute loop only if it has an effect. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index c1eb35e..c1e7cbb 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -164,20 +164,23 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (!argnDefInitialized) { - std::vector::const_iterator eit - = expandedArgs.begin(); - std::vector::size_type cnt = 0; - for( ; eit != expandedArgs.end(); ++eit) + if (expandedArgs.size() > this->Args.size() - 1) { - if ( cnt >= this->Args.size()-1 ) + std::vector::const_iterator eit + = expandedArgs.begin(); + std::vector::size_type cnt = 0; + for( ; eit != expandedArgs.end(); ++eit) { - if (!argnDef.empty()) + if ( cnt >= this->Args.size()-1 ) { - argnDef += ";"; + if (!argnDef.empty()) + { + argnDef += ";"; + } + argnDef += *eit; } - argnDef += *eit; + cnt ++; } - cnt ++; } argnDefInitialized = true; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f95543f8a6b38bf6d5350169bdb53d5066839b76 commit f95543f8a6b38bf6d5350169bdb53d5066839b76 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:42:12 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:06 2015 +0100 cmMacroCommand: Extract iteration starting point. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index e7c6a29..c1eb35e 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -164,9 +164,10 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (!argnDefInitialized) { - std::vector::const_iterator eit; + std::vector::const_iterator eit + = expandedArgs.begin(); std::vector::size_type cnt = 0; - for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) + for( ; eit != expandedArgs.end(); ++eit) { if ( cnt >= this->Args.size()-1 ) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9fe8f49353f927882af256c7870eb24e4be0c9be commit 9fe8f49353f927882af256c7870eb24e4be0c9be Author: Stephen Kelly AuthorDate: Wed Feb 11 00:29:20 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:06 2015 +0100 cmMacroCommand: Replace a loop with cmJoin. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 69fcca7..e7c6a29 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -262,11 +262,11 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, if (!this->Depth) { std::string name = this->Args[0]; - std::vector::size_type cc; name += "("; - for ( cc = 0; cc < this->Args.size(); cc ++ ) + if (!this->Args.empty()) { - name += " " + this->Args[cc]; + name += " "; + name += cmJoin(this->Args, " "); } name += " )"; mf.AddMacro(this->Args[0].c_str(), name.c_str()); ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 14:57:12 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 14:57:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1276-g84c6acb Message-ID: <20150211195712.5DF62AAD2D@public.kitware.com> 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 84c6acb615a1fc48c43f75241c1de74a337b8d07 (commit) via da4078d8654177c683d3f0544bdde8490537030c (commit) via 4e90e19bd10d2bd34a6b104f74a3d1ca9b445a42 (commit) via 466ced075eee8a6721a4f4f9dfb56727ce0cc9f7 (commit) via accda6b07f29c024b8e1eef73bd19e083603aa35 (commit) via c8918eaf1e8195bd47570812058f7f69820ae9bc (commit) via 8675d8471fa57a1415c360ab318e667e8dc6e6fb (commit) via e72feb19253ed3fc8fe3d119582a0ff81044bbdf (commit) via 2db97910e89be78c7d51e3d8d46889c6679f48b4 (commit) via 26c69d686bcce330d4ba4a426e886c77df753cdf (commit) via 18de4e9895335b894a1b176ce8210e7521e1c92c (commit) via b6b7b9ade08ad6d1d56c4463444accebd33bec91 (commit) via 709e96f11e0939638316bb3eab1e0bf32d5bdc05 (commit) via 255d307cd0cdecd0d10fabc020fd0b5b985c1eaf (commit) from 06b19bbb3777430b3348a082d57da56f0d6e0e34 (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=84c6acb615a1fc48c43f75241c1de74a337b8d07 commit 84c6acb615a1fc48c43f75241c1de74a337b8d07 Merge: 06b19bb da4078d Author: Stephen Kelly AuthorDate: Wed Feb 11 14:57:10 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 14:57:10 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next da4078d8 cmMacroCommand: Remove condition around ARGV replacement. 4e90e19b cmMacroCommand: Move computation of ARGV%n names out of double loop. 466ced07 cmMacroCommand: Move ARGV replacement out of condition. accda6b0 cmMacroCommand: Remove condition around ARGN replacement. c8918eaf cmMacroCommand: Declare tmps in the scope that it's used. 8675d847 cmMacroCommand: Declare arg in the scope that it is used. e72feb19 cmMacroCommand: Inline variable computation. 2db97910 cmMacroCommand: Compute variables outside of two loops. 26c69d68 cmMacroCommand: Remove intermediate arg variables. 18de4e98 cmMacroCommand: Remove condition around ARGN computation. b6b7b9ad cmMacroCommand: Remove conditional append of semicolon. 709e96f1 cmMacroCommand: Declare arg variables where used and initialized. 255d307c cmMacroCommand: Join the args strings outside of the loops. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da4078d8654177c683d3f0544bdde8490537030c commit da4078d8654177c683d3f0544bdde8490537030c Author: Stephen Kelly AuthorDate: Wed Feb 11 20:30:23 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Remove condition around ARGV replacement. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index c6f0571..1bc63a7 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -172,13 +172,10 @@ bool cmMacroHelperCommand::InvokeInitialPass // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values - if (tmps.find("${ARGV") != std::string::npos) + for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - for (unsigned int t = 0; t < expandedArgs.size(); ++t) - { - cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), - expandedArgs[t].c_str()); - } + cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), + expandedArgs[t].c_str()); } arg.Value = tmps; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4e90e19bd10d2bd34a6b104f74a3d1ca9b445a42 commit 4e90e19bd10d2bd34a6b104f74a3d1ca9b445a42 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:16:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Move computation of ARGV%n names out of double loop. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index f797da8..c6f0571 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -113,10 +113,18 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string expandedArgv = cmJoin(expandedArgs, ";"); std::vector variables; variables.reserve(this->Args.size() - 1); + std::vector argVs; + argVs.reserve(this->Args.size() - 1); + char argvName[60]; for (unsigned int j = 1; j < this->Args.size(); ++j) { variables.push_back("${" + this->Args[j] + "}"); } + for (unsigned int j = 0; j < expandedArgs.size(); ++j) + { + sprintf(argvName,"${ARGV%i}",j); + argVs.push_back(argvName); + } if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -166,12 +174,9 @@ bool cmMacroHelperCommand::InvokeInitialPass // then try replacing ARGV values if (tmps.find("${ARGV") != std::string::npos) { - char argvName[60]; - // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - sprintf(argvName,"${ARGV%i}",t); - cmSystemTools::ReplaceString(tmps, argvName, + cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), expandedArgs[t].c_str()); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=466ced075eee8a6721a4f4f9dfb56727ce0cc9f7 commit 466ced075eee8a6721a4f4f9dfb56727ce0cc9f7 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:08:05 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Move ARGV replacement out of condition. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index a9049bf..f797da8 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -160,14 +160,13 @@ bool cmMacroHelperCommand::InvokeInitialPass cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); + cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values if (tmps.find("${ARGV") != std::string::npos) { char argvName[60]; - cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); - // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=accda6b07f29c024b8e1eef73bd19e083603aa35 commit accda6b07f29c024b8e1eef73bd19e083603aa35 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:06:39 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Remove condition around ARGN replacement. There is none for ARGC replacement, so no reason to conditionalize the replacement. The computation is already done. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 817681d..a9049bf 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -159,11 +159,7 @@ bool cmMacroHelperCommand::InvokeInitialPass // replace argc cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); - // repleace ARGN - if (tmps.find("${ARGN}") != std::string::npos) - { - cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); - } + cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c8918eaf1e8195bd47570812058f7f69820ae9bc commit c8918eaf1e8195bd47570812058f7f69820ae9bc Author: Stephen Kelly AuthorDate: Wed Feb 11 20:25:44 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Declare tmps in the scope that it's used. We don't particularly need to reuse the string memory here, and this pattern is not common in CMake. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 2a1fea4..817681d 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -84,8 +84,6 @@ bool cmMacroHelperCommand::InvokeInitialPass std::vector expandedArgs; this->Makefile->ExpandArguments(args, expandedArgs); - std::string tmps; - // make sure the number of arguments passed is at least the number // required by the signature if (expandedArgs.size() < this->Args.size() - 1) @@ -151,7 +149,7 @@ bool cmMacroHelperCommand::InvokeInitialPass } else { - tmps = k->Value; + std::string tmps = k->Value; // replace formal arguments for (unsigned int j = 0; j < variables.size(); ++j) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8675d8471fa57a1415c360ab318e667e8dc6e6fb commit 8675d8471fa57a1415c360ab318e667e8dc6e6fb Author: Stephen Kelly AuthorDate: Wed Feb 11 20:23:36 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Declare arg in the scope that it is used. It can make sense to declare objects outside of loops if the size required by the object can grow (eg std::string when using getline), but that is not the case here. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index b87b39f..2a1fea4 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -85,7 +85,6 @@ bool cmMacroHelperCommand::InvokeInitialPass this->Makefile->ExpandArguments(args, expandedArgs); std::string tmps; - cmListFileArgument arg; // make sure the number of arguments passed is at least the number // required by the signature @@ -144,6 +143,8 @@ bool cmMacroHelperCommand::InvokeInitialPass // Set the FilePath on the arguments to match the function since it is // not stored and the original values may be freed k->FilePath = this->FilePath.c_str(); + + cmListFileArgument arg; if(k->Delim == cmListFileArgument::Bracket) { arg.Value = k->Value; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e72feb19253ed3fc8fe3d119582a0ff81044bbdf commit e72feb19253ed3fc8fe3d119582a0ff81044bbdf Author: Stephen Kelly AuthorDate: Wed Feb 11 20:14:30 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Inline variable computation. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index ebf8b25..b87b39f 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -86,7 +86,6 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string tmps; cmListFileArgument arg; - std::string variable; // make sure the number of arguments passed is at least the number // required by the signature @@ -119,10 +118,7 @@ bool cmMacroHelperCommand::InvokeInitialPass variables.reserve(this->Args.size() - 1); for (unsigned int j = 1; j < this->Args.size(); ++j) { - std::string variable = "${"; - variable += this->Args[j]; - variable += "}"; - variables.push_back(variable); + variables.push_back("${" + this->Args[j] + "}"); } if(!this->Functions.empty()) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2db97910e89be78c7d51e3d8d46889c6679f48b4 commit 2db97910e89be78c7d51e3d8d46889c6679f48b4 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:51:15 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Compute variables outside of two loops. Avoid computing them from scratch for each argument of each function. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 3a2afc1..ebf8b25 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -115,6 +115,15 @@ bool cmMacroHelperCommand::InvokeInitialPass = expandedArgs.begin() + this->Args.size() - 1; std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); std::string expandedArgv = cmJoin(expandedArgs, ";"); + std::vector variables; + variables.reserve(this->Args.size() - 1); + for (unsigned int j = 1; j < this->Args.size(); ++j) + { + std::string variable = "${"; + variable += this->Args[j]; + variable += "}"; + variables.push_back(variable); + } if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -147,13 +156,10 @@ bool cmMacroHelperCommand::InvokeInitialPass { tmps = k->Value; // replace formal arguments - for (unsigned int j = 1; j < this->Args.size(); ++j) + for (unsigned int j = 0; j < variables.size(); ++j) { - variable = "${"; - variable += this->Args[j]; - variable += "}"; - cmSystemTools::ReplaceString(tmps, variable.c_str(), - expandedArgs[j-1].c_str()); + cmSystemTools::ReplaceString(tmps, variables[j].c_str(), + expandedArgs[j].c_str()); } // replace argc cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=26c69d686bcce330d4ba4a426e886c77df753cdf commit 26c69d686bcce330d4ba4a426e886c77df753cdf Author: Stephen Kelly AuthorDate: Wed Feb 11 19:26:33 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Remove intermediate arg variables. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index da5663d..3a2afc1 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -161,9 +161,7 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGN if (tmps.find("${ARGN}") != std::string::npos) { - std::string argnDef; - argnDef += expandedArgn; - cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); + cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); } // if the current argument of the current function has ${ARGV in it @@ -171,10 +169,7 @@ bool cmMacroHelperCommand::InvokeInitialPass if (tmps.find("${ARGV") != std::string::npos) { char argvName[60]; - - std::string argvDef; - argvDef += expandedArgv; - cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); + cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=18de4e9895335b894a1b176ce8210e7521e1c92c commit 18de4e9895335b894a1b176ce8210e7521e1c92c Author: Stephen Kelly AuthorDate: Wed Feb 11 19:17:29 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Remove condition around ARGN computation. An empty string is appended if the condition is false, which is ok for this commit. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 597f63b..da5663d 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -162,10 +162,7 @@ bool cmMacroHelperCommand::InvokeInitialPass if (tmps.find("${ARGN}") != std::string::npos) { std::string argnDef; - if (expandedArgs.size() > this->Args.size() - 1) - { - argnDef += expandedArgn; - } + argnDef += expandedArgn; cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b6b7b9ade08ad6d1d56c4463444accebd33bec91 commit b6b7b9ade08ad6d1d56c4463444accebd33bec91 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:16:15 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Remove conditional append of semicolon. The conditions are never true. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 367e4d3..597f63b 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -164,10 +164,6 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string argnDef; if (expandedArgs.size() > this->Args.size() - 1) { - if (!argnDef.empty() && !expandedArgs.empty()) - { - argnDef += ";"; - } argnDef += expandedArgn; } cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); @@ -180,10 +176,6 @@ bool cmMacroHelperCommand::InvokeInitialPass char argvName[60]; std::string argvDef; - if (!argvDef.empty() && !expandedArgs.empty()) - { - argvDef += ";"; - } argvDef += expandedArgv; cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=709e96f11e0939638316bb3eab1e0bf32d5bdc05 commit 709e96f11e0939638316bb3eab1e0bf32d5bdc05 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:10:19 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:54 2015 +0100 cmMacroCommand: Declare arg variables where used and initialized. Make the initialization by population with the expanded* content unconditional. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 18d637a..367e4d3 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -111,15 +111,10 @@ bool cmMacroHelperCommand::InvokeInitialPass argcDefStream << expandedArgs.size(); std::string argcDef = argcDefStream.str(); - // declare varuiables for ARGV ARGN but do not compute until needed - std::string argvDef; - std::string argnDef; std::vector::const_iterator eit = expandedArgs.begin() + this->Args.size() - 1; std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); std::string expandedArgv = cmJoin(expandedArgs, ";"); - bool argnDefInitialized = false; - bool argvDefInitialized = false; if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -166,17 +161,14 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGN if (tmps.find("${ARGN}") != std::string::npos) { - if (!argnDefInitialized) + std::string argnDef; + if (expandedArgs.size() > this->Args.size() - 1) { - if (expandedArgs.size() > this->Args.size() - 1) + if (!argnDef.empty() && !expandedArgs.empty()) { - if (!argnDef.empty() && !expandedArgs.empty()) - { - argnDef += ";"; - } - argnDef += expandedArgn; + argnDef += ";"; } - argnDefInitialized = true; + argnDef += expandedArgn; } cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); } @@ -187,16 +179,12 @@ bool cmMacroHelperCommand::InvokeInitialPass { char argvName[60]; - // repleace ARGV, compute it only once - if (!argvDefInitialized) + std::string argvDef; + if (!argvDef.empty() && !expandedArgs.empty()) { - if (!argvDef.empty() && !expandedArgs.empty()) - { - argvDef += ";"; - } - argvDef += expandedArgv; - argvDefInitialized = true; + argvDef += ";"; } + argvDef += expandedArgv; cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); // also replace the ARGV1 ARGV2 ... etc http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=255d307cd0cdecd0d10fabc020fd0b5b985c1eaf commit 255d307cd0cdecd0d10fabc020fd0b5b985c1eaf Author: Stephen Kelly AuthorDate: Wed Feb 11 20:47:16 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 20:51:53 2015 +0100 cmMacroCommand: Join the args strings outside of the loops. This means that we compute the strings even if not used in the macro but this shouldn't be expensive and it simplifies the code. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index e09a934..18d637a 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -114,6 +114,10 @@ bool cmMacroHelperCommand::InvokeInitialPass // declare varuiables for ARGV ARGN but do not compute until needed std::string argvDef; std::string argnDef; + std::vector::const_iterator eit + = expandedArgs.begin() + this->Args.size() - 1; + std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); + std::string expandedArgv = cmJoin(expandedArgs, ";"); bool argnDefInitialized = false; bool argvDefInitialized = false; if(!this->Functions.empty()) @@ -170,9 +174,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argnDef += ";"; } - std::vector::const_iterator eit - = expandedArgs.begin() + this->Args.size() - 1; - argnDef += cmJoin(cmRange(eit, expandedArgs.end()), ";"); + argnDef += expandedArgn; } argnDefInitialized = true; } @@ -192,7 +194,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argvDef += ";"; } - argvDef += cmJoin(expandedArgs, ";"); + argvDef += expandedArgv; argvDefInitialized = true; } cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); ----------------------------------------------------------------------- Summary of changes: Source/cmMacroCommand.cxx | 86 +++++++++++++++------------------------------ 1 file changed, 29 insertions(+), 57 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 15:18:49 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 15:18:49 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1278-g1c961d4 Message-ID: <20150211201849.73EB8A9FB4@public.kitware.com> 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 1c961d4388be52bf7b6d644357a9cc86698d2eb1 (commit) via e614bb74893c7cb8583f131b1b0fe44af0c128e0 (commit) from 84c6acb615a1fc48c43f75241c1de74a337b8d07 (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=1c961d4388be52bf7b6d644357a9cc86698d2eb1 commit 1c961d4388be52bf7b6d644357a9cc86698d2eb1 Merge: 84c6acb e614bb7 Author: Stephen Kelly AuthorDate: Wed Feb 11 15:18:48 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 15:18:48 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next e614bb74 Revert "cmMacroCommand: Remove condition around ARGV replacement." http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e614bb74893c7cb8583f131b1b0fe44af0c128e0 commit e614bb74893c7cb8583f131b1b0fe44af0c128e0 Author: Stephen Kelly AuthorDate: Wed Feb 11 21:15:17 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 21:15:17 2015 +0100 Revert "cmMacroCommand: Remove condition around ARGV replacement." This reverts commit da4078d8654177c683d3f0544bdde8490537030c. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 1bc63a7..c6f0571 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -172,10 +172,13 @@ bool cmMacroHelperCommand::InvokeInitialPass // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values - for (unsigned int t = 0; t < expandedArgs.size(); ++t) + if (tmps.find("${ARGV") != std::string::npos) { - cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), - expandedArgs[t].c_str()); + for (unsigned int t = 0; t < expandedArgs.size(); ++t) + { + cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), + expandedArgs[t].c_str()); + } } arg.Value = tmps; ----------------------------------------------------------------------- Summary of changes: Source/cmMacroCommand.cxx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 15:19:29 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 15:19:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1280-g17b2eba Message-ID: <20150211201929.08DDCAA032@public.kitware.com> 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 17b2ebaf51f87d9622c92fce30605989ce1b0afd (commit) via df66c10eb5c616acd227d1765c1163421b3f57d6 (commit) from 1c961d4388be52bf7b6d644357a9cc86698d2eb1 (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=17b2ebaf51f87d9622c92fce30605989ce1b0afd commit 17b2ebaf51f87d9622c92fce30605989ce1b0afd Merge: 1c961d4 df66c10 Author: Stephen Kelly AuthorDate: Wed Feb 11 15:19:28 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 15:19:28 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next df66c10e cmMacroCommand: Move computation of ARGV%n names out of double loop. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=df66c10eb5c616acd227d1765c1163421b3f57d6 commit df66c10eb5c616acd227d1765c1163421b3f57d6 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:16:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 21:19:11 2015 +0100 cmMacroCommand: Move computation of ARGV%n names out of double loop. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index f797da8..c6f0571 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -113,10 +113,18 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string expandedArgv = cmJoin(expandedArgs, ";"); std::vector variables; variables.reserve(this->Args.size() - 1); + std::vector argVs; + argVs.reserve(this->Args.size() - 1); + char argvName[60]; for (unsigned int j = 1; j < this->Args.size(); ++j) { variables.push_back("${" + this->Args[j] + "}"); } + for (unsigned int j = 0; j < expandedArgs.size(); ++j) + { + sprintf(argvName,"${ARGV%i}",j); + argVs.push_back(argvName); + } if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -166,12 +174,9 @@ bool cmMacroHelperCommand::InvokeInitialPass // then try replacing ARGV values if (tmps.find("${ARGV") != std::string::npos) { - char argvName[60]; - // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - sprintf(argvName,"${ARGV%i}",t); - cmSystemTools::ReplaceString(tmps, argvName, + cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), expandedArgs[t].c_str()); } } ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 15:19:44 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 15:19:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1286-g9e978e3 Message-ID: <20150211201944.5D917AA05D@public.kitware.com> 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 9e978e3ee89f5f53991cd09e1b25ba3d2ec03e98 (commit) via f30022eb07b913598326d2e3b10ff2e706fbe873 (commit) via 7607c3d16aa0636458c909f4036e4b0d91581b30 (commit) via ebd556caa9e1fc92e00c8e401b145c531390e854 (commit) via 290ca8e2d0328d27f51ff5248c35e32e44fdd1eb (commit) via f99991db882c2f4cf8246b9c272845faaa5bbce5 (commit) from 17b2ebaf51f87d9622c92fce30605989ce1b0afd (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=9e978e3ee89f5f53991cd09e1b25ba3d2ec03e98 commit 9e978e3ee89f5f53991cd09e1b25ba3d2ec03e98 Merge: 17b2eba f30022e Author: Brad King AuthorDate: Wed Feb 11 15:19:42 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 15:19:42 2015 -0500 Merge topic 'install-DESTINATION-genex' into next f30022eb install: Allow generator expressions in TARGETS DESTINATION (#14317) 7607c3d1 cmInstallGenerator: Pass destination explicitly to AddInstallRule ebd556ca cmInstallGenerator: Fix check for absolute install destinations 290ca8e2 cmInstallGenerator: Refactor computation of absolute install dest f99991db cmInstallGenerator: Move GetDestination to subclasses that need it http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f30022eb07b913598326d2e3b10ff2e706fbe873 commit f30022eb07b913598326d2e3b10ff2e706fbe873 Author: Brad King AuthorDate: Wed Feb 11 14:02:45 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 15:15:33 2015 -0500 install: Allow generator expressions in TARGETS DESTINATION (#14317) This will allow per-config destinations for targets in EXPORT sets. Using multiple install(TARGETS) with separate CONFIGURATIONS is rejected as a target appearing more than once in an export set. Now instead one can write install(TARGETS foo EXPORT exp DESTINATION lib/$) to get a single logical membership of the target in the export set while still having a per-config destination. diff --git a/Help/command/install.rst b/Help/command/install.rst index 5dd5aaa..c99ed73 100644 --- a/Help/command/install.rst +++ b/Help/command/install.rst @@ -159,6 +159,10 @@ file itself, call ``install(EXPORT)``, documented below. Installing a target with the :prop_tgt:`EXCLUDE_FROM_ALL` target property set to ``TRUE`` has undefined behavior. +The install destination given to the target install ``DESTINATION`` may +use "generator expressions" with the syntax ``$<...>``. See the +:manual:`cmake-generator-expressions(7)` manual for available expressions. + Installing Files ^^^^^^^^^^^^^^^^ diff --git a/Help/release/dev/install-DESTINATION-genex.rst b/Help/release/dev/install-DESTINATION-genex.rst new file mode 100644 index 0000000..4c4bbed --- /dev/null +++ b/Help/release/dev/install-DESTINATION-genex.rst @@ -0,0 +1,5 @@ +install-DESTINATION-genex +------------------------- + +* The :command:`install(TARGETS)` command learned to support + generator expressions in the ``DESTINATION`` value. diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index 053c022..ba1dde2 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -398,7 +398,7 @@ cmExportInstallFileGenerator cmTarget* target = itgen->GetTarget(); // Construct the installed location of the target. - std::string dest = itgen->GetDestination(); + std::string dest = itgen->GetDestination(config); std::string value; if(!cmSystemTools::FileIsFullPath(dest.c_str())) { diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx index 7ab88f1..b035bad 100644 --- a/Source/cmInstallTargetGenerator.cxx +++ b/Source/cmInstallTargetGenerator.cxx @@ -12,6 +12,7 @@ #include "cmInstallTargetGenerator.h" #include "cmComputeLinkInformation.h" +#include "cmGeneratorExpression.h" #include "cmGlobalGenerator.h" #include "cmLocalGenerator.h" #include "cmMakefile.h" @@ -78,7 +79,7 @@ void cmInstallTargetGenerator::GenerateScriptForConfig(std::ostream& os, fromDirConfig += "/"; } std::string toDir = - this->ConvertToAbsoluteDestination(this->Destination); + this->ConvertToAbsoluteDestination(this->GetDestination(config)); toDir += "/"; // Compute the list of files to install for this target. @@ -323,7 +324,7 @@ void cmInstallTargetGenerator::GenerateScriptForConfig(std::ostream& os, const char* no_dir_permissions = 0; const char* no_rename = 0; bool optional = this->Optional || this->ImportLibrary; - this->AddInstallRule(os, this->Destination, + this->AddInstallRule(os, this->GetDestination(config), type, filesFrom, optional, this->FilePermissions.c_str(), no_dir_permissions, no_rename, literal_args.c_str(), @@ -336,6 +337,15 @@ void cmInstallTargetGenerator::GenerateScriptForConfig(std::ostream& os, //---------------------------------------------------------------------------- std::string +cmInstallTargetGenerator::GetDestination(std::string const& config) const +{ + cmGeneratorExpression ge; + return ge.Parse(this->Destination) + ->Evaluate(this->Target->GetMakefile(), config); +} + +//---------------------------------------------------------------------------- +std::string cmInstallTargetGenerator::GetInstallFilename(const std::string& config) const { NameType nameType = this->ImportLibrary? NameImplib : NameNormal; diff --git a/Source/cmInstallTargetGenerator.h b/Source/cmInstallTargetGenerator.h index 4d4b399..075c8a4 100644 --- a/Source/cmInstallTargetGenerator.h +++ b/Source/cmInstallTargetGenerator.h @@ -60,8 +60,7 @@ public: cmTarget* GetTarget() const { return this->Target; } bool IsImportLibrary() const { return this->ImportLibrary; } - std::string const& GetDestination() const - { return this->Destination; } + std::string GetDestination(std::string const& config) const; protected: virtual void GenerateScript(std::ostream& os); diff --git a/Tests/ExportImport/Export/CMakeLists.txt b/Tests/ExportImport/Export/CMakeLists.txt index e130eca..0df42d9 100644 --- a/Tests/ExportImport/Export/CMakeLists.txt +++ b/Tests/ExportImport/Export/CMakeLists.txt @@ -68,6 +68,11 @@ add_library(testLib5 SHARED testLib5.c) add_library(testLib6 STATIC testLib6.cxx testLib6c.c) +add_library(testLibPerConfigDest STATIC testLibPerConfigDest.c) +install(TARGETS testLibPerConfigDest EXPORT exp + DESTINATION lib/$<$>:$>$<$>>:NoConfig> + ) + # Work-around: Visual Studio 6 does not support per-target object files. set(VS6) if("${CMAKE_GENERATOR}" MATCHES "Visual Studio 6") @@ -446,9 +451,9 @@ install( cmp0022NEW cmp0022OLD systemlib EXPORT exp - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib NAMELINK_SKIP - ARCHIVE DESTINATION lib + RUNTIME DESTINATION $<1:bin> + LIBRARY DESTINATION $<1:lib> NAMELINK_SKIP + ARCHIVE DESTINATION $<1:lib> FRAMEWORK DESTINATION Frameworks BUNDLE DESTINATION Applications ) @@ -503,6 +508,7 @@ export(TARGETS testExe1 testLib1 testLib2 testLib3 export(TARGETS testExe2 testLib4 testLib5 testLib6 testExe3 testExe2lib testLib4lib testLib4libdbg testLib4libopt testLibCycleA testLibCycleB + testLibPerConfigDest NAMESPACE bld_ APPEND FILE ExportBuildTree.cmake ) diff --git a/Tests/ExportImport/Export/testLibPerConfigDest.c b/Tests/ExportImport/Export/testLibPerConfigDest.c new file mode 100644 index 0000000..c7113fc --- /dev/null +++ b/Tests/ExportImport/Export/testLibPerConfigDest.c @@ -0,0 +1 @@ +int testLibPerConfigDest(void) { return 0; } diff --git a/Tests/ExportImport/Import/A/CMakeLists.txt b/Tests/ExportImport/Import/A/CMakeLists.txt index 358776b..ced7b03 100644 --- a/Tests/ExportImport/Import/A/CMakeLists.txt +++ b/Tests/ExportImport/Import/A/CMakeLists.txt @@ -34,6 +34,7 @@ target_link_libraries(imp_testExe1 exp_testLib5 exp_testLib6 exp_testLibCycleA + exp_testLibPerConfigDest ) # Try building a plugin to an executable imported from the install tree. @@ -66,6 +67,7 @@ target_link_libraries(imp_testExe1b bld_testLib5 bld_testLib6 bld_testLibCycleA + bld_testLibPerConfigDest ) add_custom_target(check_testLib1_genex ALL diff --git a/Tests/ExportImport/Import/A/imp_testExe1.c b/Tests/ExportImport/Import/A/imp_testExe1.c index 451998a..150fcef 100644 --- a/Tests/ExportImport/Import/A/imp_testExe1.c +++ b/Tests/ExportImport/Import/A/imp_testExe1.c @@ -7,6 +7,7 @@ extern int testLib4lib(); extern int testLib5(); extern int testLib6(); extern int testLibCycleA1(); +extern int testLibPerConfigDest(); /* Switch a symbol between debug and optimized builds to make sure the proper library is found from the testLib4 link interface. */ @@ -21,5 +22,6 @@ int main() { return (testLib2() + generated_by_testExe1() + testLib3() + testLib4() + testLib5() + testLib6() + testLibCycleA1() + + testLibPerConfigDest() + generated_by_testExe3() + testLib4lib() + testLib4libcfg()); } diff --git a/Tests/RunCMake/install/RunCMakeTest.cmake b/Tests/RunCMake/install/RunCMakeTest.cmake index 53b91f3..7149603 100644 --- a/Tests/RunCMake/install/RunCMakeTest.cmake +++ b/Tests/RunCMake/install/RunCMakeTest.cmake @@ -6,3 +6,4 @@ run_cmake(DIRECTORY-message-lazy) run_cmake(SkipInstallRulesWarning) run_cmake(SkipInstallRulesNoWarning1) run_cmake(SkipInstallRulesNoWarning2) +run_cmake(TARGETS-DESTINATION-bad) diff --git a/Tests/RunCMake/install/TARGETS-DESTINATION-bad-result.txt b/Tests/RunCMake/install/TARGETS-DESTINATION-bad-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/install/TARGETS-DESTINATION-bad-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/install/TARGETS-DESTINATION-bad-stderr.txt b/Tests/RunCMake/install/TARGETS-DESTINATION-bad-stderr.txt new file mode 100644 index 0000000..9844158 --- /dev/null +++ b/Tests/RunCMake/install/TARGETS-DESTINATION-bad-stderr.txt @@ -0,0 +1,6 @@ +CMake Error: + Error evaluating generator expression: + + \$ + + Expression did not evaluate to a known generator expression diff --git a/Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake b/Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake new file mode 100644 index 0000000..feff52d --- /dev/null +++ b/Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake @@ -0,0 +1,3 @@ +enable_language(C) +add_library(empty empty.c) +install(TARGETS empty DESTINATION $) diff --git a/Tests/RunCMake/install/empty.c b/Tests/RunCMake/install/empty.c new file mode 100644 index 0000000..e69de29 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7607c3d16aa0636458c909f4036e4b0d91581b30 commit 7607c3d16aa0636458c909f4036e4b0d91581b30 Author: Brad King AuthorDate: Wed Feb 11 11:48:13 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 15:14:01 2015 -0500 cmInstallGenerator: Pass destination explicitly to AddInstallRule This will allow specific invocations to transform the destination before AddInstallRule uses it. diff --git a/Source/cmInstallDirectoryGenerator.cxx b/Source/cmInstallDirectoryGenerator.cxx index 8c13bab..7593380 100644 --- a/Source/cmInstallDirectoryGenerator.cxx +++ b/Source/cmInstallDirectoryGenerator.cxx @@ -44,7 +44,9 @@ cmInstallDirectoryGenerator::GenerateScriptActions(std::ostream& os, { // Write code to install the directories. const char* no_rename = 0; - this->AddInstallRule(os, cmInstallType_DIRECTORY, + this->AddInstallRule(os, + this->Destination, + cmInstallType_DIRECTORY, this->Directories, this->Optional, this->FilePermissions.c_str(), diff --git a/Source/cmInstallExportGenerator.cxx b/Source/cmInstallExportGenerator.cxx index 77af6c2..38c80df 100644 --- a/Source/cmInstallExportGenerator.cxx +++ b/Source/cmInstallExportGenerator.cxx @@ -185,7 +185,8 @@ cmInstallExportGenerator::GenerateScriptConfigs(std::ostream& os, files.push_back(i->second); std::string config_test = this->CreateConfigTest(i->first); os << indent << "if(" << config_test << ")\n"; - this->AddInstallRule(os, cmInstallType_FILES, files, false, + this->AddInstallRule(os, this->Destination, + cmInstallType_FILES, files, false, this->FilePermissions.c_str(), 0, 0, 0, indent.Next()); os << indent << "endif()\n"; @@ -224,6 +225,7 @@ void cmInstallExportGenerator::GenerateScriptActions(std::ostream& os, // Install the main export file. std::vector files; files.push_back(this->MainImportFile); - this->AddInstallRule(os, cmInstallType_FILES, files, false, + this->AddInstallRule(os, this->Destination, + cmInstallType_FILES, files, false, this->FilePermissions.c_str(), 0, 0, 0, indent); } diff --git a/Source/cmInstallFilesGenerator.cxx b/Source/cmInstallFilesGenerator.cxx index 91b102a..28c27c2 100644 --- a/Source/cmInstallFilesGenerator.cxx +++ b/Source/cmInstallFilesGenerator.cxx @@ -57,6 +57,7 @@ void cmInstallFilesGenerator::AddFilesInstallRule( // Write code to install the files. const char* no_dir_permissions = 0; this->AddInstallRule(os, + this->Destination, (this->Programs ? cmInstallType_PROGRAMS : cmInstallType_FILES), diff --git a/Source/cmInstallGenerator.cxx b/Source/cmInstallGenerator.cxx index 3ae8975..2e1c5f0 100644 --- a/Source/cmInstallGenerator.cxx +++ b/Source/cmInstallGenerator.cxx @@ -37,6 +37,7 @@ cmInstallGenerator void cmInstallGenerator ::AddInstallRule( std::ostream& os, + std::string const& dest, cmInstallType type, std::vector const& files, bool optional /* = false */, @@ -60,7 +61,6 @@ void cmInstallGenerator case cmInstallType_FILES: stype = "FILE"; break; } os << indent; - std::string const& dest = this->Destination; if (cmSystemTools::FileIsFullPath(dest.c_str())) { os << "list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES\n"; diff --git a/Source/cmInstallGenerator.h b/Source/cmInstallGenerator.h index 1e87bda..c4191e4 100644 --- a/Source/cmInstallGenerator.h +++ b/Source/cmInstallGenerator.h @@ -40,7 +40,9 @@ public: virtual ~cmInstallGenerator(); void AddInstallRule( - std::ostream& os, cmInstallType type, + std::ostream& os, + std::string const& dest, + cmInstallType type, std::vector const& files, bool optional = false, const char* permissions_file = 0, diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx index a22b123..7ab88f1 100644 --- a/Source/cmInstallTargetGenerator.cxx +++ b/Source/cmInstallTargetGenerator.cxx @@ -323,8 +323,8 @@ void cmInstallTargetGenerator::GenerateScriptForConfig(std::ostream& os, const char* no_dir_permissions = 0; const char* no_rename = 0; bool optional = this->Optional || this->ImportLibrary; - this->AddInstallRule(os, type, filesFrom, - optional, + this->AddInstallRule(os, this->Destination, + type, filesFrom, optional, this->FilePermissions.c_str(), no_dir_permissions, no_rename, literal_args.c_str(), indent); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ebd556caa9e1fc92e00c8e401b145c531390e854 commit ebd556caa9e1fc92e00c8e401b145c531390e854 Author: Brad King AuthorDate: Wed Feb 11 11:52:19 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 15:13:57 2015 -0500 cmInstallGenerator: Fix check for absolute install destinations In AddInstallRule, check for absolute install destinations before converting to the absolute install destination. Previously this worked only by accident because literal "${CMAKE_INSTALL_PREFIX}" looks like a relative path. diff --git a/Source/cmInstallGenerator.cxx b/Source/cmInstallGenerator.cxx index 1d64674..3ae8975 100644 --- a/Source/cmInstallGenerator.cxx +++ b/Source/cmInstallGenerator.cxx @@ -60,7 +60,7 @@ void cmInstallGenerator case cmInstallType_FILES: stype = "FILE"; break; } os << indent; - std::string dest = this->ConvertToAbsoluteDestination(this->Destination); + std::string const& dest = this->Destination; if (cmSystemTools::FileIsFullPath(dest.c_str())) { os << "list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES\n"; @@ -94,7 +94,8 @@ void cmInstallGenerator << "${CMAKE_ABSOLUTE_DESTINATION_FILES}\")\n"; os << indent << "endif()\n"; } - os << "file(INSTALL DESTINATION \"" << dest << "\" TYPE " << stype; + std::string absDest = this->ConvertToAbsoluteDestination(dest); + os << "file(INSTALL DESTINATION \"" << absDest << "\" TYPE " << stype; if(optional) { os << " OPTIONAL"; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=290ca8e2d0328d27f51ff5248c35e32e44fdd1eb commit 290ca8e2d0328d27f51ff5248c35e32e44fdd1eb Author: Brad King AuthorDate: Wed Feb 11 11:48:02 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 15:12:16 2015 -0500 cmInstallGenerator: Refactor computation of absolute install dest Replace the GetInstallDestination method, which looked up the Destination ivar, with a new ConvertToAbsoluteDestination method that takes the nominal destination as an argument. Update call sites accordingly. This will allow some clients to transform the install destination before calling the method. diff --git a/Source/cmInstallExportGenerator.cxx b/Source/cmInstallExportGenerator.cxx index 4480cc6..77af6c2 100644 --- a/Source/cmInstallExportGenerator.cxx +++ b/Source/cmInstallExportGenerator.cxx @@ -199,7 +199,7 @@ void cmInstallExportGenerator::GenerateScriptActions(std::ostream& os, { // Remove old per-configuration export files if the main changes. std::string installedDir = "$ENV{DESTDIR}"; - installedDir += this->GetInstallDestination(); + installedDir += this->ConvertToAbsoluteDestination(this->Destination); installedDir += "/"; std::string installedFile = installedDir; installedFile += this->FileName; diff --git a/Source/cmInstallGenerator.cxx b/Source/cmInstallGenerator.cxx index b261cbf..1d64674 100644 --- a/Source/cmInstallGenerator.cxx +++ b/Source/cmInstallGenerator.cxx @@ -60,7 +60,7 @@ void cmInstallGenerator case cmInstallType_FILES: stype = "FILE"; break; } os << indent; - std::string dest = this->GetInstallDestination(); + std::string dest = this->ConvertToAbsoluteDestination(this->Destination); if (cmSystemTools::FileIsFullPath(dest.c_str())) { os << "list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES\n"; @@ -179,15 +179,16 @@ bool cmInstallGenerator::InstallsForConfig(const std::string& config) } //---------------------------------------------------------------------------- -std::string cmInstallGenerator::GetInstallDestination() const +std::string +cmInstallGenerator::ConvertToAbsoluteDestination(std::string const& dest) const { std::string result; - if(!this->Destination.empty() && - !cmSystemTools::FileIsFullPath(this->Destination.c_str())) + if(!dest.empty() && + !cmSystemTools::FileIsFullPath(dest.c_str())) { result = "${CMAKE_INSTALL_PREFIX}/"; } - result += this->Destination; + result += dest; return result; } diff --git a/Source/cmInstallGenerator.h b/Source/cmInstallGenerator.h index eeeca15..1e87bda 100644 --- a/Source/cmInstallGenerator.h +++ b/Source/cmInstallGenerator.h @@ -52,7 +52,7 @@ public: /** Get the install destination as it should appear in the installation script. */ - std::string GetInstallDestination() const; + std::string ConvertToAbsoluteDestination(std::string const& dest) const; /** Test if this generator installs something for a given configuration. */ bool InstallsForConfig(const std::string& config); diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx index 6d69f54..a22b123 100644 --- a/Source/cmInstallTargetGenerator.cxx +++ b/Source/cmInstallTargetGenerator.cxx @@ -77,7 +77,8 @@ void cmInstallTargetGenerator::GenerateScriptForConfig(std::ostream& os, fromDirConfig = this->Target->GetDirectory(config, this->ImportLibrary); fromDirConfig += "/"; } - std::string toDir = this->GetInstallDestination(); + std::string toDir = + this->ConvertToAbsoluteDestination(this->Destination); toDir += "/"; // Compute the list of files to install for this target. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f99991db882c2f4cf8246b9c272845faaa5bbce5 commit f99991db882c2f4cf8246b9c272845faaa5bbce5 Author: Brad King AuthorDate: Wed Feb 11 11:45:41 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 15:05:57 2015 -0500 cmInstallGenerator: Move GetDestination to subclasses that need it The method is used only for EXPORT and TARGET install destinations. While at it, make it return a std::string by reference instead of a "const char*". diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index a0d9013..053c022 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -73,8 +73,8 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) // to reference if they are relative to the install prefix. std::string installPrefix = this->IEGen->GetMakefile()->GetSafeDefinition("CMAKE_INSTALL_PREFIX"); - const char* installDest = this->IEGen->GetDestination(); - if(cmSystemTools::FileIsFullPath(installDest)) + std::string const& expDest = this->IEGen->GetDestination(); + if(cmSystemTools::FileIsFullPath(expDest)) { // The export file is being installed to an absolute path so the // package is not relocatable. Use the configured install prefix. @@ -87,7 +87,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) { // Add code to compute the installation prefix relative to the // import file location. - std::string absDest = installPrefix + "/" + installDest; + std::string absDest = installPrefix + "/" + expDest; std::string absDestS = absDest + "/"; os << "# Compute the installation prefix relative to this file.\n" << "get_filename_component(_IMPORT_PREFIX" @@ -109,7 +109,7 @@ bool cmExportInstallFileGenerator::GenerateMainFile(std::ostream& os) "unset(_realOrig)\n" "unset(_realCurr)\n"; } - std::string dest = installDest; + std::string dest = expDest; while(!dest.empty()) { os << diff --git a/Source/cmInstallExportGenerator.h b/Source/cmInstallExportGenerator.h index eb8c28b..3e078f2 100644 --- a/Source/cmInstallExportGenerator.h +++ b/Source/cmInstallExportGenerator.h @@ -41,6 +41,9 @@ public: const std::string& GetNamespace() const { return this->Namespace; } + std::string const& GetDestination() const + { return this->Destination; } + protected: virtual void GenerateScript(std::ostream& os); virtual void GenerateScriptConfigs(std::ostream& os, Indent const& indent); diff --git a/Source/cmInstallGenerator.h b/Source/cmInstallGenerator.h index 38aac91..eeeca15 100644 --- a/Source/cmInstallGenerator.h +++ b/Source/cmInstallGenerator.h @@ -50,9 +50,6 @@ public: Indent const& indent = Indent() ); - const char* GetDestination() const - { return this->Destination.c_str(); } - /** Get the install destination as it should appear in the installation script. */ std::string GetInstallDestination() const; diff --git a/Source/cmInstallTargetGenerator.h b/Source/cmInstallTargetGenerator.h index 7e5cc71..4d4b399 100644 --- a/Source/cmInstallTargetGenerator.h +++ b/Source/cmInstallTargetGenerator.h @@ -60,6 +60,9 @@ public: cmTarget* GetTarget() const { return this->Target; } bool IsImportLibrary() const { return this->ImportLibrary; } + std::string const& GetDestination() const + { return this->Destination; } + protected: virtual void GenerateScript(std::ostream& os); virtual void GenerateScriptForConfig(std::ostream& os, ----------------------------------------------------------------------- Summary of changes: Help/command/install.rst | 4 ++++ Help/release/dev/install-DESTINATION-genex.rst | 5 +++++ Source/cmExportInstallFileGenerator.cxx | 10 +++++----- Source/cmInstallDirectoryGenerator.cxx | 4 +++- Source/cmInstallExportGenerator.cxx | 8 +++++--- Source/cmInstallExportGenerator.h | 3 +++ Source/cmInstallFilesGenerator.cxx | 1 + Source/cmInstallGenerator.cxx | 14 ++++++++------ Source/cmInstallGenerator.h | 9 ++++----- Source/cmInstallTargetGenerator.cxx | 17 ++++++++++++++--- Source/cmInstallTargetGenerator.h | 2 ++ Tests/ExportImport/Export/CMakeLists.txt | 12 +++++++++--- Tests/ExportImport/Export/testLibPerConfigDest.c | 1 + Tests/ExportImport/Import/A/CMakeLists.txt | 2 ++ Tests/ExportImport/Import/A/imp_testExe1.c | 2 ++ Tests/RunCMake/install/RunCMakeTest.cmake | 1 + .../TARGETS-DESTINATION-bad-result.txt} | 0 .../install/TARGETS-DESTINATION-bad-stderr.txt | 6 ++++++ Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake | 3 +++ .../RunCMake/{GeneratorExpression => install}/empty.c | 0 20 files changed, 78 insertions(+), 26 deletions(-) create mode 100644 Help/release/dev/install-DESTINATION-genex.rst create mode 100644 Tests/ExportImport/Export/testLibPerConfigDest.c copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => install/TARGETS-DESTINATION-bad-result.txt} (100%) create mode 100644 Tests/RunCMake/install/TARGETS-DESTINATION-bad-stderr.txt create mode 100644 Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake copy Tests/RunCMake/{GeneratorExpression => install}/empty.c (100%) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 16:26:12 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 16:26:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1288-g1af2299 Message-ID: <20150211212612.BF5D9AA152@public.kitware.com> 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 1af2299bd96f8d75142af21439a81a4038608198 (commit) via 2ad4e4cdcc316de116baa2a8611476dec6b5e99a (commit) from 9e978e3ee89f5f53991cd09e1b25ba3d2ec03e98 (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=1af2299bd96f8d75142af21439a81a4038608198 commit 1af2299bd96f8d75142af21439a81a4038608198 Merge: 9e978e3 2ad4e4c Author: Stephen Kelly AuthorDate: Wed Feb 11 16:26:12 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 16:26:12 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next 2ad4e4cd cmMacroCommand: Manipulate target string directly. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2ad4e4cdcc316de116baa2a8611476dec6b5e99a commit 2ad4e4cdcc316de116baa2a8611476dec6b5e99a Author: Stephen Kelly AuthorDate: Wed Feb 11 22:16:03 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:16:03 2015 +0100 cmMacroCommand: Manipulate target string directly. Avoid copying a string from the source, manipulating it, and then copying it back. Manipulate it in place instead. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index c6f0571..e2751f9 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -151,37 +151,33 @@ bool cmMacroHelperCommand::InvokeInitialPass k->FilePath = this->FilePath.c_str(); cmListFileArgument arg; - if(k->Delim == cmListFileArgument::Bracket) + arg.Value = k->Value; + if(k->Delim != cmListFileArgument::Bracket) { - arg.Value = k->Value; - } - else - { - std::string tmps = k->Value; // replace formal arguments for (unsigned int j = 0; j < variables.size(); ++j) { - cmSystemTools::ReplaceString(tmps, variables[j].c_str(), + cmSystemTools::ReplaceString(arg.Value, variables[j].c_str(), expandedArgs[j].c_str()); } // replace argc - cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGC}",argcDef.c_str()); - cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); - cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGN}", + expandedArgn.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGV}", + expandedArgv.c_str()); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values - if (tmps.find("${ARGV") != std::string::npos) + if (arg.Value.find("${ARGV") != std::string::npos) { for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), + cmSystemTools::ReplaceString(arg.Value, argVs[t].c_str(), expandedArgs[t].c_str()); } } - - arg.Value = tmps; } arg.Delim = k->Delim; arg.FilePath = k->FilePath; ----------------------------------------------------------------------- Summary of changes: Source/cmMacroCommand.cxx | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Feb 11 16:44:47 2015 From: brad.king at kitware.com (Brad King) Date: Wed, 11 Feb 2015 16:44:47 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1290-g6f86f8a Message-ID: <20150211214447.61A72AA94F@public.kitware.com> 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 6f86f8a5626d8dc7ee84e7acddc8173189a28a76 (commit) via 9d2ef95e828f002144279e5a90bb18d17f83e62f (commit) from 1af2299bd96f8d75142af21439a81a4038608198 (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=6f86f8a5626d8dc7ee84e7acddc8173189a28a76 commit 6f86f8a5626d8dc7ee84e7acddc8173189a28a76 Merge: 1af2299 9d2ef95 Author: Brad King AuthorDate: Wed Feb 11 16:44:46 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 16:44:46 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next 9d2ef95e cmMacroCommand: Respect valid iterator range http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9d2ef95e828f002144279e5a90bb18d17f83e62f commit 9d2ef95e828f002144279e5a90bb18d17f83e62f Author: Brad King AuthorDate: Wed Feb 11 16:43:29 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 16:43:29 2015 -0500 cmMacroCommand: Respect valid iterator range Do not allow even a temporary iterator to sit out of range. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index e2751f9..7f21d44 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -108,7 +108,7 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string argcDef = argcDefStream.str(); std::vector::const_iterator eit - = expandedArgs.begin() + this->Args.size() - 1; + = expandedArgs.begin() + (this->Args.size() - 1); std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); std::string expandedArgv = cmJoin(expandedArgs, ";"); std::vector variables; ----------------------------------------------------------------------- Summary of changes: Source/cmMacroCommand.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 16:49:40 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 16:49:40 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1292-ge610103 Message-ID: <20150211214940.9B354AAAA1@public.kitware.com> 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 e610103fe20600300893e78426ade8c645ee87bb (commit) via ee340f7a764bde9f4875fa927be5343a275c583b (commit) from 6f86f8a5626d8dc7ee84e7acddc8173189a28a76 (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=e610103fe20600300893e78426ade8c645ee87bb commit e610103fe20600300893e78426ade8c645ee87bb Merge: 6f86f8a ee340f7 Author: Stephen Kelly AuthorDate: Wed Feb 11 16:49:40 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 16:49:40 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next ee340f7a fixup! cmMacroCommand: Move computation of ARGV%n names out of double loop. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ee340f7a764bde9f4875fa927be5343a275c583b commit ee340f7a764bde9f4875fa927be5343a275c583b Author: Stephen Kelly AuthorDate: Wed Feb 11 22:45:20 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:49:16 2015 +0100 fixup! cmMacroCommand: Move computation of ARGV%n names out of double loop. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 7f21d44..29e8cb1 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -113,13 +113,13 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string expandedArgv = cmJoin(expandedArgs, ";"); std::vector variables; variables.reserve(this->Args.size() - 1); - std::vector argVs; - argVs.reserve(this->Args.size() - 1); - char argvName[60]; for (unsigned int j = 1; j < this->Args.size(); ++j) { variables.push_back("${" + this->Args[j] + "}"); } + std::vector argVs; + argVs.reserve(expandedArgs.size()); + char argvName[60]; for (unsigned int j = 0; j < expandedArgs.size(); ++j) { sprintf(argvName,"${ARGV%i}",j); ----------------------------------------------------------------------- Summary of changes: Source/cmMacroCommand.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From steveire at gmail.com Wed Feb 11 16:59:17 2015 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 11 Feb 2015 16:59:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1322-g015e5e0 Message-ID: <20150211215917.336E2AAD1B@public.kitware.com> 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 015e5e0c2cd0573f1ca07103216530703c337eb1 (commit) via b5f98e5012ef53ee6746c42131fc66892bfff717 (commit) via 83414d5a07753d004f5e663c385ef0c713895d46 (commit) via 9a1f8f35f48d7dcfefc70de9ae530c31b16cd9e0 (commit) via 4aa7bd2ac11aa2edb0288e5ba360984b7799130d (commit) via 6774c92b5809b80c767ef8094b2f26d06556e0fd (commit) via 2c4a7298fcb3ac6a6b6c0a9545b343c814f3d6ec (commit) via a551851ab3f23f58074638ffcf38a08d98a35fa8 (commit) via f79c0f7697ee0bd25ec74f7dbb2ac0cf6189a9df (commit) via 8e0827b646b14028446503ac392a9ab7bb5a53a3 (commit) via f2c49f59d8dbca936a40b62a9079fa71ca551365 (commit) via 3250a7e535684bec684c0109b31675ba72dc3aa9 (commit) via 081a13f7c011d0ebd28caebfedee1e3e3f7602c9 (commit) via 17b5ebd383df4c0c731b5c687ccaa3608b2d188f (commit) via 7c3f637680ac0cdb6cec5e75ba4a9b188de5017b (commit) via 8a399c8c9f1c4a793289d6baf37081efac082eee (commit) via abfca97525be06e067981b6c6bf63ba7a3aa52f9 (commit) via 0b61b86df856e3cec366f8c23f35aae576b2d821 (commit) via e21f7829a2891ce7599ade02d4fd9c193657069a (commit) via 559dc15589ad0b9a7bdaa62ac7552899993f6f0d (commit) via 0ea719326ea78b423a5ec95b1218b626e9392f07 (commit) via 9380e85f865e29cd5968e91408a31d5160f4a4cb (commit) via bb10012fea677fd8aa1bbefd06061efcb7ec1955 (commit) via 0c12f1ea0da0a5822a7a69b4ff77b45732c72466 (commit) via 27c6f017a1ef7c62f7f0332d624add7e8189f81c (commit) via 4e78ebbdf94b99f7b7d5b9b31d05dd9479b1d6ab (commit) via 8910224950a2b723e0d4fd7c21a326af7fb2e050 (commit) via 7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd (commit) via 7ee56f03999e8605cc2cbe85a3a7b7159e639e5d (commit) via 0a4e5674eccb0126733086d4632c7239217db6f1 (commit) from e610103fe20600300893e78426ade8c645ee87bb (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=015e5e0c2cd0573f1ca07103216530703c337eb1 commit 015e5e0c2cd0573f1ca07103216530703c337eb1 Merge: e610103 b5f98e5 Author: Stephen Kelly AuthorDate: Wed Feb 11 16:59:15 2015 -0500 Commit: CMake Topic Stage CommitDate: Wed Feb 11 16:59:15 2015 -0500 Merge topic 'clean-up-cmMacroCommand' into next b5f98e50 cmMacroCommand: Manipulate target string directly. 83414d5a cmMacroCommand: Move computation of ARGV%n names out of double loop. 9a1f8f35 cmMacroCommand: Move ARGV replacement out of condition. 4aa7bd2a cmMacroCommand: Remove condition around ARGN replacement. 6774c92b cmMacroCommand: Declare tmps in the scope that it's used. 2c4a7298 cmMacroCommand: Declare arg in the scope that it is used. a551851a cmMacroCommand: Inline variable computation. f79c0f76 cmMacroCommand: Compute variables outside of two loops. 8e0827b6 cmMacroCommand: Remove intermediate arg variables. f2c49f59 cmMacroCommand: Remove condition around ARGN computation. 3250a7e5 cmMacroCommand: Remove conditional append of semicolon. 081a13f7 cmMacroCommand: Declare arg variables where used and initialized. 17b5ebd3 cmMacroCommand: Join the args strings outside of the loops. 7c3f6376 Convert loop into two algorithms. 8a399c8c Convert loop to the common pattern. abfca975 Move loop inside of condition. ... http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b5f98e5012ef53ee6746c42131fc66892bfff717 commit b5f98e5012ef53ee6746c42131fc66892bfff717 Author: Stephen Kelly AuthorDate: Wed Feb 11 22:16:03 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:34 2015 +0100 cmMacroCommand: Manipulate target string directly. Avoid copying a string from the source, manipulating it, and then copying it back. Manipulate it in place instead. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 49b9fd2..29e8cb1 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -151,37 +151,33 @@ bool cmMacroHelperCommand::InvokeInitialPass k->FilePath = this->FilePath.c_str(); cmListFileArgument arg; - if(k->Delim == cmListFileArgument::Bracket) + arg.Value = k->Value; + if(k->Delim != cmListFileArgument::Bracket) { - arg.Value = k->Value; - } - else - { - std::string tmps = k->Value; // replace formal arguments for (unsigned int j = 0; j < variables.size(); ++j) { - cmSystemTools::ReplaceString(tmps, variables[j].c_str(), + cmSystemTools::ReplaceString(arg.Value, variables[j].c_str(), expandedArgs[j].c_str()); } // replace argc - cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGC}",argcDef.c_str()); - cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); - cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGN}", + expandedArgn.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGV}", + expandedArgv.c_str()); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values - if (tmps.find("${ARGV") != std::string::npos) + if (arg.Value.find("${ARGV") != std::string::npos) { for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), + cmSystemTools::ReplaceString(arg.Value, argVs[t].c_str(), expandedArgs[t].c_str()); } } - - arg.Value = tmps; } arg.Delim = k->Delim; arg.FilePath = k->FilePath; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=83414d5a07753d004f5e663c385ef0c713895d46 commit 83414d5a07753d004f5e663c385ef0c713895d46 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:16:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:34 2015 +0100 cmMacroCommand: Move computation of ARGV%n names out of double loop. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 44b1465..49b9fd2 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -117,6 +117,14 @@ bool cmMacroHelperCommand::InvokeInitialPass { variables.push_back("${" + this->Args[j] + "}"); } + std::vector argVs; + argVs.reserve(expandedArgs.size()); + char argvName[60]; + for (unsigned int j = 0; j < expandedArgs.size(); ++j) + { + sprintf(argvName,"${ARGV%i}",j); + argVs.push_back(argvName); + } if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -166,12 +174,9 @@ bool cmMacroHelperCommand::InvokeInitialPass // then try replacing ARGV values if (tmps.find("${ARGV") != std::string::npos) { - char argvName[60]; - // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - sprintf(argvName,"${ARGV%i}",t); - cmSystemTools::ReplaceString(tmps, argvName, + cmSystemTools::ReplaceString(tmps, argVs[t].c_str(), expandedArgs[t].c_str()); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9a1f8f35f48d7dcfefc70de9ae530c31b16cd9e0 commit 9a1f8f35f48d7dcfefc70de9ae530c31b16cd9e0 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:08:05 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:34 2015 +0100 cmMacroCommand: Move ARGV replacement out of condition. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 111ad96..44b1465 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -160,14 +160,13 @@ bool cmMacroHelperCommand::InvokeInitialPass cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); + cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values if (tmps.find("${ARGV") != std::string::npos) { char argvName[60]; - cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); - // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4aa7bd2ac11aa2edb0288e5ba360984b7799130d commit 4aa7bd2ac11aa2edb0288e5ba360984b7799130d Author: Stephen Kelly AuthorDate: Wed Feb 11 20:06:39 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:34 2015 +0100 cmMacroCommand: Remove condition around ARGN replacement. There is none for ARGC replacement, so no reason to conditionalize the replacement. The computation is already done. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 6635fee..111ad96 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -159,11 +159,7 @@ bool cmMacroHelperCommand::InvokeInitialPass // replace argc cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); - // repleace ARGN - if (tmps.find("${ARGN}") != std::string::npos) - { - cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); - } + cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6774c92b5809b80c767ef8094b2f26d06556e0fd commit 6774c92b5809b80c767ef8094b2f26d06556e0fd Author: Stephen Kelly AuthorDate: Wed Feb 11 20:25:44 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:34 2015 +0100 cmMacroCommand: Declare tmps in the scope that it's used. We don't particularly need to reuse the string memory here, and this pattern is not common in CMake. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index bd53b1e..6635fee 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -84,8 +84,6 @@ bool cmMacroHelperCommand::InvokeInitialPass std::vector expandedArgs; this->Makefile->ExpandArguments(args, expandedArgs); - std::string tmps; - // make sure the number of arguments passed is at least the number // required by the signature if (expandedArgs.size() < this->Args.size() - 1) @@ -151,7 +149,7 @@ bool cmMacroHelperCommand::InvokeInitialPass } else { - tmps = k->Value; + std::string tmps = k->Value; // replace formal arguments for (unsigned int j = 0; j < variables.size(); ++j) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2c4a7298fcb3ac6a6b6c0a9545b343c814f3d6ec commit 2c4a7298fcb3ac6a6b6c0a9545b343c814f3d6ec Author: Stephen Kelly AuthorDate: Wed Feb 11 20:23:36 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:34 2015 +0100 cmMacroCommand: Declare arg in the scope that it is used. It can make sense to declare objects outside of loops if the size required by the object can grow (eg std::string when using getline), but that is not the case here. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 6f45484..bd53b1e 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -85,7 +85,6 @@ bool cmMacroHelperCommand::InvokeInitialPass this->Makefile->ExpandArguments(args, expandedArgs); std::string tmps; - cmListFileArgument arg; // make sure the number of arguments passed is at least the number // required by the signature @@ -144,6 +143,8 @@ bool cmMacroHelperCommand::InvokeInitialPass // Set the FilePath on the arguments to match the function since it is // not stored and the original values may be freed k->FilePath = this->FilePath.c_str(); + + cmListFileArgument arg; if(k->Delim == cmListFileArgument::Bracket) { arg.Value = k->Value; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a551851ab3f23f58074638ffcf38a08d98a35fa8 commit a551851ab3f23f58074638ffcf38a08d98a35fa8 Author: Stephen Kelly AuthorDate: Wed Feb 11 20:14:30 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:33 2015 +0100 cmMacroCommand: Inline variable computation. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 8424c75..6f45484 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -86,7 +86,6 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string tmps; cmListFileArgument arg; - std::string variable; // make sure the number of arguments passed is at least the number // required by the signature @@ -119,10 +118,7 @@ bool cmMacroHelperCommand::InvokeInitialPass variables.reserve(this->Args.size() - 1); for (unsigned int j = 1; j < this->Args.size(); ++j) { - std::string variable = "${"; - variable += this->Args[j]; - variable += "}"; - variables.push_back(variable); + variables.push_back("${" + this->Args[j] + "}"); } if(!this->Functions.empty()) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f79c0f7697ee0bd25ec74f7dbb2ac0cf6189a9df commit f79c0f7697ee0bd25ec74f7dbb2ac0cf6189a9df Author: Stephen Kelly AuthorDate: Wed Feb 11 19:51:15 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:33 2015 +0100 cmMacroCommand: Compute variables outside of two loops. Avoid computing them from scratch for each argument of each function. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 8bbb7c6..8424c75 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -115,6 +115,15 @@ bool cmMacroHelperCommand::InvokeInitialPass = expandedArgs.begin() + (this->Args.size() - 1); std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); std::string expandedArgv = cmJoin(expandedArgs, ";"); + std::vector variables; + variables.reserve(this->Args.size() - 1); + for (unsigned int j = 1; j < this->Args.size(); ++j) + { + std::string variable = "${"; + variable += this->Args[j]; + variable += "}"; + variables.push_back(variable); + } if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -147,13 +156,10 @@ bool cmMacroHelperCommand::InvokeInitialPass { tmps = k->Value; // replace formal arguments - for (unsigned int j = 1; j < this->Args.size(); ++j) + for (unsigned int j = 0; j < variables.size(); ++j) { - variable = "${"; - variable += this->Args[j]; - variable += "}"; - cmSystemTools::ReplaceString(tmps, variable.c_str(), - expandedArgs[j-1].c_str()); + cmSystemTools::ReplaceString(tmps, variables[j].c_str(), + expandedArgs[j].c_str()); } // replace argc cmSystemTools::ReplaceString(tmps, "${ARGC}",argcDef.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8e0827b646b14028446503ac392a9ab7bb5a53a3 commit 8e0827b646b14028446503ac392a9ab7bb5a53a3 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:26:33 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:33 2015 +0100 cmMacroCommand: Remove intermediate arg variables. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 9fc479e..8bbb7c6 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -161,9 +161,7 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGN if (tmps.find("${ARGN}") != std::string::npos) { - std::string argnDef; - argnDef += expandedArgn; - cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); + cmSystemTools::ReplaceString(tmps, "${ARGN}", expandedArgn.c_str()); } // if the current argument of the current function has ${ARGV in it @@ -171,10 +169,7 @@ bool cmMacroHelperCommand::InvokeInitialPass if (tmps.find("${ARGV") != std::string::npos) { char argvName[60]; - - std::string argvDef; - argvDef += expandedArgv; - cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); + cmSystemTools::ReplaceString(tmps, "${ARGV}", expandedArgv.c_str()); // also replace the ARGV1 ARGV2 ... etc for (unsigned int t = 0; t < expandedArgs.size(); ++t) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f2c49f59d8dbca936a40b62a9079fa71ca551365 commit f2c49f59d8dbca936a40b62a9079fa71ca551365 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:17:29 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:33 2015 +0100 cmMacroCommand: Remove condition around ARGN computation. An empty string is appended if the condition is false, which is ok for this commit. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index b27b994..9fc479e 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -162,10 +162,7 @@ bool cmMacroHelperCommand::InvokeInitialPass if (tmps.find("${ARGN}") != std::string::npos) { std::string argnDef; - if (expandedArgs.size() > this->Args.size() - 1) - { - argnDef += expandedArgn; - } + argnDef += expandedArgn; cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3250a7e535684bec684c0109b31675ba72dc3aa9 commit 3250a7e535684bec684c0109b31675ba72dc3aa9 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:16:15 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:33 2015 +0100 cmMacroCommand: Remove conditional append of semicolon. The conditions are never true. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index f7daa76..b27b994 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -164,10 +164,6 @@ bool cmMacroHelperCommand::InvokeInitialPass std::string argnDef; if (expandedArgs.size() > this->Args.size() - 1) { - if (!argnDef.empty() && !expandedArgs.empty()) - { - argnDef += ";"; - } argnDef += expandedArgn; } cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); @@ -180,10 +176,6 @@ bool cmMacroHelperCommand::InvokeInitialPass char argvName[60]; std::string argvDef; - if (!argvDef.empty() && !expandedArgs.empty()) - { - argvDef += ";"; - } argvDef += expandedArgv; cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=081a13f7c011d0ebd28caebfedee1e3e3f7602c9 commit 081a13f7c011d0ebd28caebfedee1e3e3f7602c9 Author: Stephen Kelly AuthorDate: Wed Feb 11 19:10:19 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:33 2015 +0100 cmMacroCommand: Declare arg variables where used and initialized. Make the initialization by population with the expanded* content unconditional. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index de52fc9..f7daa76 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -111,15 +111,10 @@ bool cmMacroHelperCommand::InvokeInitialPass argcDefStream << expandedArgs.size(); std::string argcDef = argcDefStream.str(); - // declare varuiables for ARGV ARGN but do not compute until needed - std::string argvDef; - std::string argnDef; std::vector::const_iterator eit = expandedArgs.begin() + (this->Args.size() - 1); std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); std::string expandedArgv = cmJoin(expandedArgs, ";"); - bool argnDefInitialized = false; - bool argvDefInitialized = false; if(!this->Functions.empty()) { this->FilePath = this->Functions[0].FilePath; @@ -166,17 +161,14 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGN if (tmps.find("${ARGN}") != std::string::npos) { - if (!argnDefInitialized) + std::string argnDef; + if (expandedArgs.size() > this->Args.size() - 1) { - if (expandedArgs.size() > this->Args.size() - 1) + if (!argnDef.empty() && !expandedArgs.empty()) { - if (!argnDef.empty() && !expandedArgs.empty()) - { - argnDef += ";"; - } - argnDef += expandedArgn; + argnDef += ";"; } - argnDefInitialized = true; + argnDef += expandedArgn; } cmSystemTools::ReplaceString(tmps, "${ARGN}", argnDef.c_str()); } @@ -187,16 +179,12 @@ bool cmMacroHelperCommand::InvokeInitialPass { char argvName[60]; - // repleace ARGV, compute it only once - if (!argvDefInitialized) + std::string argvDef; + if (!argvDef.empty() && !expandedArgs.empty()) { - if (!argvDef.empty() && !expandedArgs.empty()) - { - argvDef += ";"; - } - argvDef += expandedArgv; - argvDefInitialized = true; + argvDef += ";"; } + argvDef += expandedArgv; cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); // also replace the ARGV1 ARGV2 ... etc http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=17b5ebd383df4c0c731b5c687ccaa3608b2d188f commit 17b5ebd383df4c0c731b5c687ccaa3608b2d188f Author: Stephen Kelly AuthorDate: Wed Feb 11 20:47:16 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:31 2015 +0100 cmMacroCommand: Join the args strings outside of the loops. This means that we compute the strings even if not used in the macro but this shouldn't be expensive and it simplifies the code. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 8f6364d..de52fc9 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -114,6 +114,10 @@ bool cmMacroHelperCommand::InvokeInitialPass // declare varuiables for ARGV ARGN but do not compute until needed std::string argvDef; std::string argnDef; + std::vector::const_iterator eit + = expandedArgs.begin() + (this->Args.size() - 1); + std::string expandedArgn = cmJoin(cmRange(eit, expandedArgs.end()), ";"); + std::string expandedArgv = cmJoin(expandedArgs, ";"); bool argnDefInitialized = false; bool argvDefInitialized = false; if(!this->Functions.empty()) @@ -170,9 +174,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argnDef += ";"; } - std::vector::const_iterator eit - = expandedArgs.begin() + (this->Args.size() - 1); - argnDef += cmJoin(cmRange(eit, expandedArgs.end()), ";"); + argnDef += expandedArgn; } argnDefInitialized = true; } @@ -192,7 +194,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argvDef += ";"; } - argvDef += cmJoin(expandedArgs, ";"); + argvDef += expandedArgv; argvDefInitialized = true; } cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7c3f637680ac0cdb6cec5e75ba4a9b188de5017b commit 7c3f637680ac0cdb6cec5e75ba4a9b188de5017b Author: Stephen Kelly AuthorDate: Sat Jan 24 18:07:37 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:09 2015 +0100 Convert loop into two algorithms. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 359141a..a08c159 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,16 +2299,12 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - const char* sep = ""; - for(unsigned int i=1; i < components.size() - 1; ++i) - { - if(!components[i].empty()) - { - result += sep; - result += components[i]; - sep = slash; - } - } + std::vector::const_iterator compEnd + = std::remove(components.begin() + 1, components.end() - 1, + std::string()); + std::vector::const_iterator compStart + = components.begin() + 1; + result += cmJoin(cmRange(compStart, compEnd), slash); // Only the last component can be empty to avoid double slashes. result += slash; result += components.back(); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8a399c8c9f1c4a793289d6baf37081efac082eee commit 8a399c8c9f1c4a793289d6baf37081efac082eee Author: Stephen Kelly AuthorDate: Fri Jan 23 01:06:40 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:09 2015 +0100 Convert loop to the common pattern. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 703ab27..359141a 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2299,24 +2299,18 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, { // Now add the rest of the components separated by the proper slash // direction for this platform. - bool first = true; + const char* sep = ""; for(unsigned int i=1; i < components.size() - 1; ++i) { if(!components[i].empty()) { - if(!first) - { - result += slash; - } + result += sep; result += components[i]; - first = false; + sep = slash; } } // Only the last component can be empty to avoid double slashes. - if(!first) - { - result += slash; - } + result += slash; result += components.back(); } } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=abfca97525be06e067981b6c6bf63ba7a3aa52f9 commit abfca97525be06e067981b6c6bf63ba7a3aa52f9 Author: Stephen Kelly AuthorDate: Tue Feb 10 23:09:03 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:09 2015 +0100 Move loop inside of condition. The loop is only executed if the condition is true. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 32da821..703ab27 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2295,23 +2295,23 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, // Begin the quoted result with the root component. result += components[0]; - // Now add the rest of the components separated by the proper slash - // direction for this platform. - bool first = true; - for(unsigned int i=1; i < components.size() - 1; ++i) + if (components.size() > 1) { - if(!components[i].empty()) + // Now add the rest of the components separated by the proper slash + // direction for this platform. + bool first = true; + for(unsigned int i=1; i < components.size() - 1; ++i) { - if(!first) + if(!components[i].empty()) { - result += slash; + if(!first) + { + result += slash; + } + result += components[i]; + first = false; } - result += components[i]; - first = false; } - } - if (components.size() > 1) - { // Only the last component can be empty to avoid double slashes. if(!first) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0b61b86df856e3cec366f8c23f35aae576b2d821 commit 0b61b86df856e3cec366f8c23f35aae576b2d821 Author: Stephen Kelly AuthorDate: Fri Jan 23 01:03:45 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:08 2015 +0100 Handle last element outside of the loop. There is no point in checking on each loop iteration whether it is the last element. diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 54d330f..32da821 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2298,10 +2298,9 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, // Now add the rest of the components separated by the proper slash // direction for this platform. bool first = true; - for(unsigned int i=1; i < components.size(); ++i) + for(unsigned int i=1; i < components.size() - 1; ++i) { - // Only the last component can be empty to avoid double slashes. - if(!components[i].empty() || (i == (components.size()-1))) + if(!components[i].empty()) { if(!first) { @@ -2311,6 +2310,15 @@ cmLocalUnixMakefileGenerator3::ConvertToQuotedOutputPath(const char* p, first = false; } } + if (components.size() > 1) + { + // Only the last component can be empty to avoid double slashes. + if(!first) + { + result += slash; + } + result += components.back(); + } } // Close the quoted result. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e21f7829a2891ce7599ade02d4fd9c193657069a commit e21f7829a2891ce7599ade02d4fd9c193657069a Author: Stephen Kelly AuthorDate: Tue Feb 10 22:48:02 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:08 2015 +0100 cmTarget: Use a sorted vector in place of a set. The vector has a more easy-to-use API. Join the string with cmJoin, and avoid erasing from the container in the loop. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index f0bdea7..526a923 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -6687,40 +6687,33 @@ void cmTarget::CheckPropertyCompatibility(cmComputeLinkInformation *info, if (!prop.empty()) { - // Use a std::set to keep the error message sorted. - std::set props; + // Use a sorted std::vector to keep the error message sorted. + std::vector props; std::set::const_iterator i = emittedBools.find(prop); if (i != emittedBools.end()) { - props.insert(strBool); + props.push_back(strBool); } i = emittedStrings.find(prop); if (i != emittedStrings.end()) { - props.insert(strString); + props.push_back(strString); } i = emittedMinNumbers.find(prop); if (i != emittedMinNumbers.end()) { - props.insert(strNumMin); + props.push_back(strNumMin); } i = emittedMaxNumbers.find(prop); if (i != emittedMaxNumbers.end()) { - props.insert(strNumMax); + props.push_back(strNumMax); } + std::sort(props.begin(), props.end()); + + std::string propsString = cmJoin(cmRange(props).retreat(1), ", "); + propsString += " and the " + props.back(); - std::string propsString = *props.begin(); - props.erase(props.begin()); - while (props.size() > 1) - { - propsString += ", " + *props.begin(); - props.erase(props.begin()); - } - if (props.size() == 1) - { - propsString += " and the " + *props.begin(); - } std::ostringstream e; e << "Property \"" << prop << "\" appears in both the " << propsString << http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=559dc15589ad0b9a7bdaa62ac7552899993f6f0d commit 559dc15589ad0b9a7bdaa62ac7552899993f6f0d Author: Stephen Kelly AuthorDate: Tue Feb 10 23:26:58 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:08 2015 +0100 cmSet: Replace loop with cmJoin. diff --git a/Source/cmSetCommand.cxx b/Source/cmSetCommand.cxx index 90d7b03..204d95b 100644 --- a/Source/cmSetCommand.cxx +++ b/Source/cmSetCommand.cxx @@ -108,17 +108,7 @@ bool cmSetCommand } // collect any values into a single semi-colon separated value list - if(static_cast(args.size()) > - static_cast(1 + ignoreLastArgs)) - { - value = args[1]; - size_t endPos = args.size() - ignoreLastArgs; - for(size_t i = 2; i < endPos; ++i) - { - value += ";"; - value += args[i]; - } - } + value = cmJoin(cmRange(args).advance(1).retreat(ignoreLastArgs), ";"); if (parentScope) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0ea719326ea78b423a5ec95b1218b626e9392f07 commit 0ea719326ea78b423a5ec95b1218b626e9392f07 Author: Stephen Kelly AuthorDate: Wed Jan 14 22:23:41 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:08 2015 +0100 cmFindBase: Replace loop with cmJoin on range. diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx index 69991d5..6e55533 100644 --- a/Source/cmFindBase.cxx +++ b/Source/cmFindBase.cxx @@ -166,11 +166,9 @@ bool cmFindBase::ParseArguments(std::vector const& argsIn) } else { - this->VariableDocumentation += "one of the " + this->Names[0]; - for (unsigned int j = 1; j < this->Names.size() - 1; ++j) - { - this->VariableDocumentation += ", " + this->Names[j]; - } + this->VariableDocumentation += "one of the "; + this->VariableDocumentation += cmJoin(cmRange(this->Names).retreat(1), + ", "); this->VariableDocumentation += " or " + this->Names[this->Names.size() - 1] + " libraries be found"; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9380e85f865e29cd5968e91408a31d5160f4a4cb commit 9380e85f865e29cd5968e91408a31d5160f4a4cb Author: Stephen Kelly AuthorDate: Sun Jan 25 15:53:20 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:58:04 2015 +0100 Convert loops to cmJoin algorithm with cmRange. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 8d1657d..dd0cfa9 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -259,14 +259,7 @@ bool cmListCommand::HandleAppendCommand(std::vector const& args) { listString += ";"; } - const char* sep = ""; - size_t cc; - for ( cc = 2; cc < args.size(); ++ cc ) - { - listString += sep; - listString += args[cc]; - sep = ";"; - } + listString += cmJoin(cmRange(args).advance(2), ";"); this->Makefile->AddDefinition(listName, listString.c_str()); return true; diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 05d8ab5..35956ad 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3016,13 +3016,7 @@ cmLocalGenerator::ConvertToRelativePath(const std::vector& local, { relative += "/"; } - const char* sep = ""; - for(unsigned int i=common; i < remote.size(); ++i) - { - relative += sep; - relative += remote[i]; - sep = "/"; - } + relative += cmJoin(cmRange(remote).advance(common), "/"); // Finally return the path. return relative; diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 676e082..8f6364d 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -172,12 +172,7 @@ bool cmMacroHelperCommand::InvokeInitialPass } std::vector::const_iterator eit = expandedArgs.begin() + (this->Args.size() - 1); - const char* sep = ""; - for( ; eit != expandedArgs.end(); ++eit) - { - argnDef += sep + *eit; - sep = ";"; - } + argnDef += cmJoin(cmRange(eit, expandedArgs.end()), ";"); } argnDefInitialized = true; } diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 5260cb0..5c93975 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -406,12 +406,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) // Clock command else if (args[1] == "time" && args.size() > 2) { - std::string command = args[2]; - for (std::string::size_type cc = 3; cc < args.size(); cc ++) - { - command += " "; - command += args[cc]; - } + std::string command = cmJoin(cmRange(args).advance(2), " "); clock_t clock_start, clock_finish; time_t time_start, time_finish; @@ -473,14 +468,8 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) } std::string command = "\""; - command += args[3]; + command += cmJoin(cmRange(args).advance(3), "\" \""); command += "\""; - for (std::string::size_type cc = 4; cc < args.size(); cc ++) - { - command += " \""; - command += args[cc]; - command += "\""; - } int retval = 0; int timeout = 0; if ( cmSystemTools::RunSingleCommand(command.c_str(), 0, &retval, http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bb10012fea677fd8aa1bbefd06061efcb7ec1955 commit bb10012fea677fd8aa1bbefd06061efcb7ec1955 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:23:41 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:56 2015 +0100 cmStringCommand: Accumulate with cmJoin and range adaptors. diff --git a/Source/cmStringCommand.cxx b/Source/cmStringCommand.cxx index 3e606d7..edc6afc 100644 --- a/Source/cmStringCommand.cxx +++ b/Source/cmStringCommand.cxx @@ -303,13 +303,6 @@ bool cmStringCommand::RegexMatch(std::vector const& args) std::string regex = args[2]; std::string outvar = args[3]; - // Concatenate all the last arguments together. - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -321,6 +314,9 @@ bool cmStringCommand::RegexMatch(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(4), std::string()); + // Scan through the input for all matches. std::string output; if(re.find(input.c_str())) @@ -352,13 +348,6 @@ bool cmStringCommand::RegexMatchAll(std::vector const& args) std::string regex = args[2]; std::string outvar = args[3]; - // Concatenate all the last arguments together. - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -371,6 +360,9 @@ bool cmStringCommand::RegexMatchAll(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(4), std::string()); + // Scan through the input for all matches. std::string output; const char* p = input.c_str(); @@ -456,13 +448,6 @@ bool cmStringCommand::RegexReplace(std::vector const& args) l = r; } - // Concatenate all the last arguments together. - std::string input = args[5]; - for(unsigned int i=6; i < args.size(); ++i) - { - input += args[i]; - } - this->Makefile->ClearMatches(); // Compile the regular expression. cmsys::RegularExpression re; @@ -475,6 +460,9 @@ bool cmStringCommand::RegexReplace(std::vector const& args) return false; } + // Concatenate all the last arguments together. + std::string input = cmJoin(cmRange(args).advance(5), std::string()); + // Scan through the input for all matches. std::string output; std::string::size_type base = 0; @@ -673,11 +661,7 @@ bool cmStringCommand::HandleReplaceCommand(std::vector const& const std::string& replaceExpression = args[2]; const std::string& variableName = args[3]; - std::string input = args[4]; - for(unsigned int i=5; i < args.size(); ++i) - { - input += args[i]; - } + std::string input = cmJoin(cmRange(args).advance(4), std::string()); cmsys::SystemTools::ReplaceString(input, matchExpression.c_str(), replaceExpression.c_str()); @@ -756,11 +740,7 @@ bool cmStringCommand } std::string const& variableName = args[1]; - std::string value; - for(unsigned int i = 2; i < args.size(); ++i) - { - value += args[i]; - } + std::string value = cmJoin(cmRange(args).advance(2), std::string()); this->Makefile->AddDefinition(variableName, value.c_str()); return true; http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0c12f1ea0da0a5822a7a69b4ff77b45732c72466 commit 0c12f1ea0da0a5822a7a69b4ff77b45732c72466 Author: Stephen Kelly AuthorDate: Tue Feb 10 22:14:54 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:55 2015 +0100 cmAlgorithms: Add a range adaptor and API for adjusting a range. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 6c03f51..ad2b9c1 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -122,6 +122,17 @@ struct Range const_iterator begin() const { return Begin; } const_iterator end() const { return End; } bool empty() const { return std::distance(Begin, End) == 0; } + Range& advance(cmIML_INT_intptr_t amount) + { + std::advance(Begin, amount); + return *this; + } + + Range& retreat(cmIML_INT_intptr_t amount) + { + std::advance(End, -amount); + return *this; + } private: const_iterator Begin; const_iterator End; @@ -135,6 +146,14 @@ ContainerAlgorithms::Range cmRange(Iter1 begin, Iter2 end) return ContainerAlgorithms::Range(begin, end); } +template +ContainerAlgorithms::Range +cmRange(Range const& range) +{ + return ContainerAlgorithms::Range( + range.begin(), range.end()); +} + template void cmDeleteAll(Container const& c) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=27c6f017a1ef7c62f7f0332d624add7e8189f81c commit 27c6f017a1ef7c62f7f0332d624add7e8189f81c Author: Stephen Kelly AuthorDate: Wed Jan 14 21:27:25 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:55 2015 +0100 Use cmJoin to accumulate string ranges. Avoid using the std::accumulate algorithm which is designed for numeric types, not complex types. It introduces unneccessary copies. Initialize variables where they are populated. diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 8b893bc..212603c 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -217,7 +217,6 @@ bool cmFileCommand bool cmFileCommand::HandleWriteCommand(std::vector const& args, bool append) { - std::string message; std::vector::const_iterator i = args.begin(); i++; // Get rid of subcommand @@ -231,10 +230,6 @@ bool cmFileCommand::HandleWriteCommand(std::vector const& args, i++; - for(;i != args.end(); ++i) - { - message += *i; - } if ( !this->Makefile->CanIWriteThisFile(fileName.c_str()) ) { std::string e @@ -272,6 +267,7 @@ bool cmFileCommand::HandleWriteCommand(std::vector const& args, this->SetError(error); return false; } + std::string message = cmJoin(cmRange(i, args.end()), std::string()); file << message; file.close(); if(mode) diff --git a/Source/cmMessageCommand.cxx b/Source/cmMessageCommand.cxx index 88d6a77..0449c50 100644 --- a/Source/cmMessageCommand.cxx +++ b/Source/cmMessageCommand.cxx @@ -20,7 +20,6 @@ bool cmMessageCommand this->SetError("called with incorrect number of arguments"); return false; } - std::string message; std::vector::const_iterator i = args.begin(); cmake::MessageType type = cmake::MESSAGE; @@ -70,10 +69,7 @@ bool cmMessageCommand ++i; } - for(;i != args.end(); ++i) - { - message += *i; - } + std::string message = cmJoin(cmRange(i, args.end()), std::string()); if (type != cmake::MESSAGE) { http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4e78ebbdf94b99f7b7d5b9b31d05dd9479b1d6ab commit 4e78ebbdf94b99f7b7d5b9b31d05dd9479b1d6ab Author: Stephen Kelly AuthorDate: Tue Feb 10 22:19:21 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:55 2015 +0100 cmAlgorithms: Add a Range container and adaptor method. This can make a pair of iterators API compatible with the cmJoin algorithm and other range-based algorithms. Accept different iterator types in the cmRange adaptor so that a const and non-const iterator are accepted. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index 4938140..6c03f51 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -112,6 +112,27 @@ struct DefaultDeleter } }; +template +struct Range +{ + typedef const_iterator_ const_iterator; + typedef typename std::iterator_traits::value_type value_type; + Range(const_iterator begin_, const_iterator end_) + : Begin(begin_), End(end_) {} + const_iterator begin() const { return Begin; } + const_iterator end() const { return End; } + bool empty() const { return std::distance(Begin, End) == 0; } +private: + const_iterator Begin; + const_iterator End; +}; + +} + +template +ContainerAlgorithms::Range cmRange(Iter1 begin, Iter2 end) +{ + return ContainerAlgorithms::Range(begin, end); } template http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8910224950a2b723e0d4fd7c21a326af7fb2e050 commit 8910224950a2b723e0d4fd7c21a326af7fb2e050 Author: Stephen Kelly AuthorDate: Wed Jan 14 21:31:46 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:55 2015 +0100 Replace common loop pattern with cmJoin diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx index 7746980..fd9b236 100644 --- a/Source/cmFindPackageCommand.cxx +++ b/Source/cmFindPackageCommand.cxx @@ -1064,26 +1064,11 @@ void cmFindPackageCommand::AppendToFoundProperty(bool found) } - std::string tmp; - const char* sep =""; - for(size_t i=0; iMakefile->GetCMakeInstance()->SetProperty("PACKAGES_FOUND", tmp.c_str()); - tmp = ""; - sep = ""; - for(size_t i=0; iMakefile->GetCMakeInstance()->SetProperty("PACKAGES_NOT_FOUND", tmp.c_str()); } diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index c33048c..b44e228 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -193,12 +193,8 @@ IsFunctionBlocked(const cmListFileFunction& lff, cmMakefile &mf, if (!this->Depth) { std::string name = this->Args[0]; - std::vector::size_type cc; - name += "("; - for ( cc = 0; cc < this->Args.size(); cc ++ ) - { - name += " " + this->Args[cc]; - } + name += "( "; + name += cmJoin(this->Args, " "); name += " )"; // create a new command and add it to cmake diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx index c0e4683..84c00ba 100644 --- a/Source/cmGetCMakePropertyCommand.cxx +++ b/Source/cmGetCMakePropertyCommand.cxx @@ -34,15 +34,7 @@ bool cmGetCMakePropertyCommand std::vector vars = this->Makefile->GetDefinitions(cacheonly); if (!vars.empty()) { - output = ""; - const char* sep = ""; - std::vector::size_type cc; - for ( cc = 0; cc < vars.size(); ++cc ) - { - output += sep; - output += vars[cc]; - sep = ";"; - } + output = cmJoin(vars, ";"); } } else if ( args[1] == "MACROS" ) @@ -54,15 +46,7 @@ bool cmGetCMakePropertyCommand const std::set* components = this->Makefile->GetLocalGenerator()->GetGlobalGenerator() ->GetInstallComponents(); - std::set::const_iterator compIt; - output = ""; - const char* sep = ""; - for (compIt = components->begin(); compIt != components->end(); ++compIt) - { - output += sep; - output += *compIt; - sep = ";"; - } + output = cmJoin(*components, ";"); } else { diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 81aaf3e..676e082 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -197,14 +197,7 @@ bool cmMacroHelperCommand::InvokeInitialPass { argvDef += ";"; } - const char* sep = ""; - std::vector::const_iterator eit; - for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) - { - argvDef += sep; - argvDef += *eit; - sep = ";"; - } + argvDef += cmJoin(expandedArgs, ";"); argvDefInitialized = true; } cmSystemTools::ReplaceString(tmps, "${ARGV}", argvDef.c_str()); diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index aca4413..ac5fec9 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -4202,15 +4202,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LISTFILE_STACK") { - const char* sep = ""; - for (std::deque::const_iterator - i = this->ListFileStack.begin(); - i != this->ListFileStack.end(); ++i) - { - output += sep; - output += *i; - sep = ";"; - } + output = cmJoin(this->ListFileStack, ";"); return output.c_str(); } else if (prop == "VARIABLES" || prop == "CACHE_VARIABLES") @@ -4220,14 +4212,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, { cacheonly = 1; } - std::vector vars = this->GetDefinitions(cacheonly); - const char* sep = ""; - for (unsigned int cc = 0; cc < vars.size(); cc ++ ) - { - output += sep; - output += vars[cc]; - sep = ";"; - } + output = cmJoin(this->GetDefinitions(cacheonly), ";"); return output.c_str(); } else if (prop == "MACROS") @@ -4242,16 +4227,7 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LINK_DIRECTORIES") { - const char* sep = ""; - for (std::vector::const_iterator - it = this->GetLinkDirectories().begin(); - it != this->GetLinkDirectories().end(); - ++ it ) - { - output += sep; - output += *it; - sep = ";"; - } + output = cmJoin(this->GetLinkDirectories(), ";"); return output.c_str(); } else if (prop == "INCLUDE_DIRECTORIES") diff --git a/Source/cmOptionCommand.cxx b/Source/cmOptionCommand.cxx index e505440..60728ea 100644 --- a/Source/cmOptionCommand.cxx +++ b/Source/cmOptionCommand.cxx @@ -34,11 +34,7 @@ bool cmOptionCommand if(argError) { std::string m = "called with incorrect number of arguments: "; - for(size_t i =0; i < args.size(); ++i) - { - m += args[i]; - m += " "; - } + m += cmJoin(args, " "); this->SetError(m); return false; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd commit 7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd Author: Stephen Kelly AuthorDate: Sat Jan 17 17:36:19 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:53 2015 +0100 Convert loops populating maybe-empty content into the common pattern. diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx index 107dca9..8d1657d 100644 --- a/Source/cmListCommand.cxx +++ b/Source/cmListCommand.cxx @@ -254,14 +254,18 @@ bool cmListCommand::HandleAppendCommand(std::vector const& args) // expand the variable std::string listString; this->GetListString(listString, listName); + + if(!listString.empty() && !args.empty()) + { + listString += ";"; + } + const char* sep = ""; size_t cc; for ( cc = 2; cc < args.size(); ++ cc ) { - if(!listString.empty()) - { - listString += ";"; - } + listString += sep; listString += args[cc]; + sep = ";"; } this->Makefile->AddDefinition(listName, listString.c_str()); diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 7afe05f..05d8ab5 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -3011,13 +3011,17 @@ cmLocalGenerator::ConvertToRelativePath(const std::vector& local, // trailing slash in the input then the last iteration of the loop // will add a slash followed by an empty string which will preserve // the trailing slash in the output. + + if(!relative.empty() && !remote.empty()) + { + relative += "/"; + } + const char* sep = ""; for(unsigned int i=common; i < remote.size(); ++i) { - if(!relative.empty()) - { - relative += "/"; - } + relative += sep; relative += remote[i]; + sep = "/"; } // Finally return the path. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index 657e750..81aaf3e 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -166,15 +166,17 @@ bool cmMacroHelperCommand::InvokeInitialPass { if (expandedArgs.size() > this->Args.size() - 1) { + if (!argnDef.empty() && !expandedArgs.empty()) + { + argnDef += ";"; + } std::vector::const_iterator eit = expandedArgs.begin() + (this->Args.size() - 1); + const char* sep = ""; for( ; eit != expandedArgs.end(); ++eit) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += sep + *eit; + sep = ";"; } } argnDefInitialized = true; @@ -191,14 +193,17 @@ bool cmMacroHelperCommand::InvokeInitialPass // repleace ARGV, compute it only once if (!argvDefInitialized) { + if (!argvDef.empty() && !expandedArgs.empty()) + { + argvDef += ";"; + } + const char* sep = ""; std::vector::const_iterator eit; for(eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit) { - if (!argvDef.empty()) - { - argvDef += ";"; - } + argvDef += sep; argvDef += *eit; + sep = ";"; } argvDefInitialized = true; } http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7ee56f03999e8605cc2cbe85a3a7b7159e639e5d commit 7ee56f03999e8605cc2cbe85a3a7b7159e639e5d Author: Stephen Kelly AuthorDate: Sat Jan 17 17:47:10 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:41 2015 +0100 Convert loops into the commonly used pattern. diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx index e193cf5..c0e4683 100644 --- a/Source/cmGetCMakePropertyCommand.cxx +++ b/Source/cmGetCMakePropertyCommand.cxx @@ -25,7 +25,6 @@ bool cmGetCMakePropertyCommand return false; } - std::vector::size_type cc; std::string variable = args[0]; std::string output = "NOTFOUND"; @@ -35,12 +34,15 @@ bool cmGetCMakePropertyCommand std::vector vars = this->Makefile->GetDefinitions(cacheonly); if (!vars.empty()) { - output = vars[0]; - } - for ( cc = 1; cc < vars.size(); ++cc ) - { - output += ";"; - output += vars[cc]; + output = ""; + const char* sep = ""; + std::vector::size_type cc; + for ( cc = 0; cc < vars.size(); ++cc ) + { + output += sep; + output += vars[cc]; + sep = ";"; + } } } else if ( args[1] == "MACROS" ) @@ -54,13 +56,12 @@ bool cmGetCMakePropertyCommand ->GetInstallComponents(); std::set::const_iterator compIt; output = ""; + const char* sep = ""; for (compIt = components->begin(); compIt != components->end(); ++compIt) { - if (compIt != components->begin()) - { - output += ";"; - } + output += sep; output += *compIt; + sep = ";"; } } else diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index eb68e49..aca4413 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -3752,15 +3752,12 @@ void cmMakefile::GetListOfMacros(std::string& macros) const { StringStringMap::const_iterator it; macros = ""; - int cc = 0; + const char* sep = ""; for ( it = this->MacrosMap.begin(); it != this->MacrosMap.end(); ++it ) { - if ( cc > 0 ) - { - macros += ";"; - } + macros += sep; macros += it->first; - cc ++; + sep = ""; } } @@ -4205,15 +4202,14 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LISTFILE_STACK") { + const char* sep = ""; for (std::deque::const_iterator i = this->ListFileStack.begin(); i != this->ListFileStack.end(); ++i) { - if (i != this->ListFileStack.begin()) - { - output += ";"; - } + output += sep; output += *i; + sep = ";"; } return output.c_str(); } @@ -4225,13 +4221,12 @@ const char *cmMakefile::GetProperty(const std::string& prop, cacheonly = 1; } std::vector vars = this->GetDefinitions(cacheonly); + const char* sep = ""; for (unsigned int cc = 0; cc < vars.size(); cc ++ ) { - if ( cc > 0 ) - { - output += ";"; - } + output += sep; output += vars[cc]; + sep = ";"; } return output.c_str(); } @@ -4247,19 +4242,16 @@ const char *cmMakefile::GetProperty(const std::string& prop, } else if (prop == "LINK_DIRECTORIES") { - std::ostringstream str; + const char* sep = ""; for (std::vector::const_iterator it = this->GetLinkDirectories().begin(); it != this->GetLinkDirectories().end(); ++ it ) { - if ( it != this->GetLinkDirectories().begin()) - { - str << ";"; - } - str << it->c_str(); + output += sep; + output += *it; + sep = ";"; } - output = str.str(); return output.c_str(); } else if (prop == "INCLUDE_DIRECTORIES") http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0a4e5674eccb0126733086d4632c7239217db6f1 commit 0a4e5674eccb0126733086d4632c7239217db6f1 Author: Stephen Kelly AuthorDate: Sun Jan 25 15:47:21 2015 +0100 Commit: Stephen Kelly CommitDate: Wed Feb 11 22:57:38 2015 +0100 cmMacroCommand: Remove counting variable. Start iteration at correct starting point directly. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index c1e7cbb..657e750 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -167,19 +167,14 @@ bool cmMacroHelperCommand::InvokeInitialPass if (expandedArgs.size() > this->Args.size() - 1) { std::vector::const_iterator eit - = expandedArgs.begin(); - std::vector::size_type cnt = 0; + = expandedArgs.begin() + (this->Args.size() - 1); for( ; eit != expandedArgs.end(); ++eit) { - if ( cnt >= this->Args.size()-1 ) + if (!argnDef.empty()) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += ";"; } - cnt ++; + argnDef += *eit; } } argnDefInitialized = true; ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Thu Feb 12 00:01:17 2015 From: kwrobot at kitware.com (Kitware Robot) Date: Thu, 12 Feb 2015 00:01:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1107-g09cdcc5 Message-ID: <20150212050117.91B9AAAA4D@public.kitware.com> 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 09cdcc54303bf065022a997056f403dd0707bc7e (commit) from f00829a9384283ef1cf86b337b41eaed30ca7ded (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=09cdcc54303bf065022a997056f403dd0707bc7e commit 09cdcc54303bf065022a997056f403dd0707bc7e Author: Kitware Robot AuthorDate: Thu Feb 12 00:01:15 2015 -0500 Commit: Kitware Robot CommitDate: Thu Feb 12 00:01:15 2015 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 62cc2b6..6152144 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 2) -set(CMake_VERSION_PATCH 20150211) +set(CMake_VERSION_PATCH 20150212) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 11:52:59 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 11:52:59 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1109-ga4a6b55 Message-ID: <20150212165259.78E45AAC23@public.kitware.com> 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 a4a6b55f08e37ce9b8a17680cc30ece66d048ec7 (commit) via be36bfd65d53962c7ba975382bd911e0857f6a33 (commit) from 09cdcc54303bf065022a997056f403dd0707bc7e (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=a4a6b55f08e37ce9b8a17680cc30ece66d048ec7 commit a4a6b55f08e37ce9b8a17680cc30ece66d048ec7 Merge: 09cdcc5 be36bfd Author: Brad King AuthorDate: Thu Feb 12 11:52:58 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 11:52:58 2015 -0500 Merge topic 'cpack_rpm_mulit_prefix_fixup' be36bfd6 CPackRPM: Do not run file(GLOB_RECURSE) without CMP0009 set to NEW ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 11:53:01 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 11:53:01 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1111-g8c59928 Message-ID: <20150212165301.389F7AABAF@public.kitware.com> 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 8c59928f3ac2a3a4f9b647f2c60c134d54d2237f (commit) via e2a8984c06a5f466a268ad7f1a7a8578bfe6bf5b (commit) from a4a6b55f08e37ce9b8a17680cc30ece66d048ec7 (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=8c59928f3ac2a3a4f9b647f2c60c134d54d2237f commit 8c59928f3ac2a3a4f9b647f2c60c134d54d2237f Merge: a4a6b55 e2a8984 Author: Brad King AuthorDate: Thu Feb 12 11:53:00 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 11:53:00 2015 -0500 Merge topic 'FindCoin3D-drop-link' e2a8984c FindCoin3D: Drop link to project homepage ----------------------------------------------------------------------- Summary of changes: Modules/FindCoin3D.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 11:53:03 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 11:53:03 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1117-gfc7e156 Message-ID: <20150212165303.86495AABB4@public.kitware.com> 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 fc7e15691a870f8f5e199e615279c7eb4dba8f6f (commit) via f30022eb07b913598326d2e3b10ff2e706fbe873 (commit) via 7607c3d16aa0636458c909f4036e4b0d91581b30 (commit) via ebd556caa9e1fc92e00c8e401b145c531390e854 (commit) via 290ca8e2d0328d27f51ff5248c35e32e44fdd1eb (commit) via f99991db882c2f4cf8246b9c272845faaa5bbce5 (commit) from 8c59928f3ac2a3a4f9b647f2c60c134d54d2237f (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=fc7e15691a870f8f5e199e615279c7eb4dba8f6f commit fc7e15691a870f8f5e199e615279c7eb4dba8f6f Merge: 8c59928 f30022e Author: Brad King AuthorDate: Thu Feb 12 11:53:02 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 11:53:02 2015 -0500 Merge topic 'install-DESTINATION-genex' f30022eb install: Allow generator expressions in TARGETS DESTINATION (#14317) 7607c3d1 cmInstallGenerator: Pass destination explicitly to AddInstallRule ebd556ca cmInstallGenerator: Fix check for absolute install destinations 290ca8e2 cmInstallGenerator: Refactor computation of absolute install dest f99991db cmInstallGenerator: Move GetDestination to subclasses that need it ----------------------------------------------------------------------- Summary of changes: Help/command/install.rst | 4 ++++ Help/release/dev/install-DESTINATION-genex.rst | 5 +++++ Source/cmExportInstallFileGenerator.cxx | 10 +++++----- Source/cmInstallDirectoryGenerator.cxx | 4 +++- Source/cmInstallExportGenerator.cxx | 8 +++++--- Source/cmInstallExportGenerator.h | 3 +++ Source/cmInstallFilesGenerator.cxx | 1 + Source/cmInstallGenerator.cxx | 14 ++++++++------ Source/cmInstallGenerator.h | 9 ++++----- Source/cmInstallTargetGenerator.cxx | 17 ++++++++++++++--- Source/cmInstallTargetGenerator.h | 2 ++ Tests/ExportImport/Export/CMakeLists.txt | 12 +++++++++--- Tests/ExportImport/Export/testLibPerConfigDest.c | 1 + Tests/ExportImport/Import/A/CMakeLists.txt | 2 ++ Tests/ExportImport/Import/A/imp_testExe1.c | 2 ++ Tests/RunCMake/install/RunCMakeTest.cmake | 1 + .../TARGETS-DESTINATION-bad-result.txt} | 0 .../install/TARGETS-DESTINATION-bad-stderr.txt | 6 ++++++ Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake | 3 +++ .../RunCMake/{GeneratorExpression => install}/empty.c | 0 20 files changed, 78 insertions(+), 26 deletions(-) create mode 100644 Help/release/dev/install-DESTINATION-genex.rst create mode 100644 Tests/ExportImport/Export/testLibPerConfigDest.c copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => install/TARGETS-DESTINATION-bad-result.txt} (100%) create mode 100644 Tests/RunCMake/install/TARGETS-DESTINATION-bad-stderr.txt create mode 100644 Tests/RunCMake/install/TARGETS-DESTINATION-bad.cmake copy Tests/RunCMake/{GeneratorExpression => install}/empty.c (100%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 11:53:05 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 11:53:05 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1138-ge6ae3c6 Message-ID: <20150212165308.A3563AAC04@public.kitware.com> 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 e6ae3c6ae0540de51b3d615aea3abd49ccc70a34 (commit) via 7c3f637680ac0cdb6cec5e75ba4a9b188de5017b (commit) via 8a399c8c9f1c4a793289d6baf37081efac082eee (commit) via abfca97525be06e067981b6c6bf63ba7a3aa52f9 (commit) via 0b61b86df856e3cec366f8c23f35aae576b2d821 (commit) via e21f7829a2891ce7599ade02d4fd9c193657069a (commit) via 559dc15589ad0b9a7bdaa62ac7552899993f6f0d (commit) via 0ea719326ea78b423a5ec95b1218b626e9392f07 (commit) via 9380e85f865e29cd5968e91408a31d5160f4a4cb (commit) via bb10012fea677fd8aa1bbefd06061efcb7ec1955 (commit) via 0c12f1ea0da0a5822a7a69b4ff77b45732c72466 (commit) via 27c6f017a1ef7c62f7f0332d624add7e8189f81c (commit) via 4e78ebbdf94b99f7b7d5b9b31d05dd9479b1d6ab (commit) via 8910224950a2b723e0d4fd7c21a326af7fb2e050 (commit) via 7b8725bf8472ebf4781ddd60ef8fcca9c3ad98dd (commit) via 7ee56f03999e8605cc2cbe85a3a7b7159e639e5d (commit) via 0a4e5674eccb0126733086d4632c7239217db6f1 (commit) via 11ecc31d0a2da0090195a682364fb4628f55673a (commit) via f95543f8a6b38bf6d5350169bdb53d5066839b76 (commit) via 9fe8f49353f927882af256c7870eb24e4be0c9be (commit) via ac26d4b343aece40b6b9a931ab619fc88d4b9492 (commit) from fc7e15691a870f8f5e199e615279c7eb4dba8f6f (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=e6ae3c6ae0540de51b3d615aea3abd49ccc70a34 commit e6ae3c6ae0540de51b3d615aea3abd49ccc70a34 Merge: fc7e156 7c3f637 Author: Brad King AuthorDate: Thu Feb 12 11:53:04 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 11:53:04 2015 -0500 Merge topic 'use-cmRange' 7c3f6376 Convert loop into two algorithms. 8a399c8c Convert loop to the common pattern. abfca975 Move loop inside of condition. 0b61b86d Handle last element outside of the loop. e21f7829 cmTarget: Use a sorted vector in place of a set. 559dc155 cmSet: Replace loop with cmJoin. 0ea71932 cmFindBase: Replace loop with cmJoin on range. 9380e85f Convert loops to cmJoin algorithm with cmRange. bb10012f cmStringCommand: Accumulate with cmJoin and range adaptors. 0c12f1ea cmAlgorithms: Add a range adaptor and API for adjusting a range. 27c6f017 Use cmJoin to accumulate string ranges. 4e78ebbd cmAlgorithms: Add a Range container and adaptor method. 89102249 Replace common loop pattern with cmJoin 7b8725bf Convert loops populating maybe-empty content into the common pattern. 7ee56f03 Convert loops into the commonly used pattern. 0a4e5674 cmMacroCommand: Remove counting variable. ... ----------------------------------------------------------------------- Summary of changes: Source/CPack/cmCPackGeneratorFactory.cxx | 1 + Source/CTest/cmCTestGIT.cxx | 1 + Source/{cmStandardIncludes.h => cmAlgorithms.h} | 219 ++++++++--------------- Source/cmExportSet.cxx | 1 + Source/cmExportSetMap.cxx | 1 + Source/cmFileCommand.cxx | 6 +- Source/cmFileLockPool.cxx | 1 + Source/cmFindBase.cxx | 8 +- Source/cmFindPackageCommand.cxx | 19 +- Source/cmFunctionCommand.cxx | 8 +- Source/cmGetCMakePropertyCommand.cxx | 19 +- Source/cmInstalledFile.h | 1 + Source/cmListCommand.cxx | 11 +- Source/cmLocalGenerator.cxx | 10 +- Source/cmLocalUnixMakefileGenerator3.cxx | 24 ++- Source/cmMacroCommand.cxx | 32 ++-- Source/cmMakefile.cxx | 44 +---- Source/cmMessageCommand.cxx | 6 +- Source/cmOptionCommand.cxx | 6 +- Source/cmRST.cxx | 1 + Source/cmSetCommand.cxx | 12 +- Source/cmStandardIncludes.h | 134 -------------- Source/cmStringCommand.cxx | 42 ++--- Source/cmSystemTools.cxx | 1 + Source/cmTarget.cxx | 27 ++- Source/cmVariableWatch.cxx | 2 + Source/cmcmd.cxx | 15 +- 27 files changed, 154 insertions(+), 498 deletions(-) copy Source/{cmStandardIncludes.h => cmAlgorithms.h} (53%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 11:53:12 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 11:53:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.2-1152-g32821bb Message-ID: <20150212165312.A8740AABAF@public.kitware.com> 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 32821bb3190a9539ebe98fb7dfa0ba7c7a890ff7 (commit) via b5f98e5012ef53ee6746c42131fc66892bfff717 (commit) via 83414d5a07753d004f5e663c385ef0c713895d46 (commit) via 9a1f8f35f48d7dcfefc70de9ae530c31b16cd9e0 (commit) via 4aa7bd2ac11aa2edb0288e5ba360984b7799130d (commit) via 6774c92b5809b80c767ef8094b2f26d06556e0fd (commit) via 2c4a7298fcb3ac6a6b6c0a9545b343c814f3d6ec (commit) via a551851ab3f23f58074638ffcf38a08d98a35fa8 (commit) via f79c0f7697ee0bd25ec74f7dbb2ac0cf6189a9df (commit) via 8e0827b646b14028446503ac392a9ab7bb5a53a3 (commit) via f2c49f59d8dbca936a40b62a9079fa71ca551365 (commit) via 3250a7e535684bec684c0109b31675ba72dc3aa9 (commit) via 081a13f7c011d0ebd28caebfedee1e3e3f7602c9 (commit) via 17b5ebd383df4c0c731b5c687ccaa3608b2d188f (commit) from e6ae3c6ae0540de51b3d615aea3abd49ccc70a34 (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=32821bb3190a9539ebe98fb7dfa0ba7c7a890ff7 commit 32821bb3190a9539ebe98fb7dfa0ba7c7a890ff7 Merge: e6ae3c6 b5f98e5 Author: Brad King AuthorDate: Thu Feb 12 11:53:11 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 11:53:11 2015 -0500 Merge topic 'clean-up-cmMacroCommand' b5f98e50 cmMacroCommand: Manipulate target string directly. 83414d5a cmMacroCommand: Move computation of ARGV%n names out of double loop. 9a1f8f35 cmMacroCommand: Move ARGV replacement out of condition. 4aa7bd2a cmMacroCommand: Remove condition around ARGN replacement. 6774c92b cmMacroCommand: Declare tmps in the scope that it's used. 2c4a7298 cmMacroCommand: Declare arg in the scope that it is used. a551851a cmMacroCommand: Inline variable computation. f79c0f76 cmMacroCommand: Compute variables outside of two loops. 8e0827b6 cmMacroCommand: Remove intermediate arg variables. f2c49f59 cmMacroCommand: Remove condition around ARGN computation. 3250a7e5 cmMacroCommand: Remove conditional append of semicolon. 081a13f7 cmMacroCommand: Declare arg variables where used and initialized. 17b5ebd3 cmMacroCommand: Join the args strings outside of the loops. ----------------------------------------------------------------------- Summary of changes: Source/cmMacroCommand.cxx | 93 ++++++++++++++++----------------------------- 1 file changed, 32 insertions(+), 61 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 11:53:33 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 11:53:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.2-1329-gae8aeae Message-ID: <20150212165333.9AEF3AABC0@public.kitware.com> 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 ae8aeae252f14c079b3bebebfa6e88f495c84922 (commit) via 32821bb3190a9539ebe98fb7dfa0ba7c7a890ff7 (commit) via e6ae3c6ae0540de51b3d615aea3abd49ccc70a34 (commit) via fc7e15691a870f8f5e199e615279c7eb4dba8f6f (commit) via 8c59928f3ac2a3a4f9b647f2c60c134d54d2237f (commit) via a4a6b55f08e37ce9b8a17680cc30ece66d048ec7 (commit) via 09cdcc54303bf065022a997056f403dd0707bc7e (commit) from 015e5e0c2cd0573f1ca07103216530703c337eb1 (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=ae8aeae252f14c079b3bebebfa6e88f495c84922 commit ae8aeae252f14c079b3bebebfa6e88f495c84922 Merge: 015e5e0 32821bb Author: Brad King AuthorDate: Thu Feb 12 11:53:20 2015 -0500 Commit: Brad King CommitDate: Thu Feb 12 11:53:20 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 12:45:48 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 12:45:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.3-1148-g8e05ba2 Message-ID: <20150212174548.2E647AB5D0@public.kitware.com> 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 8e05ba274f096e82b6df98f8d0d6b163cd93631d (commit) via bd6389f7bce6d69a75e6f84245834e19b24cc03f (commit) from 32821bb3190a9539ebe98fb7dfa0ba7c7a890ff7 (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 12:45:48 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 12:45:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.3-1325-g93bac6e Message-ID: <20150212174548.48F28AB5D1@public.kitware.com> 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 93bac6ed6219b86de71efe119e395e2819d42eb5 (commit) via 8e05ba274f096e82b6df98f8d0d6b163cd93631d (commit) from ae8aeae252f14c079b3bebebfa6e88f495c84922 (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=93bac6ed6219b86de71efe119e395e2819d42eb5 commit 93bac6ed6219b86de71efe119e395e2819d42eb5 Merge: ae8aeae 8e05ba2 Author: Brad King AuthorDate: Thu Feb 12 12:45:32 2015 -0500 Commit: Brad King CommitDate: Thu Feb 12 12:45:32 2015 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 12:45:48 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 12:45:48 -0500 (EST) Subject: [Cmake-commits] CMake annotated tag, v3.1.3, created. v3.1.3 Message-ID: <20150212174548.5C5AAAB5D3@public.kitware.com> 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 annotated tag, v3.1.3 has been created at 78fa3a75b45b4a486f853e4495a2f4457283c5e5 (tag) tagging bd6389f7bce6d69a75e6f84245834e19b24cc03f (commit) replaces v3.1.2 tagged by Brad King on Thu Feb 12 12:44:51 2015 -0500 - Log ----------------------------------------------------------------- CMake 3.1.3 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJU3OaTAAoJEOyP7zp7+07aYGMP+gI1iA7JVHmHDLGYQ62ZrHrs aBMQwyv8I8TwIDHtdiVGiFf3xsRVjhnssZta1obBtQheq07GKWLAs6pMLr9e/y2Z NSdnXbhJtdd6AXKZtyQpDn8BHf/KPUTdxjRpAVR12zLpY5zbgfIFapivdsOS4xq1 BPFCM7n1t7hrjOXW4F0g+EGsrrnEv0FU32pfRFbNyn2zarFKubeMT2Sc1q4NW7Dq vu+WQI2kF0TCbucI1kJruT8ayVC54dt//a8lGjxOhIy269m3mKnYdHGakpMjAVPi 6JQXvMu7uC/5k7GzLOdYXZRiqfQDlCsiW9GilEDXTVoLv1FulzGpMr6r1bSP2Dtd z/M0q2/GFu4pr846mJVWYLuTJKUQtewHVGb4qzSNT7FzELe4ujjvvFcO8hoRBY1O XpOU/I6C95hMCPCYfZl7TFUW0Bh7Tv5lK0iruUVrVJln6dNGV7ReoDQw+JXCmRAL r1Hb6HIkPPu/6LSzMbQgpk4BNmGkYZj+HIUSiVecdB1XTl2oSR6RNCz1h5gPVLm6 vWc7yr1QoL2fXUOMZyNQs3KvSwQq5P4jG7s8UPIhwUz9NF1UYTWTzwySTyyELa6i BRp468IJkm1Kj13oqjrXLDxZ9xOiMNqXZEdvwX3ZJYtJXADaAD5DFGSxnoShOMa3 1RA8eUxYmACVBx38/28y =wlyj -----END PGP SIGNATURE----- Brad King (5): Do not call setlocale() globally in CMake applications (#15377) Add setlocale() calls around use of libarchive APIs (#14934, #15377) Merge branch 'backport-no-global-setlocale' into release-3.1 Merge branch 'makefile-missing-comment' into release-3.1 CMake 3.1.3 Nils Gladitz (1): Makefile: Fix regression in target-bound custom command COMMENT output ----------------------------------------------------------------------- hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 12:53:54 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 12:53:54 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.3-1329-g0c249a2 Message-ID: <20150212175354.D0A2CAB621@public.kitware.com> 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 0c249a20a57a744b88c44537df6206cd83ae2440 (commit) via 0ec1f45a138bd7a9ad618f6e9dfa077a6bc8533c (commit) via da92cdab5206d0556822ee12350636300ec73160 (commit) via a4568ca597ac94a32ea4e0e318e8175e614bc5ab (commit) from 93bac6ed6219b86de71efe119e395e2819d42eb5 (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=0c249a20a57a744b88c44537df6206cd83ae2440 commit 0c249a20a57a744b88c44537df6206cd83ae2440 Merge: 93bac6e 0ec1f45 Author: Brad King AuthorDate: Thu Feb 12 12:53:45 2015 -0500 Commit: Brad King CommitDate: Thu Feb 12 12:53:45 2015 -0500 Merge branch 'master' into next http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0ec1f45a138bd7a9ad618f6e9dfa077a6bc8533c commit 0ec1f45a138bd7a9ad618f6e9dfa077a6bc8533c Merge: 8e05ba2 da92cda Author: Brad King AuthorDate: Thu Feb 12 12:53:35 2015 -0500 Commit: Brad King CommitDate: Thu Feb 12 12:53:35 2015 -0500 Merge branch 'release' http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da92cdab5206d0556822ee12350636300ec73160 commit da92cdab5206d0556822ee12350636300ec73160 Merge: a4568ca be36bfd Author: Brad King AuthorDate: Wed Feb 11 11:08:37 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 11:08:37 2015 -0500 Merge branch 'cpack_rpm_mulit_prefix_fixup' into release http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a4568ca597ac94a32ea4e0e318e8175e614bc5ab commit a4568ca597ac94a32ea4e0e318e8175e614bc5ab Merge: 0a95c5c e2a8984 Author: Brad King AuthorDate: Wed Feb 11 11:08:32 2015 -0500 Commit: Brad King CommitDate: Wed Feb 11 11:08:32 2015 -0500 Merge branch 'FindCoin3D-drop-link' into release ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 12:54:04 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 12:54:04 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.1.3-1151-g0ec1f45 Message-ID: <20150212175404.037CEAB5D3@public.kitware.com> 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 0ec1f45a138bd7a9ad618f6e9dfa077a6bc8533c (commit) via da92cdab5206d0556822ee12350636300ec73160 (commit) via a4568ca597ac94a32ea4e0e318e8175e614bc5ab (commit) from 8e05ba274f096e82b6df98f8d0d6b163cd93631d (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 12:54:08 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 12:54:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.1.2-1032-gda92cda Message-ID: <20150212175408.7BA9DAB621@public.kitware.com> 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, release has been updated via da92cdab5206d0556822ee12350636300ec73160 (commit) via a4568ca597ac94a32ea4e0e318e8175e614bc5ab (commit) via e2a8984c06a5f466a268ad7f1a7a8578bfe6bf5b (commit) via be36bfd65d53962c7ba975382bd911e0857f6a33 (commit) from 0a95c5ce2ef8d9887c4a0bdde480155d75f12c7b (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Modules/CPackRPM.cmake | 7 ++++++- Modules/FindCoin3D.cmake | 3 +-- 2 files changed, 7 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 13:12:15 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 13:12:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, maint, updated. v3.1.3 Message-ID: <20150212181215.52C5AA73C8@public.kitware.com> 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, maint has been updated via bd6389f7bce6d69a75e6f84245834e19b24cc03f (commit) via 8ad8a81d5c150db2c4823b57cdc8e2f2de9afc91 (commit) via eeb2831b5f35af1ec8a65be343e754ff1c29550d (commit) via e1ce81a2cb66c70d806adf755d9ee273687ca962 (commit) via cd408d93fdf347ff63a8062f75f1f4ee3e898b17 (commit) via 87be2e1427ba2b1b7697c9332487862917897dca (commit) via 44100adc6c7f7db7bfd4ccf0d8bd18de8ab195c0 (commit) via e6afd9500d0d00855ef0144a1e7c913a8bf4927d (commit) via 467f5bcc6ebb8468bb2ef1fc4edaeab9970a37d4 (commit) via fdb0799d7568efbae2b01ede62e6cec30a0798ce (commit) via dea42d929699ef62c1d6df0eb273beb30c9fbf6e (commit) via 37662ea4bf64087f2251e2f4a71a13623cfe047f (commit) via 4dc5acee634b3ac72f2e1c2f1ca0489526a86cf3 (commit) via 048fb8e3d0dd41f73f3a12f6ce3b13c80148ea3e (commit) via d52b5f8835a1768dc3b16e8b8cc465b5f80098ad (commit) via e6214b9a52ca4e79148017ef43e9228806999c06 (commit) via 9259d7788193ad23aa429652af983afc3bc4a953 (commit) via 5d96094874c148365441612158acf2039d421538 (commit) via c5d9a8283cfac15b4a5a07f18d5eb10c1f388505 (commit) via 163bbff24afb284f3de142354c6c6ec75a6a7b67 (commit) via c7310917e6b5efa6ef867ef5cabc5b5649d97b67 (commit) via f6308b01398fdb5095f28662be326c66806eef20 (commit) via 482c84759fb6df983d519ca2ac61e3c92c0ae7e3 (commit) via 7ab7aa60bb88474ceb4119e79f349254910b853c (commit) via b79d8f2934bc0dbe5f22fbb3ee709eb932baf3c6 (commit) from 57622bd19d3fd013038d34f497b106a7e2bfd26d (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 ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Help/command/link_libraries.rst | 19 +++++++------ Help/manual/cmake-commands.7.rst | 2 +- Modules/FeatureSummary.cmake | 4 +-- Modules/FindOpenSSL.cmake | 2 +- Modules/Platform/Windows-MSVC.cmake | 2 +- Modules/Platform/Windows-df.cmake | 2 +- Source/CMakeLists.txt | 1 + Source/CMakeVersion.cmake | 2 +- Source/CPack/cmCPackGenerator.cxx | 12 +++++++++ Source/CPack/cpack.cxx | 2 -- Source/CTest/cmCTestBuildHandler.cxx | 4 +-- Source/CursesDialog/ccmake.cxx | 3 --- Source/cmArchiveWrite.cxx | 4 +++ Source/cmGeneratorTarget.cxx | 8 ++++++ Source/cmLocalGenerator.cxx | 14 ++++------ Source/cmLocalUnixMakefileGenerator3.cxx | 2 +- Tests/QtAutogen/yaf.cpp => Source/cmLocale.h | 37 +++++++++++++------------- Source/cmNinjaTargetGenerator.cxx | 8 ++++++ Source/cmSystemTools.cxx | 3 +++ Source/cmakemain.cxx | 2 -- Source/ctest.cxx | 3 --- Source/kwsys/Directory.cxx | 5 ++++ Tests/CTestTestMemcheck/memtester.cxx.in | 2 -- Tests/CustomCommand/CMakeLists.txt | 13 +++++++++ Tests/CustomCommand/foo.in | 5 ++++ Tests/CustomCommand/subdir.h.in | 1 + 26 files changed, 104 insertions(+), 58 deletions(-) copy Tests/QtAutogen/yaf.cpp => Source/cmLocale.h (61%) create mode 100644 Tests/CustomCommand/subdir.h.in hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 13:36:26 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 13:36:26 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.3-1331-g2aa7f9a Message-ID: <20150212183626.2E406AAD9B@public.kitware.com> 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 2aa7f9aec3ab5608b8a5f38c6d07bf647bc2c084 (commit) via bf8f9c29e745933d5732f4481669c38ba8bdc3fc (commit) from 0c249a20a57a744b88c44537df6206cd83ae2440 (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=2aa7f9aec3ab5608b8a5f38c6d07bf647bc2c084 commit 2aa7f9aec3ab5608b8a5f38c6d07bf647bc2c084 Merge: 0c249a2 bf8f9c2 Author: Brad King AuthorDate: Thu Feb 12 13:36:12 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 13:36:12 2015 -0500 Merge topic 'xcode-attribute-genex' into next bf8f9c29 Xcode: Teach XCODE_ATTRIBUTE target properties about generator expressions http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bf8f9c29e745933d5732f4481669c38ba8bdc3fc commit bf8f9c29e745933d5732f4481669c38ba8bdc3fc Author: Gregor Jasny AuthorDate: Wed Feb 11 20:48:43 2015 +0100 Commit: Brad King CommitDate: Thu Feb 12 13:35:31 2015 -0500 Xcode: Teach XCODE_ATTRIBUTE target properties about generator expressions Signed-off-by: Gregor Jasny diff --git a/Help/prop_tgt/XCODE_ATTRIBUTE_an-attribute.rst b/Help/prop_tgt/XCODE_ATTRIBUTE_an-attribute.rst index de98c37..7e00ac4 100644 --- a/Help/prop_tgt/XCODE_ATTRIBUTE_an-attribute.rst +++ b/Help/prop_tgt/XCODE_ATTRIBUTE_an-attribute.rst @@ -8,3 +8,9 @@ the generated Xcode project. Ignored on other generators. See the :variable:`CMAKE_XCODE_ATTRIBUTE_` variable to set attributes on all targets in a directory tree. + +Contents of ``XCODE_ATTRIBUTE_`` may use +"generator expressions" with the syntax ``$<...>``. See the +:manual:`cmake-generator-expressions(7)` manual for available +expressions. See the :manual:`cmake-buildsystem(7)` manual +for more on defining buildsystem properties. diff --git a/Help/release/dev/xcode-attribute-genex.rst b/Help/release/dev/xcode-attribute-genex.rst new file mode 100644 index 0000000..3fd5b1c --- /dev/null +++ b/Help/release/dev/xcode-attribute-genex.rst @@ -0,0 +1,5 @@ +xcode-attribute-genex +--------------------- + +* The :prop_tgt:`XCODE_ATTRIBUTE_` target property learned + to support generator expressions. diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 30ed134..aea134e 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -2436,8 +2436,11 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target, if (!attribute.empty()) { + cmGeneratorExpression ge; + std::string processed = ge.Parse(i->second.GetValue()) + ->Evaluate(this->CurrentMakefile, configName); buildSettings->AddAttribute(attribute.c_str(), - this->CreateString(i->second.GetValue())); + this->CreateString(processed)); } } } diff --git a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake index 8e4026b..792f40e 100644 --- a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake +++ b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake @@ -1,3 +1,5 @@ include(RunCMake) run_cmake(XcodeFileType) +run_cmake(XcodeAttributeGenex) +run_cmake(XcodeAttributeGenexError) diff --git a/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake new file mode 100644 index 0000000..637df0f --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake @@ -0,0 +1,7 @@ +set(expect "TEST_HOST = \"[^;\"]*Tests/RunCMake/XcodeProject/XcodeAttributeGenex-build/[^;\"/]*/some\"") +file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual + REGEX "TEST_HOST = .*;" LIMIT_COUNT 1) +if(NOT "${actual}" MATCHES "${expect}") + message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" + "which does not match expected regex:\n ${expect}\n") +endif() diff --git a/Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake new file mode 100644 index 0000000..760b882 --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake @@ -0,0 +1,4 @@ +enable_language(C) +add_executable(some main.c) +add_executable(another main.c) +set_property(TARGET another PROPERTY XCODE_ATTRIBUTE_TEST_HOST "$") diff --git a/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError-result.txt b/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError-stderr.txt b/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError-stderr.txt new file mode 100644 index 0000000..9844158 --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError-stderr.txt @@ -0,0 +1,6 @@ +CMake Error: + Error evaluating generator expression: + + \$ + + Expression did not evaluate to a known generator expression diff --git a/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError.cmake b/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError.cmake new file mode 100644 index 0000000..98ad6c5 --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenexError.cmake @@ -0,0 +1,4 @@ +enable_language(C) +add_executable(some main.c) +add_executable(another main.c) +set_property(TARGET another PROPERTY XCODE_ATTRIBUTE_TEST_HOST "$") ----------------------------------------------------------------------- Summary of changes: Help/prop_tgt/XCODE_ATTRIBUTE_an-attribute.rst | 6 ++++++ Help/release/dev/xcode-attribute-genex.rst | 5 +++++ Source/cmGlobalXCodeGenerator.cxx | 5 ++++- Tests/RunCMake/XcodeProject/RunCMakeTest.cmake | 2 ++ Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake | 7 +++++++ Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake | 4 ++++ .../XcodeAttributeGenexError-result.txt} | 0 .../XcodeAttributeGenexError-stderr.txt} | 0 Tests/RunCMake/XcodeProject/XcodeAttributeGenexError.cmake | 4 ++++ 9 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 Help/release/dev/xcode-attribute-genex.rst create mode 100644 Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake create mode 100644 Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => XcodeProject/XcodeAttributeGenexError-result.txt} (100%) copy Tests/RunCMake/{install/TARGETS-DESTINATION-bad-stderr.txt => XcodeProject/XcodeAttributeGenexError-stderr.txt} (100%) create mode 100644 Tests/RunCMake/XcodeProject/XcodeAttributeGenexError.cmake hooks/post-receive -- CMake From steveire at gmail.com Thu Feb 12 14:31:25 2015 From: steveire at gmail.com (Stephen Kelly) Date: Thu, 12 Feb 2015 14:31:25 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.3-1335-g3df0a0a Message-ID: <20150212193125.1C260AB3BA@public.kitware.com> 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 3df0a0aa91f24dbd08d310e13cd44e8d88524922 (commit) via 78757e7ffce9fb6297a2d501989e9b172e6151dc (commit) via fc1cf2654de04ed8f6954dc1907ab1dcb8bb946e (commit) via e5ebeae768a8310b5cfdce0aeff9419e1de51eaa (commit) from 2aa7f9aec3ab5608b8a5f38c6d07bf647bc2c084 (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=3df0a0aa91f24dbd08d310e13cd44e8d88524922 commit 3df0a0aa91f24dbd08d310e13cd44e8d88524922 Merge: 2aa7f9a 78757e7 Author: Stephen Kelly AuthorDate: Thu Feb 12 14:31:24 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 14:31:24 2015 -0500 Merge topic 'clean-up-cmFunctionCommand' into next 78757e7f cmFunctionCommand: Replace loops with cmJoin. fc1cf265 cmFunctionCommand: Remove counting variable. e5ebeae7 cmFunctionCommand: Split loop in two. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=78757e7ffce9fb6297a2d501989e9b172e6151dc commit 78757e7ffce9fb6297a2d501989e9b172e6151dc Author: Stephen Kelly AuthorDate: Wed Feb 11 23:33:03 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 12 20:25:21 2015 +0100 cmFunctionCommand: Replace loops with cmJoin. diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index 088a697..a4d9357 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -126,25 +126,10 @@ bool cmFunctionHelperCommand::InvokeInitialPass } // define ARGV and ARGN - std::vector::const_iterator eit; - std::string argvDef; - for ( eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit ) - { - if (!argvDef.empty()) - { - argvDef += ";"; - } - argvDef += *eit; - } - std::string argnDef; - eit = expandedArgs.begin() + (this->Args.size()-1); - for ( ; eit != expandedArgs.end(); ++eit) - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; - } + std::string argvDef = cmJoin(expandedArgs, ";"); + std::vector::const_iterator eit + = expandedArgs.begin() + (this->Args.size()-1); + std::string argnDef = cmJoin(cmRange(eit, expandedArgs.end()), ";"); this->Makefile->AddDefinition("ARGV", argvDef.c_str()); this->Makefile->MarkVariableAsUsed("ARGV"); this->Makefile->AddDefinition("ARGN", argnDef.c_str()); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fc1cf2654de04ed8f6954dc1907ab1dcb8bb946e commit fc1cf2654de04ed8f6954dc1907ab1dcb8bb946e Author: Stephen Kelly AuthorDate: Wed Feb 11 23:31:22 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 12 20:25:21 2015 +0100 cmFunctionCommand: Remove counting variable. Start iteration at correct starting point directly. diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index a0a14e8..088a697 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -137,17 +137,13 @@ bool cmFunctionHelperCommand::InvokeInitialPass argvDef += *eit; } std::string argnDef; - unsigned int cnt = 0; - for ( eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit ) - if ( cnt >= this->Args.size()-1 ) + eit = expandedArgs.begin() + (this->Args.size()-1); + for ( ; eit != expandedArgs.end(); ++eit) + if (!argnDef.empty()) { - if (!argnDef.empty()) - { - argnDef += ";"; - } - argnDef += *eit; + argnDef += ";"; } - cnt ++; + argnDef += *eit; } this->Makefile->AddDefinition("ARGV", argvDef.c_str()); this->Makefile->MarkVariableAsUsed("ARGV"); http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e5ebeae768a8310b5cfdce0aeff9419e1de51eaa commit e5ebeae768a8310b5cfdce0aeff9419e1de51eaa Author: Stephen Kelly AuthorDate: Wed Feb 11 23:29:04 2015 +0100 Commit: Stephen Kelly CommitDate: Thu Feb 12 20:25:20 2015 +0100 cmFunctionCommand: Split loop in two. diff --git a/Source/cmFunctionCommand.cxx b/Source/cmFunctionCommand.cxx index b44e228..a0a14e8 100644 --- a/Source/cmFunctionCommand.cxx +++ b/Source/cmFunctionCommand.cxx @@ -128,8 +128,6 @@ bool cmFunctionHelperCommand::InvokeInitialPass // define ARGV and ARGN std::vector::const_iterator eit; std::string argvDef; - std::string argnDef; - unsigned int cnt = 0; for ( eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit ) { if (!argvDef.empty()) @@ -137,6 +135,10 @@ bool cmFunctionHelperCommand::InvokeInitialPass argvDef += ";"; } argvDef += *eit; + } + std::string argnDef; + unsigned int cnt = 0; + for ( eit = expandedArgs.begin(); eit != expandedArgs.end(); ++eit ) if ( cnt >= this->Args.size()-1 ) { if (!argnDef.empty()) ----------------------------------------------------------------------- Summary of changes: Source/cmFunctionCommand.cxx | 25 ++++--------------------- 1 file changed, 4 insertions(+), 21 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Feb 12 16:21:22 2015 From: brad.king at kitware.com (Brad King) Date: Thu, 12 Feb 2015 16:21:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.1.3-1337-ged0721a Message-ID: <20150212212122.88F12AAFD4@public.kitware.com> 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 ed0721a37ab40da95e49a3d79b31f082d0c49cba (commit) via 029d38fa61a666bff89b522904e05a88f903d051 (commit) from 3df0a0aa91f24dbd08d310e13cd44e8d88524922 (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=ed0721a37ab40da95e49a3d79b31f082d0c49cba commit ed0721a37ab40da95e49a3d79b31f082d0c49cba Merge: 3df0a0a 029d38f Author: Brad King AuthorDate: Thu Feb 12 16:21:20 2015 -0500 Commit: CMake Topic Stage CommitDate: Thu Feb 12 16:21:20 2015 -0500 Merge topic 'doc-configure_file-output-location' into next 029d38fa Help: Revise configure_file documentation (#15403) http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=029d38fa61a666bff89b522904e05a88f903d051 commit 029d38fa61a666bff89b522904e05a88f903d051 Author: Brad King AuthorDate: Thu Feb 12 16:06:07 2015 -0500 Commit: Brad King CommitDate: Thu Feb 12 16:20:32 2015 -0500 Help: Revise configure_file documentation (#15403) Format the documentation with better reST markup. Revise the wording to clarify how relative paths are handled. Also add an example section. diff --git a/Help/command/configure_file.rst b/Help/command/configure_file.rst index 70357f2..4304f09 100644 --- a/Help/command/configure_file.rst +++ b/Help/command/configure_file.rst @@ -9,38 +9,103 @@ Copy a file to another location and modify its contents. [COPYONLY] [ESCAPE_QUOTES] [@ONLY] [NEWLINE_STYLE [UNIX|DOS|WIN32|LF|CRLF] ]) -Copies a file to file and substitutes variable values -referenced in the file content. If is a relative path it is -evaluated with respect to the current source directory. The -must be a file, not a directory. If is a relative path it is -evaluated with respect to the current binary directory. If -names an existing directory the input file is placed in that directory -with its original name. - -If the file is modified the build system will re-run CMake to +Copies an ```` file to an ```` file and substitutes +variable values referenced as ``@VAR@`` or ``${VAR}`` in the input +file content. Each variable reference will be replaced with the +current value of the variable, or the empty string if the variable +is not defined. Furthermore, input lines of the form:: + + #cmakedefine VAR ... + +will be replaced with either:: + + #define VAR ... + +or:: + + /* #undef VAR */ + +depending on whether ``VAR`` is set in CMake to any value not considered +a false constant by the :command:`if` command. The "..." content on the +line after the variable name, if any, is processed as above. +Input file lines of the form ``#cmakedefine01 VAR`` will be replaced with +either ``#define VAR 1`` or ``#define VAR 0`` similarly. + +If the input file is modified the build system will re-run CMake to re-configure the file and generate the build system again. -This command replaces any variables in the input file referenced as -${VAR} or @VAR@ with their values as determined by CMake. If a -variable is not defined, it will be replaced with nothing. If -COPYONLY is specified, then no variable expansion will take place. If -ESCAPE_QUOTES is specified then any substituted quotes will be C-style -escaped. The file will be configured with the current values of CMake -variables. If @ONLY is specified, only variables of the form @VAR@ -will be replaced and ${VAR} will be ignored. This is useful for -configuring scripts that use ${VAR}. - -Input file lines of the form "#cmakedefine VAR ..." will be replaced -with either "#define VAR ..." or ``/* #undef VAR */`` depending on -whether VAR is set in CMake to any value not considered a false -constant by the if() command. (Content of "...", if any, is processed -as above.) Input file lines of the form "#cmakedefine01 VAR" will be -replaced with either "#define VAR 1" or "#define VAR 0" similarly. - -With NEWLINE_STYLE the line ending could be adjusted: +The arguments are: -:: +```` + Path to the input file. A relative path is treated with respect to + the value of :variable:`CMAKE_CURRENT_SOURCE_DIR`. The input path + must be a file, not a directory. + +```` + Path to the output file or directory. A relative path is treated + with respect to the value of :variable:`CMAKE_CURRENT_BINARY_DIR`. + If the path names an existing directory the output file is placed + in that directory with the same file name as the input file. + +``COPYONLY`` + Copy the file without replacing any variable references or other + content. This option may not be used with ``NEWLINE_STYLE``. + +``ESCAPE_QUOTES`` + Escape any substituted quotes with backslashes (C-style). + +``@ONLY`` + Restrict variable replacement to references of the form ``@VAR@``. + This is useful for configuring scripts that use ``${VAR}`` syntax. + +``NEWLINE_STYLE