From kwrobot at kitware.com Fri Jan 1 00:01:09 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Fri, 1 Jan 2016 00:01:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-757-g9ebc562 Message-ID: <20160101050109.03BE0E1D68@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 9ebc5626ef9a11b9f55641755504f054079caa7c (commit) from 4aff1650d698fe31dd5d1f1cfdd359737d16c727 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9ebc5626ef9a11b9f55641755504f054079caa7c commit 9ebc5626ef9a11b9f55641755504f054079caa7c Author: Kitware Robot AuthorDate: Fri Jan 1 00:01:06 2016 -0500 Commit: Kitware Robot CommitDate: Fri Jan 1 00:01:06 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index d93b5bb..e0f4a22 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 4) -set(CMake_VERSION_PATCH 20151231) +set(CMake_VERSION_PATCH 20160101) #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 Jan 1 12:15:48 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 1 Jan 2016 12:15:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-759-g1e47d2b Message-ID: <20160101171548.131BAE145E@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 1e47d2b371ebd83374bbfbf9ff22637606e712b1 (commit) via 9647b32f85d368e9e7adc78372ab5639f4ae64bd (commit) from 9ebc5626ef9a11b9f55641755504f054079caa7c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1e47d2b371ebd83374bbfbf9ff22637606e712b1 commit 1e47d2b371ebd83374bbfbf9ff22637606e712b1 Merge: 9ebc562 9647b32 Author: Brad King AuthorDate: Fri Jan 1 12:15:46 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 1 12:15:46 2016 -0500 Merge topic 'copyright-year' 9647b32f Copyright.txt: Update year range to end in 2016 ----------------------------------------------------------------------- Summary of changes: Copyright.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 1 12:16:10 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 1 Jan 2016 12:16:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1834-gcab328f Message-ID: <20160101171610.06BA7E14E3@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 cab328fb37a3e12e75ce76879134d4ab206319bd (commit) via 1e47d2b371ebd83374bbfbf9ff22637606e712b1 (commit) via 9ebc5626ef9a11b9f55641755504f054079caa7c (commit) from 11fa53d45aae116826340668efa4a035db17fb4e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cab328fb37a3e12e75ce76879134d4ab206319bd commit cab328fb37a3e12e75ce76879134d4ab206319bd Merge: 11fa53d 1e47d2b Author: Brad King AuthorDate: Fri Jan 1 12:15:59 2016 -0500 Commit: Brad King CommitDate: Fri Jan 1 12:15:59 2016 -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 kwrobot at kitware.com Sat Jan 2 00:01:09 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sat, 2 Jan 2016 00:01:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-760-g90b50b2 Message-ID: <20160102050109.84A79E2063@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 90b50b2e28d32bcf239d3f6bc4d1114756a78827 (commit) from 1e47d2b371ebd83374bbfbf9ff22637606e712b1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=90b50b2e28d32bcf239d3f6bc4d1114756a78827 commit 90b50b2e28d32bcf239d3f6bc4d1114756a78827 Author: Kitware Robot AuthorDate: Sat Jan 2 00:01:06 2016 -0500 Commit: Kitware Robot CommitDate: Sat Jan 2 00:01:06 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index e0f4a22..6028475 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 4) -set(CMake_VERSION_PATCH 20160101) +set(CMake_VERSION_PATCH 20160102) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From gjasny at googlemail.com Sat Jan 2 11:02:10 2016 From: gjasny at googlemail.com (Gregor Jasny) Date: Sat, 2 Jan 2016 11:02:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1837-gb03eb97 Message-ID: <20160102160210.84BEFE1E9D@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 b03eb971c6e5a282c975cc84531fba7caee43f67 (commit) via 6d962fb9bf94585bb58044502c4ce0e0294e6395 (commit) via 90b50b2e28d32bcf239d3f6bc4d1114756a78827 (commit) from cab328fb37a3e12e75ce76879134d4ab206319bd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b03eb971c6e5a282c975cc84531fba7caee43f67 commit b03eb971c6e5a282c975cc84531fba7caee43f67 Merge: cab328f 6d962fb Author: Gregor Jasny AuthorDate: Sat Jan 2 11:02:09 2016 -0500 Commit: CMake Topic Stage CommitDate: Sat Jan 2 11:02:09 2016 -0500 Merge topic 'xcode-escape-backslash' into next 6d962fb9 Xcode: Escape all backslashes in strings (#15328) 90b50b2e CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6d962fb9bf94585bb58044502c4ce0e0294e6395 commit 6d962fb9bf94585bb58044502c4ce0e0294e6395 Author: Gregor Jasny AuthorDate: Sun Dec 27 16:33:46 2015 +0100 Commit: Gregor Jasny CommitDate: Sat Jan 2 17:00:19 2016 +0100 Xcode: Escape all backslashes in strings (#15328) Before this change backslashes in strings were escaped during compile flags adds via AppendFlag(). But global flags like OTHER_CPLUSPLUSFLAGS are not added as flags but as plain strings so they were not escaped properly. Now the escaping is performed within cmXCodeObject::PrintString() which ensures that strings are always encoded. diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 475efa8..0290643 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1693,7 +1693,6 @@ cmGlobalXCodeGenerator::AddCommandsToBuildPhase(cmXCodeObject* buildphase, makecmd += this->ConvertToRelativeForMake( (makefile+"$CONFIGURATION").c_str()); makecmd += " all"; - cmSystemTools::ReplaceString(makecmd, "\\ ", "\\\\ "); buildphase->AddAttribute("shellScript", this->CreateString(makecmd.c_str())); buildphase->AddAttribute("showEnvVarsInLog", @@ -4022,8 +4021,8 @@ void cmGlobalXCodeGenerator::AppendFlag(std::string& flags, // We escape a flag as follows: // - Place each flag in single quotes '' - // - Escape a single quote as \\' - // - Escape a backslash as \\\\ since it itself is an escape + // - Escape a single quote as \' + // - Escape a backslash as \\ since it itself is an escape // Note that in the code below we need one more level of escapes for // C string syntax in this source file. // @@ -4043,16 +4042,16 @@ void cmGlobalXCodeGenerator::AppendFlag(std::string& flags, { if (this->XcodeVersion >= 40) { - flags += "'\\\\''"; + flags += "'\\''"; } else { - flags += "\\\\'"; + flags += "\\'"; } } else if(*c == '\\') { - flags += "\\\\\\\\"; + flags += "\\\\"; } else { diff --git a/Source/cmXCodeObject.cxx b/Source/cmXCodeObject.cxx index c59c360..5bc34c1 100644 --- a/Source/cmXCodeObject.cxx +++ b/Source/cmXCodeObject.cxx @@ -255,9 +255,9 @@ void cmXCodeObject::PrintString(std::ostream& os,std::string String) for(std::string::const_iterator i = String.begin(); i != String.end(); ++i) { - if(*i == '"') + if(*i == '"' || *i == '\\') { - // Escape double-quotes. + // Escape double-quotes and backslashes. os << '\\'; } os << *i; diff --git a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake index acc0075..395c74b 100644 --- a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake +++ b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake @@ -3,6 +3,7 @@ include(RunCMake) run_cmake(XcodeFileType) run_cmake(XcodeAttributeGenex) run_cmake(XcodeAttributeGenexError) +run_cmake(XcodeObjectNeedsEscape) run_cmake(XcodeObjectNeedsQuote) run_cmake(XcodeOptimizationFlags) run_cmake(XcodePreserveNonOptimizationFlags) diff --git a/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape-check.cmake b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape-check.cmake new file mode 100644 index 0000000..c34e3fe --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape-check.cmake @@ -0,0 +1,7 @@ +set(expect "-DKDESRCDIR=\\\\\\\\\\\\\"foo\\\\\\\\\\\\\"") +file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeObjectNeedsEscape.xcodeproj/project.pbxproj actual + REGEX "OTHER_CPLUSPLUSFLAGS = [^;]*;" 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/XcodeObjectNeedsEscape.cmake b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake new file mode 100644 index 0000000..7606a19 --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake @@ -0,0 +1,3 @@ +enable_language(CXX) +string(APPEND CMAKE_CXX_FLAGS " -DKDESRCDIR=\\\"foo\\\"") +add_library(foo STATIC foo.cpp) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/cmGlobalXCodeGenerator.cxx | 11 +++++------ Source/cmXCodeObject.cxx | 4 ++-- Tests/RunCMake/XcodeProject/RunCMakeTest.cmake | 1 + ...cFlag-check.cmake => XcodeObjectNeedsEscape-check.cmake} | 4 ++-- Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake | 3 +++ 6 files changed, 14 insertions(+), 11 deletions(-) copy Tests/RunCMake/XcodeProject/{XcodePreserveObjcFlag-check.cmake => XcodeObjectNeedsEscape-check.cmake} (60%) create mode 100644 Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake hooks/post-receive -- CMake From kwrobot at kitware.com Sun Jan 3 00:01:10 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 3 Jan 2016 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-761-g506504d Message-ID: <20160103050110.15FFAE1EA9@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 506504d44049b91fe51539a1b7a29cdc65234b7f (commit) from 90b50b2e28d32bcf239d3f6bc4d1114756a78827 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=506504d44049b91fe51539a1b7a29cdc65234b7f commit 506504d44049b91fe51539a1b7a29cdc65234b7f Author: Kitware Robot AuthorDate: Sun Jan 3 00:01:06 2016 -0500 Commit: Kitware Robot CommitDate: Sun Jan 3 00:01:06 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 6028475..4cd8c80 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 4) -set(CMake_VERSION_PATCH 20160102) +set(CMake_VERSION_PATCH 20160103) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From gjasny at googlemail.com Sun Jan 3 16:36:15 2016 From: gjasny at googlemail.com (Gregor Jasny) Date: Sun, 3 Jan 2016 16:36:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1843-g7385263 Message-ID: <20160103213616.00B50E24B2@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 7385263f00a745033714a5072147e0c26743b6f6 (commit) via d8bc26a065f1999698c9b499ca793f9adf740a9d (commit) via dc0ddb9e34f885d32f0fa3bb25072ec77e4a79bb (commit) via 28f98ceef1770fe252c0c3c1e59aca773cc64009 (commit) via 28db2268e8e36521626071a39596b9aaa87defbb (commit) via 506504d44049b91fe51539a1b7a29cdc65234b7f (commit) from b03eb971c6e5a282c975cc84531fba7caee43f67 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7385263f00a745033714a5072147e0c26743b6f6 commit 7385263f00a745033714a5072147e0c26743b6f6 Merge: b03eb97 d8bc26a Author: Gregor Jasny AuthorDate: Sun Jan 3 16:36:14 2016 -0500 Commit: CMake Topic Stage CommitDate: Sun Jan 3 16:36:14 2016 -0500 Merge topic 'xcode-global-attribute-variant' into next d8bc26a0 Xcode: Parse variant and genex for CMAKE_XCODE_ATTRIBUTE (#14947) dc0ddb9e Xcode: Store configuration name along with XcodeObject (#14947) 28f98cee Xcode: Make CMAKE_XCODE_ATTRIBUTE calculation last step (#14947) 28db2268 Xcode: Factor out XCODE_ATTRIBUTE_ variant filter (#14947) 506504d4 CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d8bc26a065f1999698c9b499ca793f9adf740a9d commit d8bc26a065f1999698c9b499ca793f9adf740a9d Author: Gregor Jasny AuthorDate: Sun Jan 3 11:55:50 2016 +0100 Commit: Gregor Jasny CommitDate: Sun Jan 3 22:31:12 2016 +0100 Xcode: Parse variant and genex for CMAKE_XCODE_ATTRIBUTE (#14947) diff --git a/Help/variable/CMAKE_XCODE_ATTRIBUTE_an-attribute.rst b/Help/variable/CMAKE_XCODE_ATTRIBUTE_an-attribute.rst index 122b9f6..be683d6 100644 --- a/Help/variable/CMAKE_XCODE_ATTRIBUTE_an-attribute.rst +++ b/Help/variable/CMAKE_XCODE_ATTRIBUTE_an-attribute.rst @@ -8,3 +8,9 @@ in the generated Xcode project. Ignored on other generators. See the :prop_tgt:`XCODE_ATTRIBUTE_` target property to set attributes on a specific target. + +Contents of ``CMAKE_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/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 3ac1137..fa9af12 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -710,6 +710,15 @@ cmXCodeObject* cmGlobalXCodeGenerator } //---------------------------------------------------------------------------- +cmXCodeObject* cmGlobalXCodeGenerator +::CreateFlatClone(cmXCodeObject* orig) +{ + cmXCodeObject* obj = this->CreateObject(orig->GetType()); + obj->CopyAttributes(orig); + return obj; +} + +//---------------------------------------------------------------------------- std::string GetGroupMapKeyFromPath(cmGeneratorTarget* target, const std::string& fullpath) { @@ -3531,25 +3540,33 @@ bool cmGlobalXCodeGenerator symroot += "/build"; buildSettings->AddAttribute("SYMROOT", this->CreateString(symroot.c_str())); - // Put this last so it can override existing settings - // Convert "CMAKE_XCODE_ATTRIBUTE_*" variables directly. - { - std::vector vars = this->CurrentMakefile->GetDefinitions(); - for(std::vector::const_iterator i = vars.begin(); - i != vars.end(); ++i) + for(Configs::iterator i = configs.begin(); i != configs.end(); ++i) { - if(i->find("CMAKE_XCODE_ATTRIBUTE_") == 0) + cmXCodeObject* buildSettingsForCfg = this->CreateFlatClone(buildSettings); + + // Put this last so it can override existing settings + // Convert "CMAKE_XCODE_ATTRIBUTE_*" variables directly. + std::vector vars = this->CurrentMakefile->GetDefinitions(); + for(std::vector::const_iterator d = vars.begin(); + d != vars.end(); ++d) { - buildSettings->AddAttribute(i->substr(22).c_str(), - this->CreateString( - this->CurrentMakefile->GetDefinition(i->c_str()))); + if(d->find("CMAKE_XCODE_ATTRIBUTE_") == 0) + { + std::string attribute = d->substr(22); + this->FilterConfigurationAttribute(i->first, attribute); + if(!attribute.empty()) + { + cmGeneratorExpression ge; + std::string processed = + ge.Parse(this->CurrentMakefile->GetDefinition(*d)) + ->Evaluate(this->CurrentLocalGenerator, i->first); + buildSettingsForCfg->AddAttribute(attribute, + this->CreateString(processed)); + } + } } - } - } - - for(Configs::iterator i = configs.begin(); i != configs.end(); ++i) - { - i->second->AddAttribute("buildSettings", buildSettings); + // store per-config buildSettings into configuration object + i->second->AddAttribute("buildSettings", buildSettingsForCfg); } this->RootObject->AddAttribute("buildConfigurationList", diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index 4801064..9659822 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -131,6 +131,7 @@ private: cmXCodeObject* CreateObject(cmXCodeObject::Type type); cmXCodeObject* CreateString(const std::string& s); cmXCodeObject* CreateObjectReference(cmXCodeObject*); + cmXCodeObject* CreateFlatClone(cmXCodeObject*); cmXCodeObject* CreateXCodeTarget(cmGeneratorTarget *gtgt, cmXCodeObject* buildPhases); void ForceLinkerLanguages(); diff --git a/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake index 637df0f..8a39506 100644 --- a/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex-check.cmake @@ -1,3 +1,5 @@ +# per target attribute with genex + 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) @@ -5,3 +7,49 @@ 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() + +# per target attribute with variant + +file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual + REGEX "CONFIG_SPECIFIC = .*;") +list(REMOVE_DUPLICATES actual) + +set(expect "CONFIG_SPECIFIC = general") +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() + +set(expect "CONFIG_SPECIFIC = release") +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() + +# global attribute with genex + +set(expect "ANOTHER_GLOBAL = \"[^;\"]*Tests/RunCMake/XcodeProject/XcodeAttributeGenex-build/[^;\"/]*/another\"") +file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual + REGEX "ANOTHER_GLOBAL = .*;" 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() + +# global attribute with variant + +file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual + REGEX "ANOTHER_CONFIG = .*;" LIMIT_COUNT 4) +list(REMOVE_DUPLICATES actual) + +set(expect "ANOTHER_CONFIG = general") +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() + +set(expect "ANOTHER_CONFIG = debug") +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 index 760b882..d8cb3bd 100644 --- a/Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake +++ b/Tests/RunCMake/XcodeProject/XcodeAttributeGenex.cmake @@ -1,4 +1,16 @@ enable_language(C) add_executable(some main.c) add_executable(another main.c) -set_property(TARGET another PROPERTY XCODE_ATTRIBUTE_TEST_HOST "$") +set_target_properties(another PROPERTIES + # per target attribute with genex + XCODE_ATTRIBUTE_TEST_HOST "$" + # per target attribute with variant + XCODE_ATTRIBUTE_CONFIG_SPECIFIC[variant=Release] "release" + XCODE_ATTRIBUTE_CONFIG_SPECIFIC "general") + +# global attribute with genex +set(CMAKE_XCODE_ATTRIBUTE_ANOTHER_GLOBAL "$") + +# global attribute with variant +set(CMAKE_XCODE_ATTRIBUTE_ANOTHER_CONFIG "general") +set(CMAKE_XCODE_ATTRIBUTE_ANOTHER_CONFIG[variant=Debug] "debug") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dc0ddb9e34f885d32f0fa3bb25072ec77e4a79bb commit dc0ddb9e34f885d32f0fa3bb25072ec77e4a79bb Author: Gregor Jasny AuthorDate: Sun Jan 3 11:58:52 2016 +0100 Commit: Gregor Jasny CommitDate: Sun Jan 3 18:31:33 2016 +0100 Xcode: Store configuration name along with XcodeObject (#14947) diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 6f192cb..3ac1137 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -3440,18 +3440,19 @@ bool cmGlobalXCodeGenerator this->CreateObject(cmXCodeObject::XCConfigurationList); cmXCodeObject* buildConfigurations = this->CreateObject(cmXCodeObject::OBJECT_LIST); - std::vector configs; + typedef std::vector > Configs; + Configs configs; const char *defaultConfigName = "Debug"; if(this->XcodeVersion == 15) { cmXCodeObject* configDebug = this->CreateObject(cmXCodeObject::XCBuildConfiguration); configDebug->AddAttribute("name", this->CreateString("Debug")); - configs.push_back(configDebug); + configs.push_back(std::make_pair("Debug", configDebug)); cmXCodeObject* configRelease = this->CreateObject(cmXCodeObject::XCBuildConfiguration); configRelease->AddAttribute("name", this->CreateString("Release")); - configs.push_back(configRelease); + configs.push_back(std::make_pair("Release", configRelease)); } else { @@ -3465,13 +3466,12 @@ bool cmGlobalXCodeGenerator cmXCodeObject* config = this->CreateObject(cmXCodeObject::XCBuildConfiguration); config->AddAttribute("name", this->CreateString(name)); - configs.push_back(config); + configs.push_back(std::make_pair(name, config)); } } - for(std::vector::iterator c = configs.begin(); - c != configs.end(); ++c) + for(Configs::iterator c = configs.begin(); c != configs.end(); ++c) { - buildConfigurations->AddObject(*c); + buildConfigurations->AddObject(c->second); } configlist->AddAttribute("buildConfigurations", buildConfigurations); @@ -3547,10 +3547,9 @@ bool cmGlobalXCodeGenerator } } - for( std::vector::iterator i = configs.begin(); - i != configs.end(); ++i) + for(Configs::iterator i = configs.begin(); i != configs.end(); ++i) { - (*i)->AddAttribute("buildSettings", buildSettings); + i->second->AddAttribute("buildSettings", buildSettings); } this->RootObject->AddAttribute("buildConfigurationList", https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=28f98ceef1770fe252c0c3c1e59aca773cc64009 commit 28f98ceef1770fe252c0c3c1e59aca773cc64009 Author: Gregor Jasny AuthorDate: Sun Jan 3 11:53:38 2016 +0100 Commit: Gregor Jasny CommitDate: Sun Jan 3 12:06:56 2016 +0100 Xcode: Make CMAKE_XCODE_ATTRIBUTE calculation last step (#14947) diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index c9d2742..6f192cb 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -3527,6 +3527,10 @@ bool cmGlobalXCodeGenerator this->CreateString(this->GeneratorToolset.c_str())); } + std::string symroot = root->GetCurrentBinaryDirectory(); + symroot += "/build"; + buildSettings->AddAttribute("SYMROOT", this->CreateString(symroot.c_str())); + // Put this last so it can override existing settings // Convert "CMAKE_XCODE_ATTRIBUTE_*" variables directly. { @@ -3543,10 +3547,6 @@ bool cmGlobalXCodeGenerator } } - std::string symroot = root->GetCurrentBinaryDirectory(); - symroot += "/build"; - buildSettings->AddAttribute("SYMROOT", this->CreateString(symroot.c_str())); - for( std::vector::iterator i = configs.begin(); i != configs.end(); ++i) { https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=28db2268e8e36521626071a39596b9aaa87defbb commit 28db2268e8e36521626071a39596b9aaa87defbb Author: Gregor Jasny AuthorDate: Sat Jan 2 17:57:06 2016 +0100 Commit: Gregor Jasny CommitDate: Sun Jan 3 11:46:27 2016 +0100 Xcode: Factor out XCODE_ATTRIBUTE_ variant filter (#14947) Move the variant= filter out to a helper function so that it can be re-used later for CMAKE_XCODE_ATTRIBUTE_*. diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 475efa8..c9d2742 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1656,6 +1656,46 @@ std::string cmGlobalXCodeGenerator::ExtractFlagRegex(const char* exp, return retFlag; } + //---------------------------------------------------------------------------- +// This function strips off Xcode attributes that do not target the current +// configuration +void +cmGlobalXCodeGenerator +::FilterConfigurationAttribute(std::string const& configName, + std::string& attribute) +{ + // Handle [variant=] condition explicitly here. + std::string::size_type beginVariant = attribute.find("[variant="); + if (beginVariant == std::string::npos) + { + // There is no variant in this attribute. + return; + } + + std::string::size_type endVariant = attribute.find("]", beginVariant+9); + if (endVariant == std::string::npos) + { + // There is no terminating bracket. + return; + } + + // Compare the variant to the configuration. + std::string variant = + attribute.substr(beginVariant+9, endVariant-beginVariant-9); + if (variant == configName) + { + // The variant matches the configuration so use this + // attribute but drop the [variant=] condition. + attribute.erase(beginVariant, endVariant-beginVariant+1); + } + else + { + // The variant does not match the configuration so + // do not use this attribute. + attribute.clear(); + } +} + //---------------------------------------------------------------------------- void cmGlobalXCodeGenerator::AddCommandsToBuildPhase(cmXCodeObject* buildphase, @@ -2498,33 +2538,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, if(i->find("XCODE_ATTRIBUTE_") == 0) { std::string attribute = i->substr(16); - // Handle [variant=] condition explicitly here. - std::string::size_type beginVariant = - attribute.find("[variant="); - if (beginVariant != std::string::npos) - { - std::string::size_type endVariant = - attribute.find("]", beginVariant+9); - if (endVariant != std::string::npos) - { - // Compare the variant to the configuration. - std::string variant = - attribute.substr(beginVariant+9, endVariant-beginVariant-9); - if (variant == configName) - { - // The variant matches the configuration so use this - // attribute but drop the [variant=] condition. - attribute.erase(beginVariant, endVariant-beginVariant+1); - } - else - { - // The variant does not match the configuration so - // do not use this attribute. - attribute.clear(); - } - } - } - + this->FilterConfigurationAttribute(configName, attribute); if (!attribute.empty()) { cmGeneratorExpression ge; diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index c8a39df..4801064 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -153,6 +153,8 @@ private: std::string ExtractFlag(const char* flag, std::string& flags); std::string ExtractFlagRegex(const char* exp, int matchIndex, std::string& flags); + void FilterConfigurationAttribute(std::string const& configName, + std::string& attribute); void SortXCodeObjects(); // delete all objects in the this->XCodeObjects vector. void ClearXCodeObjects(); ----------------------------------------------------------------------- Summary of changes: .../CMAKE_XCODE_ATTRIBUTE_an-attribute.rst | 6 + Source/CMakeVersion.cmake | 2 +- Source/cmGlobalXCodeGenerator.cxx | 136 ++++++++++++-------- Source/cmGlobalXCodeGenerator.h | 3 + .../XcodeProject/XcodeAttributeGenex-check.cmake | 48 +++++++ .../XcodeProject/XcodeAttributeGenex.cmake | 14 +- 6 files changed, 154 insertions(+), 55 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Mon Jan 4 00:01:12 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Mon, 4 Jan 2016 00:01:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-762-g3d2d17c Message-ID: <20160104050113.3D7BEE1F86@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 3d2d17c00c2b20185b7fe0af22ba06bba3730d7c (commit) from 506504d44049b91fe51539a1b7a29cdc65234b7f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3d2d17c00c2b20185b7fe0af22ba06bba3730d7c commit 3d2d17c00c2b20185b7fe0af22ba06bba3730d7c Author: Kitware Robot AuthorDate: Mon Jan 4 00:01:08 2016 -0500 Commit: Kitware Robot CommitDate: Mon Jan 4 00:01:08 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 4cd8c80..b1225b7 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 4) -set(CMake_VERSION_PATCH 20160103) +set(CMake_VERSION_PATCH 20160104) #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 Tue Jan 5 00:01:08 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Tue, 5 Jan 2016 00:01:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-763-ga6cbc89 Message-ID: <20160105050108.75F71E2108@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 a6cbc89179f7fc6e4ac359df48eb1d31abe027cb (commit) from 3d2d17c00c2b20185b7fe0af22ba06bba3730d7c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a6cbc89179f7fc6e4ac359df48eb1d31abe027cb commit a6cbc89179f7fc6e4ac359df48eb1d31abe027cb Author: Kitware Robot AuthorDate: Tue Jan 5 00:01:05 2016 -0500 Commit: Kitware Robot CommitDate: Tue Jan 5 00:01:05 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index b1225b7..29fdd3f 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 4) -set(CMake_VERSION_PATCH 20160104) +set(CMake_VERSION_PATCH 20160105) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From gjasny at googlemail.com Tue Jan 5 13:23:07 2016 From: gjasny at googlemail.com (Gregor Jasny) Date: Tue, 5 Jan 2016 13:23:07 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1845-gacf58fe Message-ID: <20160105182307.84715E2188@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 acf58fefebf43a7ea17fdc7cbe110c3b04cc63cd (commit) via a928a051a370fee18cf799c3995161305f6b258e (commit) from 7385263f00a745033714a5072147e0c26743b6f6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=acf58fefebf43a7ea17fdc7cbe110c3b04cc63cd commit acf58fefebf43a7ea17fdc7cbe110c3b04cc63cd Merge: 7385263 a928a05 Author: Gregor Jasny AuthorDate: Tue Jan 5 13:23:06 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 5 13:23:06 2016 -0500 Merge topic 'xcode-escape-backslash' into next a928a051 fixup! Xcode: Escape all backslashes in strings (#15328) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a928a051a370fee18cf799c3995161305f6b258e commit a928a051a370fee18cf799c3995161305f6b258e Author: Gregor Jasny AuthorDate: Tue Jan 5 19:18:20 2016 +0100 Commit: Gregor Jasny CommitDate: Tue Jan 5 19:21:22 2016 +0100 fixup! Xcode: Escape all backslashes in strings (#15328) diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 0290643..3449648 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1686,7 +1686,7 @@ cmGlobalXCodeGenerator::AddCommandsToBuildPhase(cmXCodeObject* buildphase, } std::string cdir = this->CurrentLocalGenerator->GetCurrentBinaryDirectory(); - cdir = this->ConvertToRelativeForXCode(cdir.c_str()); + cdir = this->ConvertToRelativeForMake(cdir.c_str()); std::string makecmd = "make -C "; makecmd += cdir; makecmd += " -f "; @@ -2107,10 +2107,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, this->CurrentLocalGenerator ->GenerateAppleInfoPList(gtgt, "$(EXECUTABLE_NAME)", plist.c_str()); - std::string path = - this->ConvertToRelativeForXCode(plist.c_str()); buildSettings->AddAttribute("INFOPLIST_FILE", - this->CreateString(path.c_str())); + this->CreateString(plist)); } else if(this->XcodeVersion >= 22) { @@ -2156,10 +2154,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, this->CurrentLocalGenerator ->GenerateFrameworkInfoPList(gtgt, "$(EXECUTABLE_NAME)", plist.c_str()); - std::string path = - this->ConvertToRelativeForXCode(plist.c_str()); buildSettings->AddAttribute("INFOPLIST_FILE", - this->CreateString(path.c_str())); + this->CreateString(plist)); } else { @@ -2199,10 +2195,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, this->CurrentLocalGenerator ->GenerateAppleInfoPList(gtgt, "$(EXECUTABLE_NAME)", plist.c_str()); - std::string path = - this->ConvertToRelativeForXCode(plist.c_str()); buildSettings->AddAttribute("INFOPLIST_FILE", - this->CreateString(path.c_str())); + this->CreateString(plist)); } } @@ -3880,12 +3874,6 @@ std::string cmGlobalXCodeGenerator::ConvertToRelativeForMake(const char* p) } //---------------------------------------------------------------------------- -std::string cmGlobalXCodeGenerator::ConvertToRelativeForXCode(const char* p) -{ - return cmSystemTools::ConvertToOutputPath(p); -} - -//---------------------------------------------------------------------------- std::string cmGlobalXCodeGenerator::RelativeToSource(const char* p) { // We force conversion because Xcode breakpoints do not work unless diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index c8a39df..b5fd13c 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -99,7 +99,6 @@ private: std::string XCodeEscapePath(const char* p); std::string RelativeToSource(const char* p); std::string RelativeToBinary(const char* p); - std::string ConvertToRelativeForXCode(const char* p); std::string ConvertToRelativeForMake(const char* p); void CreateCustomCommands(cmXCodeObject* buildPhases, cmXCodeObject* sourceBuildPhase, ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalXCodeGenerator.cxx | 20 ++++---------------- Source/cmGlobalXCodeGenerator.h | 1 - 2 files changed, 4 insertions(+), 17 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Wed Jan 6 00:01:10 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Wed, 6 Jan 2016 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-764-gbc908ab Message-ID: <20160106050110.C0540E23B1@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 bc908abd989c9a241b11733cbda6213520aa0dd8 (commit) from a6cbc89179f7fc6e4ac359df48eb1d31abe027cb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bc908abd989c9a241b11733cbda6213520aa0dd8 commit bc908abd989c9a241b11733cbda6213520aa0dd8 Author: Kitware Robot AuthorDate: Wed Jan 6 00:01:07 2016 -0500 Commit: Kitware Robot CommitDate: Wed Jan 6 00:01:07 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 29fdd3f..2b2b997 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 4) -set(CMake_VERSION_PATCH 20160105) +set(CMake_VERSION_PATCH 20160106) #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 Thu Jan 7 00:01:11 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Thu, 7 Jan 2016 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-765-gb021455 Message-ID: <20160107050113.83027E247A@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 b021455e40f921ab3887dec8cde665838b92bd66 (commit) from bc908abd989c9a241b11733cbda6213520aa0dd8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b021455e40f921ab3887dec8cde665838b92bd66 commit b021455e40f921ab3887dec8cde665838b92bd66 Author: Kitware Robot AuthorDate: Thu Jan 7 00:01:05 2016 -0500 Commit: Kitware Robot CommitDate: Thu Jan 7 00:01:05 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 2b2b997..cf87759 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 4) -set(CMake_VERSION_PATCH 20160106) +set(CMake_VERSION_PATCH 20160107) #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 Jan 7 13:15:21 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:15:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1852-gbe48a89 Message-ID: <20160107181521.C7C63E1BD6@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 be48a89e5523595edd9ac2851dce73ef2b102692 (commit) via 0a5ce85f602a70d166c2cdc1f2dad8aab9a85269 (commit) via f2b0bf6e3f45f4f2a474732f29528299825bf7e9 (commit) via b021455e40f921ab3887dec8cde665838b92bd66 (commit) via bc908abd989c9a241b11733cbda6213520aa0dd8 (commit) via a6cbc89179f7fc6e4ac359df48eb1d31abe027cb (commit) via 3d2d17c00c2b20185b7fe0af22ba06bba3730d7c (commit) from acf58fefebf43a7ea17fdc7cbe110c3b04cc63cd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=be48a89e5523595edd9ac2851dce73ef2b102692 commit be48a89e5523595edd9ac2851dce73ef2b102692 Merge: acf58fe 0a5ce85 Author: Brad King AuthorDate: Thu Jan 7 13:15:20 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:15:20 2016 -0500 Merge topic 'update-kwsys' into next 0a5ce85f Merge branch 'upstream-KWSys' into update-kwsys f2b0bf6e KWSys 2016-01-07 (2418443e) b021455e CMake Nightly Date Stamp bc908abd CMake Nightly Date Stamp a6cbc891 CMake Nightly Date Stamp 3d2d17c0 CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0a5ce85f602a70d166c2cdc1f2dad8aab9a85269 commit 0a5ce85f602a70d166c2cdc1f2dad8aab9a85269 Merge: b021455 f2b0bf6 Author: Brad King AuthorDate: Thu Jan 7 13:13:51 2016 -0500 Commit: Brad King CommitDate: Thu Jan 7 13:13:51 2016 -0500 Merge branch 'upstream-KWSys' into update-kwsys * upstream-KWSys: KWSys 2016-01-07 (2418443e) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f2b0bf6e3f45f4f2a474732f29528299825bf7e9 commit f2b0bf6e3f45f4f2a474732f29528299825bf7e9 Author: KWSys Upstream AuthorDate: Thu Jan 7 13:00:32 2016 -0500 Commit: Brad King CommitDate: Thu Jan 7 13:13:51 2016 -0500 KWSys 2016-01-07 (2418443e) Code extracted from: http://public.kitware.com/KWSys.git at commit 2418443ed01e5caeb47908064fd4dad2eff4736f (master). Upstream Shortlog ----------------- Clinton Stimpson (1): 2418443e FStream: Fix reading BOM on single-character files diff --git a/FStream.cxx b/FStream.cxx index 018652c..5a30997 100644 --- a/FStream.cxx +++ b/FStream.cxx @@ -34,6 +34,7 @@ BOM ReadBOM(std::istream& in) in.read(reinterpret_cast(bom), 2); if(!in.good()) { + in.clear(); in.seekg(orig); return BOM_None; } @@ -68,6 +69,7 @@ BOM ReadBOM(std::istream& in) in.seekg(p); return BOM_UTF16LE; } + in.clear(); in.seekg(orig); return BOM_None; } diff --git a/testFStream.cxx b/testFStream.cxx index ac5220a..5e53725 100644 --- a/testFStream.cxx +++ b/testFStream.cxx @@ -41,8 +41,13 @@ static int testNoFile() return 0; } -static kwsys::FStream::BOM expected_bom[5] = +static const int num_test_files = 7; +static const int max_test_file_size = 45; + +static kwsys::FStream::BOM expected_bom[num_test_files] = { + kwsys::FStream::BOM_None, + kwsys::FStream::BOM_None, kwsys::FStream::BOM_UTF8, kwsys::FStream::BOM_UTF16LE, kwsys::FStream::BOM_UTF16BE, @@ -50,8 +55,10 @@ static kwsys::FStream::BOM expected_bom[5] = kwsys::FStream::BOM_UTF32BE }; -static unsigned char expected_bom_data[5][5] = +static unsigned char expected_bom_data[num_test_files][5] = { + {0}, + {0}, {3, 0xEF, 0xBB, 0xBF}, {2, 0xFF, 0xFE}, {2, 0xFE, 0xFF}, @@ -59,8 +66,10 @@ static unsigned char expected_bom_data[5][5] = {4, 0x00, 0x00, 0xFE, 0xFF}, }; -static unsigned char file_data[5][45] = +static unsigned char file_data[num_test_files][max_test_file_size] = { + {1, 'H'}, + {11, 'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'}, {11, 'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'}, {22, 0x48, 0x00, 0x65, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6F, 0x00, 0x20, 0x00, 0x57, 0x00, 0x6F, 0x00, 0x72, 0x00, 0x6C, 0x00, 0x64, 0x00}, @@ -80,7 +89,7 @@ static unsigned char file_data[5][45] = static int testBOM() { // test various encodings in binary mode - for(int i=0; i<5; i++) + for(int i=0; i(expected_bom_data[0]+1), - *expected_bom_data[0]); - out << "Hello World"; - } - - kwsys::ifstream in("bom.txt"); - kwsys::FStream::BOM bom = kwsys::FStream::ReadBOM(in); - if(bom != kwsys::FStream::BOM_UTF8) - { - std::cout << "Unexpected BOM for utf-8 case" << std::endl; - return 1; - } - char data[45]; - in.read(data, file_data[0][0]); - if(!in.good()) - { - std::cout << "Unable to read data for utf-8 case" << std::endl; - return 1; - } - - if(memcmp(data, file_data[0]+1, file_data[0][0]) != 0) - { - std::cout << "Incorrect read data for utf-8 case" << std::endl; - return 1; - } - } - return 0; } ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/kwsys/FStream.cxx | 2 ++ Source/kwsys/testFStream.cxx | 79 ++++++++---------------------------------- 3 files changed, 17 insertions(+), 66 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:24:43 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:24:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1854-g1a1d94b Message-ID: <20160107182443.8C4CDE2276@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 1a1d94b61c82bd507dc4c36ef323043be9454dd2 (commit) via ba39d7e9d04b6a8d3d9bccdf07b69cd2d959a083 (commit) from be48a89e5523595edd9ac2851dce73ef2b102692 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1a1d94b61c82bd507dc4c36ef323043be9454dd2 commit 1a1d94b61c82bd507dc4c36ef323043be9454dd2 Merge: be48a89 ba39d7e Author: Brad King AuthorDate: Thu Jan 7 13:24:42 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:24:42 2016 -0500 Merge topic 'xcode-escape-backslash' into next ba39d7e9 Xcode: Escape all backslashes in strings (#15328) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ba39d7e9d04b6a8d3d9bccdf07b69cd2d959a083 commit ba39d7e9d04b6a8d3d9bccdf07b69cd2d959a083 Author: Gregor Jasny AuthorDate: Sun Dec 27 16:33:46 2015 +0100 Commit: Brad King CommitDate: Thu Jan 7 13:23:24 2016 -0500 Xcode: Escape all backslashes in strings (#15328) Before this change backslashes in strings were escaped during compile flags adds via AppendFlag(). But global flags like OTHER_CPLUSPLUSFLAGS are not added as flags but as plain strings so they were not escaped properly. Now the escaping is performed within cmXCodeObject::PrintString() which ensures that strings are always encoded. diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 475efa8..3449648 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1686,14 +1686,13 @@ cmGlobalXCodeGenerator::AddCommandsToBuildPhase(cmXCodeObject* buildphase, } std::string cdir = this->CurrentLocalGenerator->GetCurrentBinaryDirectory(); - cdir = this->ConvertToRelativeForXCode(cdir.c_str()); + cdir = this->ConvertToRelativeForMake(cdir.c_str()); std::string makecmd = "make -C "; makecmd += cdir; makecmd += " -f "; makecmd += this->ConvertToRelativeForMake( (makefile+"$CONFIGURATION").c_str()); makecmd += " all"; - cmSystemTools::ReplaceString(makecmd, "\\ ", "\\\\ "); buildphase->AddAttribute("shellScript", this->CreateString(makecmd.c_str())); buildphase->AddAttribute("showEnvVarsInLog", @@ -2108,10 +2107,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, this->CurrentLocalGenerator ->GenerateAppleInfoPList(gtgt, "$(EXECUTABLE_NAME)", plist.c_str()); - std::string path = - this->ConvertToRelativeForXCode(plist.c_str()); buildSettings->AddAttribute("INFOPLIST_FILE", - this->CreateString(path.c_str())); + this->CreateString(plist)); } else if(this->XcodeVersion >= 22) { @@ -2157,10 +2154,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, this->CurrentLocalGenerator ->GenerateFrameworkInfoPList(gtgt, "$(EXECUTABLE_NAME)", plist.c_str()); - std::string path = - this->ConvertToRelativeForXCode(plist.c_str()); buildSettings->AddAttribute("INFOPLIST_FILE", - this->CreateString(path.c_str())); + this->CreateString(plist)); } else { @@ -2200,10 +2195,8 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, this->CurrentLocalGenerator ->GenerateAppleInfoPList(gtgt, "$(EXECUTABLE_NAME)", plist.c_str()); - std::string path = - this->ConvertToRelativeForXCode(plist.c_str()); buildSettings->AddAttribute("INFOPLIST_FILE", - this->CreateString(path.c_str())); + this->CreateString(plist)); } } @@ -3881,12 +3874,6 @@ std::string cmGlobalXCodeGenerator::ConvertToRelativeForMake(const char* p) } //---------------------------------------------------------------------------- -std::string cmGlobalXCodeGenerator::ConvertToRelativeForXCode(const char* p) -{ - return cmSystemTools::ConvertToOutputPath(p); -} - -//---------------------------------------------------------------------------- std::string cmGlobalXCodeGenerator::RelativeToSource(const char* p) { // We force conversion because Xcode breakpoints do not work unless @@ -4022,8 +4009,8 @@ void cmGlobalXCodeGenerator::AppendFlag(std::string& flags, // We escape a flag as follows: // - Place each flag in single quotes '' - // - Escape a single quote as \\' - // - Escape a backslash as \\\\ since it itself is an escape + // - Escape a single quote as \' + // - Escape a backslash as \\ since it itself is an escape // Note that in the code below we need one more level of escapes for // C string syntax in this source file. // @@ -4043,16 +4030,16 @@ void cmGlobalXCodeGenerator::AppendFlag(std::string& flags, { if (this->XcodeVersion >= 40) { - flags += "'\\\\''"; + flags += "'\\''"; } else { - flags += "\\\\'"; + flags += "\\'"; } } else if(*c == '\\') { - flags += "\\\\\\\\"; + flags += "\\\\"; } else { diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index c8a39df..b5fd13c 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -99,7 +99,6 @@ private: std::string XCodeEscapePath(const char* p); std::string RelativeToSource(const char* p); std::string RelativeToBinary(const char* p); - std::string ConvertToRelativeForXCode(const char* p); std::string ConvertToRelativeForMake(const char* p); void CreateCustomCommands(cmXCodeObject* buildPhases, cmXCodeObject* sourceBuildPhase, diff --git a/Source/cmXCodeObject.cxx b/Source/cmXCodeObject.cxx index c59c360..5bc34c1 100644 --- a/Source/cmXCodeObject.cxx +++ b/Source/cmXCodeObject.cxx @@ -255,9 +255,9 @@ void cmXCodeObject::PrintString(std::ostream& os,std::string String) for(std::string::const_iterator i = String.begin(); i != String.end(); ++i) { - if(*i == '"') + if(*i == '"' || *i == '\\') { - // Escape double-quotes. + // Escape double-quotes and backslashes. os << '\\'; } os << *i; diff --git a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake index acc0075..395c74b 100644 --- a/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake +++ b/Tests/RunCMake/XcodeProject/RunCMakeTest.cmake @@ -3,6 +3,7 @@ include(RunCMake) run_cmake(XcodeFileType) run_cmake(XcodeAttributeGenex) run_cmake(XcodeAttributeGenexError) +run_cmake(XcodeObjectNeedsEscape) run_cmake(XcodeObjectNeedsQuote) run_cmake(XcodeOptimizationFlags) run_cmake(XcodePreserveNonOptimizationFlags) diff --git a/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape-check.cmake b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape-check.cmake new file mode 100644 index 0000000..c34e3fe --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape-check.cmake @@ -0,0 +1,7 @@ +set(expect "-DKDESRCDIR=\\\\\\\\\\\\\"foo\\\\\\\\\\\\\"") +file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeObjectNeedsEscape.xcodeproj/project.pbxproj actual + REGEX "OTHER_CPLUSPLUSFLAGS = [^;]*;" 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/XcodeObjectNeedsEscape.cmake b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake new file mode 100644 index 0000000..7606a19 --- /dev/null +++ b/Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake @@ -0,0 +1,3 @@ +enable_language(CXX) +string(APPEND CMAKE_CXX_FLAGS " -DKDESRCDIR=\\\"foo\\\"") +add_library(foo STATIC foo.cpp) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:16 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-767-g1c646e4 Message-ID: <20160107182816.C2618E235F@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 1c646e4839418d51e1c9673929d55021f2ed9865 (commit) via d9bf5206d007507fff3e1a89b8f49d7960a209c8 (commit) from b021455e40f921ab3887dec8cde665838b92bd66 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1c646e4839418d51e1c9673929d55021f2ed9865 commit 1c646e4839418d51e1c9673929d55021f2ed9865 Merge: b021455 d9bf520 Author: Brad King AuthorDate: Thu Jan 7 13:28:14 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:14 2016 -0500 Merge topic 'vs-compiler-id-itanium' d9bf5206 CMakeDetermineCompilerId: Fix VS Itanium platform name (#15889) ----------------------------------------------------------------------- Summary of changes: Modules/CMakeDetermineCompilerId.cmake | 3 --- 1 file changed, 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:20 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:20 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-769-g0296089 Message-ID: <20160107182820.3205CE2364@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 0296089291d59568780baea30332b66ef24f1df4 (commit) via 64e26850fc2a98994424a34eada9bec90f384c7e (commit) from 1c646e4839418d51e1c9673929d55021f2ed9865 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0296089291d59568780baea30332b66ef24f1df4 commit 0296089291d59568780baea30332b66ef24f1df4 Merge: 1c646e4 64e2685 Author: Brad King AuthorDate: Thu Jan 7 13:28:18 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:18 2016 -0500 Merge topic 'cray-prgev-cleanup' 64e26850 CrayPrgEnv: Cleanup binaries from implicit compile flag detection ----------------------------------------------------------------------- Summary of changes: Modules/Compiler/CrayPrgEnv.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:22 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-771-g64dd524 Message-ID: <20160107182822.B6874E236F@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 64dd52422b02398d652220514bcf18c2abbbe643 (commit) via 7656662148782b7751c62efd256e644c7295c883 (commit) from 0296089291d59568780baea30332b66ef24f1df4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=64dd52422b02398d652220514bcf18c2abbbe643 commit 64dd52422b02398d652220514bcf18c2abbbe643 Merge: 0296089 7656662 Author: Brad King AuthorDate: Thu Jan 7 13:28:21 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:21 2016 -0500 Merge topic 'install-xdgdata-dir' 76566621 QtDialog: Add option to control XDG file install destination ----------------------------------------------------------------------- Summary of changes: Source/CMakeInstallDestinations.cmake | 5 +++++ Source/QtDialog/CMakeLists.txt | 6 +++--- bootstrap | 7 +++++++ 3 files changed, 15 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:25 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:25 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-773-g5c6cbd3 Message-ID: <20160107182825.2D044E227D@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 5c6cbd390e1d2466df318d2f25e563eb3418bce3 (commit) via d5eb7d8565d01af80e4ab0b08014e52286d43f95 (commit) from 64dd52422b02398d652220514bcf18c2abbbe643 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5c6cbd390e1d2466df318d2f25e563eb3418bce3 commit 5c6cbd390e1d2466df318d2f25e563eb3418bce3 Merge: 64dd524 d5eb7d8 Author: Brad King AuthorDate: Thu Jan 7 13:28:23 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:23 2016 -0500 Merge topic 'fix-GenerateExportHeader-on-borland' d5eb7d85 GenerateExportHeader: Work around buggy std::getline behavior in BCB5. ----------------------------------------------------------------------- Summary of changes: Tests/Module/GenerateExportHeader/exportheader_test.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:27 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:27 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-775-gf7fbe0f Message-ID: <20160107182827.EA356E2366@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 f7fbe0f6811dcd656f8cf772c6d57199c92f0a5e (commit) via ba39d7e9d04b6a8d3d9bccdf07b69cd2d959a083 (commit) from 5c6cbd390e1d2466df318d2f25e563eb3418bce3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f7fbe0f6811dcd656f8cf772c6d57199c92f0a5e commit f7fbe0f6811dcd656f8cf772c6d57199c92f0a5e Merge: 5c6cbd3 ba39d7e Author: Brad King AuthorDate: Thu Jan 7 13:28:26 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:26 2016 -0500 Merge topic 'xcode-escape-backslash' ba39d7e9 Xcode: Escape all backslashes in strings (#15328) ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalXCodeGenerator.cxx | 31 ++++++-------------- Source/cmGlobalXCodeGenerator.h | 1 - Source/cmXCodeObject.cxx | 4 +-- Tests/RunCMake/XcodeProject/RunCMakeTest.cmake | 1 + ...ck.cmake => XcodeObjectNeedsEscape-check.cmake} | 4 +-- .../XcodeProject/XcodeObjectNeedsEscape.cmake | 3 ++ 6 files changed, 17 insertions(+), 27 deletions(-) copy Tests/RunCMake/XcodeProject/{XcodePreserveObjcFlag-check.cmake => XcodeObjectNeedsEscape-check.cmake} (60%) create mode 100644 Tests/RunCMake/XcodeProject/XcodeObjectNeedsEscape.cmake hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:30 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:30 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-780-g070f09f Message-ID: <20160107182830.9C177E2365@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 070f09f91ea2ea903ad503925e4870aaf541d291 (commit) via d8bc26a065f1999698c9b499ca793f9adf740a9d (commit) via dc0ddb9e34f885d32f0fa3bb25072ec77e4a79bb (commit) via 28f98ceef1770fe252c0c3c1e59aca773cc64009 (commit) via 28db2268e8e36521626071a39596b9aaa87defbb (commit) from f7fbe0f6811dcd656f8cf772c6d57199c92f0a5e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=070f09f91ea2ea903ad503925e4870aaf541d291 commit 070f09f91ea2ea903ad503925e4870aaf541d291 Merge: f7fbe0f d8bc26a Author: Brad King AuthorDate: Thu Jan 7 13:28:28 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:28 2016 -0500 Merge topic 'xcode-global-attribute-variant' d8bc26a0 Xcode: Parse variant and genex for CMAKE_XCODE_ATTRIBUTE (#14947) dc0ddb9e Xcode: Store configuration name along with XcodeObject (#14947) 28f98cee Xcode: Make CMAKE_XCODE_ATTRIBUTE calculation last step (#14947) 28db2268 Xcode: Factor out XCODE_ATTRIBUTE_ variant filter (#14947) ----------------------------------------------------------------------- Summary of changes: .../CMAKE_XCODE_ATTRIBUTE_an-attribute.rst | 6 + Source/cmGlobalXCodeGenerator.cxx | 136 ++++++++++++-------- Source/cmGlobalXCodeGenerator.h | 3 + .../XcodeProject/XcodeAttributeGenex-check.cmake | 48 +++++++ .../XcodeProject/XcodeAttributeGenex.cmake | 14 +- 5 files changed, 153 insertions(+), 54 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:28:33 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:28:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-785-g5112da5 Message-ID: <20160107182833.6B909E236A@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 5112da5c2fe9cfa35d741cd0f35d20c787797475 (commit) via fae4779864d1e5a93369b1ac7de9ee7428a28043 (commit) via 083312a8fd39f6ff7a9abc79184e31eb233e8933 (commit) via 240b065faa9bc3b1a8dcf073a94028cd473a8c62 (commit) via a95b47154ef0508cb30c82b79dab75526743498a (commit) from 070f09f91ea2ea903ad503925e4870aaf541d291 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5112da5c2fe9cfa35d741cd0f35d20c787797475 commit 5112da5c2fe9cfa35d741cd0f35d20c787797475 Merge: 070f09f fae4779 Author: Brad King AuthorDate: Thu Jan 7 13:28:31 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:28:31 2016 -0500 Merge topic 'release-windows' fae47798 Utilities/Release: Configure Windows binary to support Windows XP 083312a8 Utilities/Release: Switch to .msi builder for Windows binary 240b065f Utilities/Release: Optionally load environment on remote build server a95b4715 Utilities/Release: Add optional remote launcher to ssh calls ----------------------------------------------------------------------- Summary of changes: Help/release/dev/release-windows.rst | 7 +++++++ Tests/CMakeLists.txt | 2 +- Utilities/Release/create-cmake-release.cmake | 2 +- ...sh2win64_release.cmake => dash3win7_release.cmake} | 17 +++++++++++------ Utilities/Release/release_cmake.cmake | 11 +++++++---- Utilities/Release/release_cmake.sh.in | 1 + 6 files changed, 28 insertions(+), 12 deletions(-) create mode 100644 Help/release/dev/release-windows.rst rename Utilities/Release/{dash2win64_release.cmake => dash3win7_release.cmake} (61%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:31:20 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:31:20 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1862-g633b34d Message-ID: <20160107183120.C85A2E23EF@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 633b34d968b9513fb3106642f88a63f346503dab (commit) via 5112da5c2fe9cfa35d741cd0f35d20c787797475 (commit) via 070f09f91ea2ea903ad503925e4870aaf541d291 (commit) via f7fbe0f6811dcd656f8cf772c6d57199c92f0a5e (commit) via 5c6cbd390e1d2466df318d2f25e563eb3418bce3 (commit) via 64dd52422b02398d652220514bcf18c2abbbe643 (commit) via 0296089291d59568780baea30332b66ef24f1df4 (commit) via 1c646e4839418d51e1c9673929d55021f2ed9865 (commit) from 1a1d94b61c82bd507dc4c36ef323043be9454dd2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=633b34d968b9513fb3106642f88a63f346503dab commit 633b34d968b9513fb3106642f88a63f346503dab Merge: 1a1d94b 5112da5 Author: Brad King AuthorDate: Thu Jan 7 13:31:10 2016 -0500 Commit: Brad King CommitDate: Thu Jan 7 13:31:10 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:44:36 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:44:36 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1864-gda8f980 Message-ID: <20160107184436.72F36E1BF5@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 da8f980ca6488a3695bd813dec234cdb8b6d7da8 (commit) via 560346831628c1a887923e6bf866d91727e9c1ca (commit) from 633b34d968b9513fb3106642f88a63f346503dab (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da8f980ca6488a3695bd813dec234cdb8b6d7da8 commit da8f980ca6488a3695bd813dec234cdb8b6d7da8 Merge: 633b34d 5603468 Author: Brad King AuthorDate: Thu Jan 7 13:44:35 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:44:35 2016 -0500 Merge topic 'suppress-Wshadow-single' into next 56034683 fixup! CTestCustom: Suppress -Wshadow warning about Solaris 'single' typedef https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=560346831628c1a887923e6bf866d91727e9c1ca commit 560346831628c1a887923e6bf866d91727e9c1ca Author: Brad King AuthorDate: Thu Jan 7 13:44:04 2016 -0500 Commit: Brad King CommitDate: Thu Jan 7 13:44:04 2016 -0500 fixup! CTestCustom: Suppress -Wshadow warning about Solaris 'single' typedef diff --git a/CTestCustom.cmake.in b/CTestCustom.cmake.in index 634d22a..abef692 100644 --- a/CTestCustom.cmake.in +++ b/CTestCustom.cmake.in @@ -22,7 +22,7 @@ list(APPEND CTEST_CUSTOM_WARNING_EXCEPTION "Utilities.cmexpat." "Utilities.cmlibarchive" "warning: declaration of .single. shadows a global declaration" - "/usr/include.*warning.*shadowed declaration is here" + "/usr/include.*(warning|note).*shadowed declaration is here" "/usr/bin/ld.*warning.*-..*directory.name.*bin.*does not exist" "Redeclaration of .send..... with a different storage class specifier" "is not used for resolving any symbol" ----------------------------------------------------------------------- Summary of changes: CTestCustom.cmake.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 13:44:56 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 13:44:56 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1866-g4aae449 Message-ID: <20160107184456.6A689E1D5B@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 4aae44966324856ff60424e4629681c1840794f7 (commit) via b947fc27d5e8c54b2e4cd58c6c9b22b34a843039 (commit) from da8f980ca6488a3695bd813dec234cdb8b6d7da8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4aae44966324856ff60424e4629681c1840794f7 commit 4aae44966324856ff60424e4629681c1840794f7 Merge: da8f980 b947fc2 Author: Brad King AuthorDate: Thu Jan 7 13:44:55 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 13:44:55 2016 -0500 Merge topic 'suppress-Wshadow-single' into next b947fc27 CTestCustom: Suppress -Wshadow warning about Solaris 'single' typedef https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b947fc27d5e8c54b2e4cd58c6c9b22b34a843039 commit b947fc27d5e8c54b2e4cd58c6c9b22b34a843039 Author: Brad King AuthorDate: Mon Dec 21 09:48:35 2015 -0500 Commit: Brad King CommitDate: Thu Jan 7 13:44:46 2016 -0500 CTestCustom: Suppress -Wshadow warning about Solaris 'single' typedef On Solaris the system `/usr/include/floatingpoint.h` header contains typedef float single; so the GNU compiler warns that uses of the name `single` shadow it. Just suppress the warning because our uses of this name would become less readable with a different name. diff --git a/CTestCustom.cmake.in b/CTestCustom.cmake.in index db64559..abef692 100644 --- a/CTestCustom.cmake.in +++ b/CTestCustom.cmake.in @@ -21,7 +21,8 @@ list(APPEND CTEST_CUSTOM_WARNING_EXCEPTION "Utilities.cmcurl" "Utilities.cmexpat." "Utilities.cmlibarchive" - "/usr/include.*warning.*shadowed declaration is here" + "warning: declaration of .single. shadows a global declaration" + "/usr/include.*(warning|note).*shadowed declaration is here" "/usr/bin/ld.*warning.*-..*directory.name.*bin.*does not exist" "Redeclaration of .send..... with a different storage class specifier" "is not used for resolving any symbol" ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 7 16:12:30 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 7 Jan 2016 16:12:30 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1868-g9469108 Message-ID: <20160107211230.5D13AE16D4@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 946910862468bef655e28378fc0bf74caa70dc7a (commit) via bbb3c4ffc18dcadc774b7fe4b2ceca1557ddb253 (commit) from 4aae44966324856ff60424e4629681c1840794f7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=946910862468bef655e28378fc0bf74caa70dc7a commit 946910862468bef655e28378fc0bf74caa70dc7a Merge: 4aae449 bbb3c4f Author: Brad King AuthorDate: Thu Jan 7 16:12:29 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 7 16:12:29 2016 -0500 Merge topic 'cpack-dmg-license-fixes' into next bbb3c4ff CPack/DragNDrop: Fix handling of certain license file content (#15899) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bbb3c4ffc18dcadc774b7fe4b2ceca1557ddb253 commit bbb3c4ffc18dcadc774b7fe4b2ceca1557ddb253 Author: Andrey Mishchenko AuthorDate: Sat Jan 2 16:11:00 2016 -0500 Commit: Brad King CommitDate: Thu Jan 7 15:24:42 2016 -0500 CPack/DragNDrop: Fix handling of certain license file content (#15899) There were issues in the special-character-escaping and line-wrapping code which caused DragNDrop packaging to fail mysteriously at a later step with parsing errors in the `sla.r` file generated by the following code. diff --git a/Source/CPack/cmCPackDragNDropGenerator.cxx b/Source/CPack/cmCPackDragNDropGenerator.cxx index 1a694ea..7b94ca3 100644 --- a/Source/CPack/cmCPackDragNDropGenerator.cxx +++ b/Source/CPack/cmCPackDragNDropGenerator.cxx @@ -693,27 +693,49 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& src_dir, ofs << std::dec << std::nouppercase << std::setfill(' '); } + bool have_write_license_error = false; + std::string error; + if(oldStyle) { - WriteLicense(ofs, 0, "", cpack_license_file); + if(!this->WriteLicense(ofs, 0, "", cpack_license_file, &error)) + { + have_write_license_error = true; + } } else { - for(size_t i = 0; i < languages.size(); ++i) + for(size_t i = 0; i < languages.size() && !have_write_license_error; ++i) { if(singleLicense) { - WriteLicense(ofs, i + 5000, languages[i], cpack_license_file); + if(!this->WriteLicense(ofs, i + 5000, languages[i], + cpack_license_file, &error)) + { + have_write_license_error = true; + } } else { - WriteLicense(ofs, i + 5000, languages[i]); + if(!this->WriteLicense(ofs, i + 5000, languages[i], "", &error)) + { + have_write_license_error = true; + } } } } ofs.Close(); + if(have_write_license_error) + { + cmCPackLogger(cmCPackLog::LOG_ERROR, + "Error writing license file to SLA." << std::endl + << error + << std::endl); + return 0; + } + // convert to UDCO std::string temp_udco = this->GetOption("CPACK_TOPLEVEL_DIRECTORY"); temp_udco += "/temp-udco.dmg"; @@ -724,7 +746,6 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& src_dir, udco_image_command << " -format UDCO"; udco_image_command << " -ov -o \"" << temp_udco << "\""; - std::string error; if(!this->RunCommand(udco_image_command, &error)) { cmCPackLogger(cmCPackLog::LOG_ERROR, @@ -855,9 +876,10 @@ cmCPackDragNDropGenerator::GetComponentInstallDirNameSuffix( return GetComponentPackageFileName(package_file_name, componentName, false); } -void +bool cmCPackDragNDropGenerator::WriteLicense(cmGeneratedFileStream& outputStream, - int licenseNumber, std::string licenseLanguage, std::string licenseFile) + int licenseNumber, std::string licenseLanguage, std::string licenseFile, + std::string *error) { if(!licenseFile.empty() && !singleLicense) { @@ -881,9 +903,12 @@ cmCPackDragNDropGenerator::WriteLicense(cmGeneratedFileStream& outputStream, std::getline(license_ifs, line); if(!line.empty()) { - EscapeQuotes(line); + EscapeQuotesAndBackslashes(line); std::vector lines; - BreakLongLine(line, lines); + if(!this->BreakLongLine(line, lines, error)) + { + return false; + } for(size_t i = 0; i < lines.size(); ++i) { outputStream << " \"" << lines[i] << "\"\n"; @@ -920,9 +945,12 @@ cmCPackDragNDropGenerator::WriteLicense(cmGeneratedFileStream& outputStream, std::getline(menu_ifs, line); if(!line.empty()) { - EscapeQuotes(line); + EscapeQuotesAndBackslashes(line); std::vector lines; - BreakLongLine(line, lines); + if(!this->BreakLongLine(line, lines, error)) + { + return false; + } for(size_t i = 0; i < lines.size(); ++i) { std::string comma; @@ -949,31 +977,53 @@ cmCPackDragNDropGenerator::WriteLicense(cmGeneratedFileStream& outputStream, outputStream << "};\n"; outputStream << "\n"; } + + return true; } -void +bool cmCPackDragNDropGenerator::BreakLongLine(const std::string& line, - std::vector& lines) + std::vector& lines, std::string *error) { const size_t max_line_length = 512; for(size_t i = 0; i < line.size(); i += max_line_length) { - int line_length = max_line_length; - if(i + max_line_length > line.size()) + size_t line_length = max_line_length; + if(i + line_length > line.size()) { line_length = line.size() - i; } + else while(line_length > 0 && line[i + line_length - 1] != ' ') + { + line_length = line_length - 1; + } + + if(line_length == 0) + { + *error = "Please make sure there are no words " + "(or character sequences not broken up by spaces or newlines) " + "in your license file which are more than 512 characters long."; + return false; + } lines.push_back(line.substr(i, line_length)); } + return true; } void -cmCPackDragNDropGenerator::EscapeQuotes(std::string& line) +cmCPackDragNDropGenerator::EscapeQuotesAndBackslashes(std::string& line) { - std::string::size_type pos = line.find('\"'); - while(pos != std::string::npos) + std::string::size_type backslash_pos = line.find('\\'); + while(backslash_pos != std::string::npos) + { + line.replace(backslash_pos, 1, "\\\\"); + backslash_pos = line.find('\\', backslash_pos + 2); + } + + std::string::size_type quote_pos = line.find('\"'); + while(quote_pos != std::string::npos) { - line.replace(pos, 1, "\\\""); - pos = line.find('\"', pos + 2); + line.replace(quote_pos, 1, "\\\""); + quote_pos = line.find('\"', quote_pos + 2); } } diff --git a/Source/CPack/cmCPackDragNDropGenerator.h b/Source/CPack/cmCPackDragNDropGenerator.h index b5e5ffe..604cdf5 100644 --- a/Source/CPack/cmCPackDragNDropGenerator.h +++ b/Source/CPack/cmCPackDragNDropGenerator.h @@ -50,11 +50,13 @@ private: std::string slaDirectory; bool singleLicense; - void WriteLicense(cmGeneratedFileStream& outputStream, int licenseNumber, - std::string licenseLanguage, std::string licenseFile = ""); - void BreakLongLine(const std::string& line, - std::vector& lines); - void EscapeQuotes(std::string& line); + bool WriteLicense(cmGeneratedFileStream& outputStream, int licenseNumber, + std::string licenseLanguage, std::string licenseFile, + std::string *error); + bool BreakLongLine(const std::string& line, + std::vector& lines, + std::string *error); + void EscapeQuotesAndBackslashes(std::string& line); }; #endif ----------------------------------------------------------------------- Summary of changes: Source/CPack/cmCPackDragNDropGenerator.cxx | 90 +++++++++++++++++++++------- Source/CPack/cmCPackDragNDropGenerator.h | 12 ++-- 2 files changed, 77 insertions(+), 25 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Fri Jan 8 00:01:15 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Fri, 8 Jan 2016 00:01:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-786-g963d99d Message-ID: <20160108050116.06252E2613@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 963d99de1477f1a117dca232c74b4dd2e3f7949a (commit) from 5112da5c2fe9cfa35d741cd0f35d20c787797475 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=963d99de1477f1a117dca232c74b4dd2e3f7949a commit 963d99de1477f1a117dca232c74b4dd2e3f7949a Author: Kitware Robot AuthorDate: Fri Jan 8 00:01:08 2016 -0500 Commit: Kitware Robot CommitDate: Fri Jan 8 00:01:08 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index cf87759..bf3b849 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 4) -set(CMake_VERSION_PATCH 20160107) +set(CMake_VERSION_PATCH 20160108) #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 Jan 8 10:07:49 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 10:07:49 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1870-ge920fa6 Message-ID: <20160108150750.01EB0E2691@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 e920fa671ac31373a04c2613bd80ec147b3bd3e7 (commit) via c173e37fa32b9d212cc6305f5e6dc881ba34e140 (commit) from 946910862468bef655e28378fc0bf74caa70dc7a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e920fa671ac31373a04c2613bd80ec147b3bd3e7 commit e920fa671ac31373a04c2613bd80ec147b3bd3e7 Merge: 9469108 c173e37 Author: Brad King AuthorDate: Fri Jan 8 10:07:48 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 10:07:48 2016 -0500 Merge topic 'vs-win10-sdk' into next c173e37f VS: Do not select a partial Windows 10 SDK folder (#15831) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c173e37fa32b9d212cc6305f5e6dc881ba34e140 commit c173e37fa32b9d212cc6305f5e6dc881ba34e140 Author: Brad King AuthorDate: Thu Jan 7 14:54:32 2016 -0500 Commit: Brad King CommitDate: Fri Jan 8 10:05:40 2016 -0500 VS: Do not select a partial Windows 10 SDK folder (#15831) Skip SDK candidate folders that do not contain as they are not full SDKs. diff --git a/Source/cmGlobalVisualStudio14Generator.cxx b/Source/cmGlobalVisualStudio14Generator.cxx index 41825fb..803b500 100644 --- a/Source/cmGlobalVisualStudio14Generator.cxx +++ b/Source/cmGlobalVisualStudio14Generator.cxx @@ -229,6 +229,16 @@ cmGlobalVisualStudio14Generator::IsWindowsStoreToolsetInstalled() const win10SDK, cmSystemTools::KeyWOW64_32); } +#if defined(_WIN32) && !defined(__CYGWIN__) +struct NoWindowsH +{ + bool operator()(std::string const& p) + { + return !cmSystemTools::FileExists(p + "/um/windows.h", true); + } +}; +#endif + //---------------------------------------------------------------------------- std::string cmGlobalVisualStudio14Generator::GetWindows10SDKVersion() { @@ -252,6 +262,12 @@ std::string cmGlobalVisualStudio14Generator::GetWindows10SDKVersion() std::string path = win10Root + "Include/*"; // Grab the paths of the different SDKs that are installed cmSystemTools::GlobDirs(path, sdks); + + // Skip SDKs that do not contain because that indicates that + // only the UCRT MSIs were installed for them. + sdks.erase(std::remove_if(sdks.begin(), sdks.end(), NoWindowsH()), + sdks.end()); + if (!sdks.empty()) { // Only use the filename, which will be the SDK version. ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalVisualStudio14Generator.cxx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 8 10:43:29 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 10:43:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-789-g4226c83 Message-ID: <20160108154329.F3928E1CD1@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 4226c83fa23bf80b6fd3086fb49cf6d91b1a80fe (commit) via 0a5ce85f602a70d166c2cdc1f2dad8aab9a85269 (commit) via f2b0bf6e3f45f4f2a474732f29528299825bf7e9 (commit) from 963d99de1477f1a117dca232c74b4dd2e3f7949a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4226c83fa23bf80b6fd3086fb49cf6d91b1a80fe commit 4226c83fa23bf80b6fd3086fb49cf6d91b1a80fe Merge: 963d99d 0a5ce85 Author: Brad King AuthorDate: Fri Jan 8 10:43:28 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 10:43:28 2016 -0500 Merge topic 'update-kwsys' 0a5ce85f Merge branch 'upstream-KWSys' into update-kwsys f2b0bf6e KWSys 2016-01-07 (2418443e) ----------------------------------------------------------------------- Summary of changes: Source/kwsys/FStream.cxx | 2 ++ Source/kwsys/testFStream.cxx | 79 ++++++++---------------------------------- 2 files changed, 16 insertions(+), 65 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 8 10:43:32 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 10:43:32 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-791-gbbf962b Message-ID: <20160108154336.32DE9E1D4D@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 bbf962bf8aaeda57a899ea5d35769c4eccd46096 (commit) via b947fc27d5e8c54b2e4cd58c6c9b22b34a843039 (commit) from 4226c83fa23bf80b6fd3086fb49cf6d91b1a80fe (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bbf962bf8aaeda57a899ea5d35769c4eccd46096 commit bbf962bf8aaeda57a899ea5d35769c4eccd46096 Merge: 4226c83 b947fc2 Author: Brad King AuthorDate: Fri Jan 8 10:43:30 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 10:43:30 2016 -0500 Merge topic 'suppress-Wshadow-single' b947fc27 CTestCustom: Suppress -Wshadow warning about Solaris 'single' typedef ----------------------------------------------------------------------- Summary of changes: CTestCustom.cmake.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 8 10:43:39 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 10:43:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-793-gb74560c Message-ID: <20160108154339.65A6FE1D37@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 b74560c32a6fc9df3f5e09b8f29200f4cd9aaeb2 (commit) via bbb3c4ffc18dcadc774b7fe4b2ceca1557ddb253 (commit) from bbf962bf8aaeda57a899ea5d35769c4eccd46096 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b74560c32a6fc9df3f5e09b8f29200f4cd9aaeb2 commit b74560c32a6fc9df3f5e09b8f29200f4cd9aaeb2 Merge: bbf962b bbb3c4f Author: Brad King AuthorDate: Fri Jan 8 10:43:37 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 10:43:37 2016 -0500 Merge topic 'cpack-dmg-license-fixes' bbb3c4ff CPack/DragNDrop: Fix handling of certain license file content (#15899) ----------------------------------------------------------------------- Summary of changes: Source/CPack/cmCPackDragNDropGenerator.cxx | 90 +++++++++++++++++++++------- Source/CPack/cmCPackDragNDropGenerator.h | 12 ++-- 2 files changed, 77 insertions(+), 25 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 8 10:43:54 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 10:43:54 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1875-gf97ef25 Message-ID: <20160108154354.5F56CE1D7F@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 f97ef254862a4c5d37e370b6390cbbe97cd89946 (commit) via b74560c32a6fc9df3f5e09b8f29200f4cd9aaeb2 (commit) via bbf962bf8aaeda57a899ea5d35769c4eccd46096 (commit) via 4226c83fa23bf80b6fd3086fb49cf6d91b1a80fe (commit) via 963d99de1477f1a117dca232c74b4dd2e3f7949a (commit) from e920fa671ac31373a04c2613bd80ec147b3bd3e7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f97ef254862a4c5d37e370b6390cbbe97cd89946 commit f97ef254862a4c5d37e370b6390cbbe97cd89946 Merge: e920fa6 b74560c Author: Brad King AuthorDate: Fri Jan 8 10:43:48 2016 -0500 Commit: Brad King CommitDate: Fri Jan 8 10:43:48 2016 -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 chuck.atkins at kitware.com Fri Jan 8 11:43:44 2016 From: chuck.atkins at kitware.com (Chuck Atkins) Date: Fri, 8 Jan 2016 11:43:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1877-g746af29 Message-ID: <20160108164344.E56A2E1E8D@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 746af298c623980ebc96eb203adeffef4853628c (commit) via 6dcfc1f49c6afa6cf6a3cd4b7c90e59dbfc18fb0 (commit) from f97ef254862a4c5d37e370b6390cbbe97cd89946 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=746af298c623980ebc96eb203adeffef4853628c commit 746af298c623980ebc96eb203adeffef4853628c Merge: f97ef25 6dcfc1f Author: Chuck Atkins AuthorDate: Fri Jan 8 11:43:43 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 11:43:43 2016 -0500 Merge topic 'allow-variables-for-find-defaults' into next 6dcfc1f4 find_*: Add variables to enable NO_XXX_PATH defaults to find commands https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6dcfc1f49c6afa6cf6a3cd4b7c90e59dbfc18fb0 commit 6dcfc1f49c6afa6cf6a3cd4b7c90e59dbfc18fb0 Author: Chuck Atkins AuthorDate: Tue Jan 5 11:46:49 2016 -0500 Commit: Chuck Atkins CommitDate: Tue Jan 5 11:46:49 2016 -0500 find_*: Add variables to enable NO_XXX_PATH defaults to find commands diff --git a/Help/command/FIND_XXX.txt b/Help/command/FIND_XXX.txt index bd4d295..7078c8c 100644 --- a/Help/command/FIND_XXX.txt +++ b/Help/command/FIND_XXX.txt @@ -56,8 +56,9 @@ Options include: ``DOC`` Specify the documentation string for the ```` cache entry. -If ``NO_DEFAULT_PATH`` is specified, then no additional paths are -added to the search. +If ``NO_DEFAULT_PATH`` is specified or if +:variable:`CMAKE_FIND_NO_DEFAULT_PATH` is set and contains ``ALL`` or +|CMAKE_PATH_NAME|, then no additional paths are added to the search. If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: .. |CMAKE_PREFIX_PATH_XXX_SUBDIR| replace:: @@ -73,7 +74,9 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: 1. Search paths specified in cmake-specific cache variables. These are intended to be used on the command line with a ``-DVAR=value``. - This can be skipped if ``NO_CMAKE_PATH`` is passed. + This can be skipped if ``NO_CMAKE_PATH`` is passed or if + :variable:`CMAKE_FIND_NO_CMAKE_PATH` is set and contains ``ALL`` or + |CMAKE_PATH_NAME|. * |CMAKE_PREFIX_PATH_XXX| * |CMAKE_XXX_PATH| @@ -81,7 +84,9 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: 2. Search paths specified in cmake-specific environment variables. These are intended to be set in the user's shell configuration. - This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed. + This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or if + :variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH` is set and contains + ``ALL`` or |CMAKE_PATH_NAME|. * |CMAKE_PREFIX_PATH_XXX| * |CMAKE_XXX_PATH| @@ -93,13 +98,16 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: Hard-coded guesses should be specified with the ``PATHS`` option. 4. Search the standard system environment variables. - This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is an argument. + This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is an argument or if + :variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH` is set and contains + ``ALL`` or |CMAKE_PATH_NAME| * |SYSTEM_ENVIRONMENT_PATH_XXX| 5. Search cmake variables defined in the Platform files for the current system. This can be skipped if ``NO_CMAKE_SYSTEM_PATH`` - is passed. + is passed or if :variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH` is set and + contains ``ALL`` or |CMAKE_PATH_NAME|. * |CMAKE_SYSTEM_PREFIX_PATH_XXX| * |CMAKE_SYSTEM_XXX_PATH| diff --git a/Help/command/find_file.rst b/Help/command/find_file.rst index bf7a919..45fc84e 100644 --- a/Help/command/find_file.rst +++ b/Help/command/find_file.rst @@ -30,4 +30,5 @@ find_file .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_INCLUDE` +.. |CMAKE_PATH_NAME| replace:: ``INCLUDE`` .. include:: FIND_XXX.txt diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst index 5d07574..de7f98a 100644 --- a/Help/command/find_library.rst +++ b/Help/command/find_library.rst @@ -30,6 +30,7 @@ find_library .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_LIBRARY` +.. |CMAKE_PATH_NAME| replace:: ``LIBRARY`` .. include:: FIND_XXX.txt When more than one value is given to the ``NAMES`` option this command by diff --git a/Help/command/find_package.rst b/Help/command/find_package.rst index 58dff9d..6d72879 100644 --- a/Help/command/find_package.rst +++ b/Help/command/find_package.rst @@ -238,7 +238,9 @@ enabled. 1. Search paths specified in cmake-specific cache variables. These are intended to be used on the command line with a ``-DVAR=value``. - This can be skipped if ``NO_CMAKE_PATH`` is passed:: + This can be skipped if ``NO_CMAKE_PATH`` is passed or if + :variable:`CMAKE_FIND_NO_CMAKE_PATH` is set and contains ``ALL`` or + ``PACKAGE``:: CMAKE_PREFIX_PATH CMAKE_FRAMEWORK_PATH @@ -246,7 +248,9 @@ enabled. 2. Search paths specified in cmake-specific environment variables. These are intended to be set in the user's shell configuration. - This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed:: + This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or + :variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH` is set and contains + ``ALL`` or ``PACKAGE``:: _DIR CMAKE_PREFIX_PATH @@ -259,9 +263,10 @@ enabled. be specified with the ``PATHS`` option. 4. Search the standard system environment variables. This can be - skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed. Path entries - ending in ``/bin`` or ``/sbin`` are automatically converted to their - parent directories:: + skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed or + :variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH` is set and contains + ``ALL`` or ``PACKAGE``. Path entries ending in ``/bin`` or ``/sbin`` + are automatically converted to their parent directories:: PATH diff --git a/Help/command/find_path.rst b/Help/command/find_path.rst index 4403cb5..748c754 100644 --- a/Help/command/find_path.rst +++ b/Help/command/find_path.rst @@ -30,6 +30,7 @@ find_path .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_INCLUDE` +.. |CMAKE_PATH_NAME| replace:: ``INCLUDE`` .. include:: FIND_XXX.txt When searching for frameworks, if the file is specified as ``A/b.h``, then diff --git a/Help/command/find_program.rst b/Help/command/find_program.rst index d3430c0..d6c954a 100644 --- a/Help/command/find_program.rst +++ b/Help/command/find_program.rst @@ -25,6 +25,7 @@ find_program .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_PROGRAM` +.. |CMAKE_PATH_NAME| replace:: ``PROGRAM`` .. include:: FIND_XXX.txt When more than one value is given to the ``NAMES`` option this command by diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index 3f49572..ac8701b 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -124,7 +124,12 @@ Variables that Change Behavior /variable/CMAKE_FIND_FRAMEWORK /variable/CMAKE_FIND_LIBRARY_PREFIXES /variable/CMAKE_FIND_LIBRARY_SUFFIXES + /variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH + /variable/CMAKE_FIND_NO_CMAKE_PATH + /variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH + /variable/CMAKE_FIND_NO_DEFAULT_PATH /variable/CMAKE_FIND_NO_INSTALL_PREFIX + /variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH /variable/CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY /variable/CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY /variable/CMAKE_FIND_PACKAGE_WARN_NO_MODULE diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst new file mode 100644 index 0000000..ee761aa --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH +------------------------------------ + +.. |NO_XXX_PATH| replace:: NO_CMAKE_ENVIRONMENT_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst new file mode 100644 index 0000000..0ac6666 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_CMAKE_PATH +------------------------ + +.. |NO_XXX_PATH| replace:: NO_CMAKE_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst new file mode 100644 index 0000000..827ef79 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_CMAKE_SYSTEM_PATH +------------------------------- + +.. |NO_XXX_PATH| replace:: NO_CMAKE_SYSTEM_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst b/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst new file mode 100644 index 0000000..37e8369 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_DEFAULT_PATH +-------------------------- + +.. |NO_XXX_PATH| replace:: NO_DEFAULT_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst b/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst new file mode 100644 index 0000000..977083e --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH +------------------------------------- + +.. |NO_XXX_PATH| replace:: NO_SYSTEM_ENVIRONMENT_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt b/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt new file mode 100644 index 0000000..ca9ad26 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt @@ -0,0 +1,21 @@ +This variable enables the |NO_XXX_PATH| option to be on by default for the +various find commands. It's value is a list with valid entries being: + +``INCLUDE`` + Enable the option for the :command:`find_file` and :command:`find_path` + commands. + +``LIBRARY`` + Enable the option for the :command:`find_library` command. + +``PACKAGE`` + Enable the option for the :command:`find_package` command. + +``PROGRAM`` + Enable the option for the :command:`find_program` command. + +``ALL`` + Enable the option for all find commands. + +The list can contain any combination of valid entries in any order to affect +the specified find command. diff --git a/Source/cmFindCommon.cxx b/Source/cmFindCommon.cxx index 913985f..ee94869 100644 --- a/Source/cmFindCommon.cxx +++ b/Source/cmFindCommon.cxx @@ -57,6 +57,25 @@ cmFindCommon::~cmFindCommon() } //---------------------------------------------------------------------------- +inline bool ListContains2Helper(const cmMakefile* make, + const std::string& cmakeVar, const std::string& test1, + const std::string& test2) +{ + std::vector v; + cmSystemTools::ExpandListArgument( + make->GetSafeDefinition(cmakeVar), v, true); + for(std::vector::const_iterator i = v.begin(); + i != v.end(); ++i) + { + if(*i == test1 || *i == test2) + { + return true; + } + } + return false; +} + +//---------------------------------------------------------------------------- void cmFindCommon::InitializeSearchPathGroups() { std::vector* labels; @@ -88,6 +107,18 @@ void cmFindCommon::InitializeSearchPathGroups() cmSearchPath(this))); this->LabeledPaths.insert(std::make_pair(PathLabel::Guess, cmSearchPath(this))); + + // Initialize global path options + this->NoDefaultPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_DEFAULT_PATH", "ALL", this->CMakePathName); + this->NoCMakeEnvironmentPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH", "ALL", this->CMakePathName); + this->NoCMakePath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_PATH", "ALL", this->CMakePathName); + this->NoSystemEnvironmentPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH", "ALL", this->CMakePathName); + this->NoCMakeSystemPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_SYSTEM_PATH", "ALL", this->CMakePathName); } //---------------------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: Help/command/FIND_XXX.txt | 20 +++++++++---- Help/command/find_file.rst | 1 + Help/command/find_library.rst | 1 + Help/command/find_package.rst | 15 ++++++---- Help/command/find_path.rst | 1 + Help/command/find_program.rst | 1 + Help/manual/cmake-variables.7.rst | 5 ++++ .../CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst | 10 +++++++ Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst | 10 +++++++ Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst | 10 +++++++ Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst | 10 +++++++ .../CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst | 10 +++++++ Help/variable/CMAKE_FIND_NO_XXX_PATH.txt | 21 +++++++++++++ Source/cmFindCommon.cxx | 31 ++++++++++++++++++++ 14 files changed, 135 insertions(+), 11 deletions(-) create mode 100644 Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst create mode 100644 Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst create mode 100644 Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst create mode 100644 Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst create mode 100644 Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst create mode 100644 Help/variable/CMAKE_FIND_NO_XXX_PATH.txt hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 8 11:52:21 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 11:52:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1879-gd24f98f Message-ID: <20160108165221.029FCE2498@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 d24f98fc29d6ce0a01218d30f89982b153c3e141 (commit) via 2b48f63ce38e49a5c3ee84aa3763da00c8af08f3 (commit) from 746af298c623980ebc96eb203adeffef4853628c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d24f98fc29d6ce0a01218d30f89982b153c3e141 commit d24f98fc29d6ce0a01218d30f89982b153c3e141 Merge: 746af29 2b48f63 Author: Brad King AuthorDate: Fri Jan 8 11:52:20 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 11:52:20 2016 -0500 Merge topic 'FindBLAS-intel-64lp' into next 2b48f63c FindBLAS: Fix pattern matching on BLAS vendor name https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2b48f63ce38e49a5c3ee84aa3763da00c8af08f3 commit 2b48f63ce38e49a5c3ee84aa3763da00c8af08f3 Author: Brad King AuthorDate: Fri Jan 8 11:47:39 2016 -0500 Commit: Brad King CommitDate: Fri Jan 8 11:48:02 2016 -0500 FindBLAS: Fix pattern matching on BLAS vendor name The if(STREQUAL) expressions do not support globbing expressions. Use regular experssions with MATCHES instead. Reported-by: Yahui Wang diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index 6a583d9..416b666 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -494,18 +494,18 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_MAIN "mkl_blas95${BLAS_mkl_DLL_SUFFIX} mkl_intel_c${BLAS_mkl_DLL_SUFFIX}") endif() - if (BLA_VENDOR STREQUAL "Intel10_64lp*" OR BLA_VENDOR STREQUAL "All") + if (BLA_VENDOR MATCHES "^Intel10_64lp" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_MAIN "mkl_blas95_lp64${BLAS_mkl_DLL_SUFFIX} mkl_intel_lp64${BLAS_mkl_DLL_SUFFIX}") endif () # Add threading/sequential libs set(BLAS_SEARCH_LIBS_WIN_THREAD "") - if (BLA_VENDOR STREQUAL "*_seq" OR BLA_VENDOR STREQUAL "All") + if (BLA_VENDOR MATCHES "_seq$" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_THREAD "mkl_sequential${BLAS_mkl_DLL_SUFFIX}") endif() - if (NOT BLA_VENDOR STREQUAL "*_seq" OR BLA_VENDOR STREQUAL "All") + if (NOT BLA_VENDOR MATCHES "_seq$" OR BLA_VENDOR STREQUAL "All") # old version list(APPEND BLAS_SEARCH_LIBS_WIN_THREAD "libguide40 mkl_intel_thread${BLAS_mkl_DLL_SUFFIX}") @@ -561,14 +561,14 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_MAIN "mkl_intel_c${BLAS_mkl_DLL_SUFFIX}") endif() - if (BLA_VENDOR STREQUAL "Intel10_64lp*" OR BLA_VENDOR STREQUAL "All") + if (BLA_VENDOR MATCHES "^Intel10_64lp" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_MAIN "mkl_intel_lp64${BLAS_mkl_DLL_SUFFIX}") endif () # Add threading/sequential libs set(BLAS_SEARCH_LIBS_WIN_THREAD "") - if (NOT BLA_VENDOR STREQUAL "*_seq" OR BLA_VENDOR STREQUAL "All") + if (NOT BLA_VENDOR MATCHES "_seq$" OR BLA_VENDOR STREQUAL "All") # old version list(APPEND BLAS_SEARCH_LIBS_WIN_THREAD "libguide40 mkl_intel_thread${BLAS_mkl_DLL_SUFFIX}") @@ -576,7 +576,7 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_THREAD "libiomp5md mkl_intel_thread${BLAS_mkl_DLL_SUFFIX}") endif() - if (BLA_VENDOR STREQUAL "*_seq" OR BLA_VENDOR STREQUAL "All") + if (BLA_VENDOR MATCHES "_seq$" OR BLA_VENDOR STREQUAL "All") list(APPEND BLAS_SEARCH_LIBS_WIN_THREAD "mkl_sequential${BLAS_mkl_DLL_SUFFIX}") endif() ----------------------------------------------------------------------- Summary of changes: Modules/FindBLAS.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 8 14:17:38 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 8 Jan 2016 14:17:38 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1881-g7a36e81 Message-ID: <20160108191740.38C9DE20C7@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 7a36e812c4f26bdf7e70d2b284b9f7650a4369ca (commit) via f086c665da00228cabf465dc1eb7223d40fd6270 (commit) from d24f98fc29d6ce0a01218d30f89982b153c3e141 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7a36e812c4f26bdf7e70d2b284b9f7650a4369ca commit 7a36e812c4f26bdf7e70d2b284b9f7650a4369ca Merge: d24f98f f086c66 Author: Brad King AuthorDate: Fri Jan 8 14:17:37 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 14:17:37 2016 -0500 Merge topic 'vs14-debug-enum' into next f086c665 VS: Fix VS 2015 .vcxproj file value for GenerateDebugInformation (#15894) diff --cc Source/cmVisualStudio10TargetGenerator.cxx index 6e1fb5b,6b46773..669c785 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@@ -2603,13 -2591,20 +2611,21 @@@ cmVisualStudio10TargetGenerator::Comput } else { - linkOptions.AddFlag("GenerateDebugInformation", "false"); + if (this->LocalGenerator->GetVersion() >= + cmGlobalVisualStudioGenerator::VS14) + { + linkOptions.AddFlag("GenerateDebugInformation", "No"); + } + else + { + linkOptions.AddFlag("GenerateDebugInformation", "false"); + } } - std::string pdb = this->Target->GetPDBDirectory(config.c_str()); + std::string pdb = this->GeneratorTarget->GetPDBDirectory(config.c_str()); pdb += "/"; pdb += targetNamePDB; - std::string imLib = this->Target->GetDirectory(config.c_str(), true); + std::string imLib = + this->GeneratorTarget->GetDirectory(config.c_str(), true); imLib += "/"; imLib += targetNameImport; https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f086c665da00228cabf465dc1eb7223d40fd6270 commit f086c665da00228cabf465dc1eb7223d40fd6270 Author: Brad King AuthorDate: Fri Jan 8 14:12:48 2016 -0500 Commit: Brad King CommitDate: Fri Jan 8 14:15:39 2016 -0500 VS: Fix VS 2015 .vcxproj file value for GenerateDebugInformation (#15894) Starting with VS 2015 the GenerateDebugInformation build property is an enumeration (`No`, `Debug`, `DebugFastLink`) instead of a boolean value (`false`, `true`). For now we simply change to `No` and `Debug` fix current behavior. Support for `/debug:fastlink` can be added later. diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 1de2847..6b46773 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -2579,11 +2579,27 @@ cmVisualStudio10TargetGenerator::ComputeLinkOptions(std::string const& config) if(linkOptions.IsDebug() || flags.find("/debug") != flags.npos) { - linkOptions.AddFlag("GenerateDebugInformation", "true"); + if (this->LocalGenerator->GetVersion() >= + cmGlobalVisualStudioGenerator::VS14) + { + linkOptions.AddFlag("GenerateDebugInformation", "Debug"); + } + else + { + linkOptions.AddFlag("GenerateDebugInformation", "true"); + } } else { - linkOptions.AddFlag("GenerateDebugInformation", "false"); + if (this->LocalGenerator->GetVersion() >= + cmGlobalVisualStudioGenerator::VS14) + { + linkOptions.AddFlag("GenerateDebugInformation", "No"); + } + else + { + linkOptions.AddFlag("GenerateDebugInformation", "false"); + } } std::string pdb = this->Target->GetPDBDirectory(config.c_str()); pdb += "/"; ----------------------------------------------------------------------- Summary of changes: Source/cmVisualStudio10TargetGenerator.cxx | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From chuck.atkins at kitware.com Fri Jan 8 15:36:41 2016 From: chuck.atkins at kitware.com (Chuck Atkins) Date: Fri, 8 Jan 2016 15:36:41 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1883-g466e182 Message-ID: <20160108203700.C0A79E26F4@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 466e182975d4dde63719f0c2aa28de12afad0b61 (commit) via aa579b552c0e7321ed580e3df15325aa3e102560 (commit) from 7a36e812c4f26bdf7e70d2b284b9f7650a4369ca (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=466e182975d4dde63719f0c2aa28de12afad0b61 commit 466e182975d4dde63719f0c2aa28de12afad0b61 Merge: 7a36e81 aa579b5 Author: Chuck Atkins AuthorDate: Fri Jan 8 15:36:39 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 15:36:39 2016 -0500 Merge topic 'allow-variables-for-find-defaults' into next aa579b55 Fix segfault from uninitialized makefile https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aa579b552c0e7321ed580e3df15325aa3e102560 commit aa579b552c0e7321ed580e3df15325aa3e102560 Author: Chuck Atkins AuthorDate: Fri Jan 8 15:36:04 2016 -0500 Commit: Chuck Atkins CommitDate: Fri Jan 8 15:36:04 2016 -0500 Fix segfault from uninitialized makefile diff --git a/Source/cmFindCommon.cxx b/Source/cmFindCommon.cxx index ee94869..8c237ca 100644 --- a/Source/cmFindCommon.cxx +++ b/Source/cmFindCommon.cxx @@ -57,25 +57,6 @@ cmFindCommon::~cmFindCommon() } //---------------------------------------------------------------------------- -inline bool ListContains2Helper(const cmMakefile* make, - const std::string& cmakeVar, const std::string& test1, - const std::string& test2) -{ - std::vector v; - cmSystemTools::ExpandListArgument( - make->GetSafeDefinition(cmakeVar), v, true); - for(std::vector::const_iterator i = v.begin(); - i != v.end(); ++i) - { - if(*i == test1 || *i == test2) - { - return true; - } - } - return false; -} - -//---------------------------------------------------------------------------- void cmFindCommon::InitializeSearchPathGroups() { std::vector* labels; @@ -107,18 +88,6 @@ void cmFindCommon::InitializeSearchPathGroups() cmSearchPath(this))); this->LabeledPaths.insert(std::make_pair(PathLabel::Guess, cmSearchPath(this))); - - // Initialize global path options - this->NoDefaultPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_DEFAULT_PATH", "ALL", this->CMakePathName); - this->NoCMakeEnvironmentPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH", "ALL", this->CMakePathName); - this->NoCMakePath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_CMAKE_PATH", "ALL", this->CMakePathName); - this->NoSystemEnvironmentPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH", "ALL", this->CMakePathName); - this->NoCMakeSystemPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_CMAKE_SYSTEM_PATH", "ALL", this->CMakePathName); } //---------------------------------------------------------------------------- @@ -340,8 +309,39 @@ void cmFindCommon::GetIgnoredPaths(std::set& ignore) } //---------------------------------------------------------------------------- +inline bool ListContains2Helper(const cmMakefile* make, + const std::string& cmakeVar, const std::string& test1, + const std::string& test2) +{ + std::vector v; + cmSystemTools::ExpandListArgument( + make->GetSafeDefinition(cmakeVar), v, true); + for(std::vector::const_iterator i = v.begin(); + i != v.end(); ++i) + { + if(*i == test1 || *i == test2) + { + return true; + } + } + return false; +} + +//---------------------------------------------------------------------------- bool cmFindCommon::CheckCommonArgument(std::string const& arg) { + // Initialize global path options + this->NoDefaultPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_DEFAULT_PATH", "ALL", this->CMakePathName); + this->NoCMakeEnvironmentPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH", "ALL", this->CMakePathName); + this->NoCMakePath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_PATH", "ALL", this->CMakePathName); + this->NoSystemEnvironmentPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH", "ALL", this->CMakePathName); + this->NoCMakeSystemPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_SYSTEM_PATH", "ALL", this->CMakePathName); + if(arg == "NO_DEFAULT_PATH") { this->NoDefaultPath = true; ----------------------------------------------------------------------- Summary of changes: Source/cmFindCommon.cxx | 62 +++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 31 deletions(-) hooks/post-receive -- CMake From chuck.atkins at kitware.com Fri Jan 8 15:37:36 2016 From: chuck.atkins at kitware.com (Chuck Atkins) Date: Fri, 8 Jan 2016 15:37:36 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1885-g558d5d9 Message-ID: <20160108203756.89223E2712@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 558d5d986886e224346cee5b992920ec073cb6d7 (commit) via 7f6ba8cd74bd5030916247049c6259293ad668a9 (commit) from 466e182975d4dde63719f0c2aa28de12afad0b61 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=558d5d986886e224346cee5b992920ec073cb6d7 commit 558d5d986886e224346cee5b992920ec073cb6d7 Merge: 466e182 7f6ba8c Author: Chuck Atkins AuthorDate: Fri Jan 8 15:37:35 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 8 15:37:35 2016 -0500 Merge topic 'allow-variables-for-find-defaults' into next 7f6ba8cd find_*: Add variables to enable NO_XXX_PATH defaults to find commands https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7f6ba8cd74bd5030916247049c6259293ad668a9 commit 7f6ba8cd74bd5030916247049c6259293ad668a9 Author: Chuck Atkins AuthorDate: Tue Jan 5 11:46:49 2016 -0500 Commit: Chuck Atkins CommitDate: Fri Jan 8 15:37:16 2016 -0500 find_*: Add variables to enable NO_XXX_PATH defaults to find commands diff --git a/Help/command/FIND_XXX.txt b/Help/command/FIND_XXX.txt index bd4d295..7078c8c 100644 --- a/Help/command/FIND_XXX.txt +++ b/Help/command/FIND_XXX.txt @@ -56,8 +56,9 @@ Options include: ``DOC`` Specify the documentation string for the ```` cache entry. -If ``NO_DEFAULT_PATH`` is specified, then no additional paths are -added to the search. +If ``NO_DEFAULT_PATH`` is specified or if +:variable:`CMAKE_FIND_NO_DEFAULT_PATH` is set and contains ``ALL`` or +|CMAKE_PATH_NAME|, then no additional paths are added to the search. If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: .. |CMAKE_PREFIX_PATH_XXX_SUBDIR| replace:: @@ -73,7 +74,9 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: 1. Search paths specified in cmake-specific cache variables. These are intended to be used on the command line with a ``-DVAR=value``. - This can be skipped if ``NO_CMAKE_PATH`` is passed. + This can be skipped if ``NO_CMAKE_PATH`` is passed or if + :variable:`CMAKE_FIND_NO_CMAKE_PATH` is set and contains ``ALL`` or + |CMAKE_PATH_NAME|. * |CMAKE_PREFIX_PATH_XXX| * |CMAKE_XXX_PATH| @@ -81,7 +84,9 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: 2. Search paths specified in cmake-specific environment variables. These are intended to be set in the user's shell configuration. - This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed. + This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or if + :variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH` is set and contains + ``ALL`` or |CMAKE_PATH_NAME|. * |CMAKE_PREFIX_PATH_XXX| * |CMAKE_XXX_PATH| @@ -93,13 +98,16 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: Hard-coded guesses should be specified with the ``PATHS`` option. 4. Search the standard system environment variables. - This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is an argument. + This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is an argument or if + :variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH` is set and contains + ``ALL`` or |CMAKE_PATH_NAME| * |SYSTEM_ENVIRONMENT_PATH_XXX| 5. Search cmake variables defined in the Platform files for the current system. This can be skipped if ``NO_CMAKE_SYSTEM_PATH`` - is passed. + is passed or if :variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH` is set and + contains ``ALL`` or |CMAKE_PATH_NAME|. * |CMAKE_SYSTEM_PREFIX_PATH_XXX| * |CMAKE_SYSTEM_XXX_PATH| diff --git a/Help/command/find_file.rst b/Help/command/find_file.rst index bf7a919..45fc84e 100644 --- a/Help/command/find_file.rst +++ b/Help/command/find_file.rst @@ -30,4 +30,5 @@ find_file .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_INCLUDE` +.. |CMAKE_PATH_NAME| replace:: ``INCLUDE`` .. include:: FIND_XXX.txt diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst index 5d07574..de7f98a 100644 --- a/Help/command/find_library.rst +++ b/Help/command/find_library.rst @@ -30,6 +30,7 @@ find_library .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_LIBRARY` +.. |CMAKE_PATH_NAME| replace:: ``LIBRARY`` .. include:: FIND_XXX.txt When more than one value is given to the ``NAMES`` option this command by diff --git a/Help/command/find_package.rst b/Help/command/find_package.rst index 58dff9d..6d72879 100644 --- a/Help/command/find_package.rst +++ b/Help/command/find_package.rst @@ -238,7 +238,9 @@ enabled. 1. Search paths specified in cmake-specific cache variables. These are intended to be used on the command line with a ``-DVAR=value``. - This can be skipped if ``NO_CMAKE_PATH`` is passed:: + This can be skipped if ``NO_CMAKE_PATH`` is passed or if + :variable:`CMAKE_FIND_NO_CMAKE_PATH` is set and contains ``ALL`` or + ``PACKAGE``:: CMAKE_PREFIX_PATH CMAKE_FRAMEWORK_PATH @@ -246,7 +248,9 @@ enabled. 2. Search paths specified in cmake-specific environment variables. These are intended to be set in the user's shell configuration. - This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed:: + This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or + :variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH` is set and contains + ``ALL`` or ``PACKAGE``:: _DIR CMAKE_PREFIX_PATH @@ -259,9 +263,10 @@ enabled. be specified with the ``PATHS`` option. 4. Search the standard system environment variables. This can be - skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed. Path entries - ending in ``/bin`` or ``/sbin`` are automatically converted to their - parent directories:: + skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed or + :variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH` is set and contains + ``ALL`` or ``PACKAGE``. Path entries ending in ``/bin`` or ``/sbin`` + are automatically converted to their parent directories:: PATH diff --git a/Help/command/find_path.rst b/Help/command/find_path.rst index 4403cb5..748c754 100644 --- a/Help/command/find_path.rst +++ b/Help/command/find_path.rst @@ -30,6 +30,7 @@ find_path .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_INCLUDE` +.. |CMAKE_PATH_NAME| replace:: ``INCLUDE`` .. include:: FIND_XXX.txt When searching for frameworks, if the file is specified as ``A/b.h``, then diff --git a/Help/command/find_program.rst b/Help/command/find_program.rst index d3430c0..d6c954a 100644 --- a/Help/command/find_program.rst +++ b/Help/command/find_program.rst @@ -25,6 +25,7 @@ find_program .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_PROGRAM` +.. |CMAKE_PATH_NAME| replace:: ``PROGRAM`` .. include:: FIND_XXX.txt When more than one value is given to the ``NAMES`` option this command by diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index 3f49572..ac8701b 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -124,7 +124,12 @@ Variables that Change Behavior /variable/CMAKE_FIND_FRAMEWORK /variable/CMAKE_FIND_LIBRARY_PREFIXES /variable/CMAKE_FIND_LIBRARY_SUFFIXES + /variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH + /variable/CMAKE_FIND_NO_CMAKE_PATH + /variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH + /variable/CMAKE_FIND_NO_DEFAULT_PATH /variable/CMAKE_FIND_NO_INSTALL_PREFIX + /variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH /variable/CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY /variable/CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY /variable/CMAKE_FIND_PACKAGE_WARN_NO_MODULE diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst new file mode 100644 index 0000000..ee761aa --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH +------------------------------------ + +.. |NO_XXX_PATH| replace:: NO_CMAKE_ENVIRONMENT_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst new file mode 100644 index 0000000..0ac6666 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_CMAKE_PATH +------------------------ + +.. |NO_XXX_PATH| replace:: NO_CMAKE_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst new file mode 100644 index 0000000..827ef79 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_CMAKE_SYSTEM_PATH +------------------------------- + +.. |NO_XXX_PATH| replace:: NO_CMAKE_SYSTEM_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst b/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst new file mode 100644 index 0000000..37e8369 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_DEFAULT_PATH +-------------------------- + +.. |NO_XXX_PATH| replace:: NO_DEFAULT_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, +:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst b/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst new file mode 100644 index 0000000..977083e --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst @@ -0,0 +1,10 @@ +CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH +------------------------------------- + +.. |NO_XXX_PATH| replace:: NO_SYSTEM_ENVIRONMENT_PATH +.. include:: CMAKE_FIND_NO_XXX_PATH.txt + +See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_PATH`, +:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, and +:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt b/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt new file mode 100644 index 0000000..ca9ad26 --- /dev/null +++ b/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt @@ -0,0 +1,21 @@ +This variable enables the |NO_XXX_PATH| option to be on by default for the +various find commands. It's value is a list with valid entries being: + +``INCLUDE`` + Enable the option for the :command:`find_file` and :command:`find_path` + commands. + +``LIBRARY`` + Enable the option for the :command:`find_library` command. + +``PACKAGE`` + Enable the option for the :command:`find_package` command. + +``PROGRAM`` + Enable the option for the :command:`find_program` command. + +``ALL`` + Enable the option for all find commands. + +The list can contain any combination of valid entries in any order to affect +the specified find command. diff --git a/Source/cmFindCommon.cxx b/Source/cmFindCommon.cxx index 913985f..8c237ca 100644 --- a/Source/cmFindCommon.cxx +++ b/Source/cmFindCommon.cxx @@ -309,8 +309,39 @@ void cmFindCommon::GetIgnoredPaths(std::set& ignore) } //---------------------------------------------------------------------------- +inline bool ListContains2Helper(const cmMakefile* make, + const std::string& cmakeVar, const std::string& test1, + const std::string& test2) +{ + std::vector v; + cmSystemTools::ExpandListArgument( + make->GetSafeDefinition(cmakeVar), v, true); + for(std::vector::const_iterator i = v.begin(); + i != v.end(); ++i) + { + if(*i == test1 || *i == test2) + { + return true; + } + } + return false; +} + +//---------------------------------------------------------------------------- bool cmFindCommon::CheckCommonArgument(std::string const& arg) { + // Initialize global path options + this->NoDefaultPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_DEFAULT_PATH", "ALL", this->CMakePathName); + this->NoCMakeEnvironmentPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH", "ALL", this->CMakePathName); + this->NoCMakePath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_PATH", "ALL", this->CMakePathName); + this->NoSystemEnvironmentPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH", "ALL", this->CMakePathName); + this->NoCMakeSystemPath = ListContains2Helper(this->Makefile, + "CMAKE_FIND_NO_CMAKE_SYSTEM_PATH", "ALL", this->CMakePathName); + if(arg == "NO_DEFAULT_PATH") { this->NoDefaultPath = true; ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Sat Jan 9 00:01:14 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sat, 9 Jan 2016 00:01:14 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-794-gc6ff95b Message-ID: <20160109050114.9E2D1E245D@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 c6ff95be6113bb2880653caa4efc0d125016f7e0 (commit) from b74560c32a6fc9df3f5e09b8f29200f4cd9aaeb2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c6ff95be6113bb2880653caa4efc0d125016f7e0 commit c6ff95be6113bb2880653caa4efc0d125016f7e0 Author: Kitware Robot AuthorDate: Sat Jan 9 00:01:11 2016 -0500 Commit: Kitware Robot CommitDate: Sat Jan 9 00:01:11 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index bf3b849..aa8132e 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 4) -set(CMake_VERSION_PATCH 20160108) +set(CMake_VERSION_PATCH 20160109) #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 Sun Jan 10 00:01:09 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 10 Jan 2016 00:01:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-795-g7a45d91 Message-ID: <20160110050109.DE81FE25DD@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 7a45d91dc4dcbf52a576cca37878bc5c37f293f3 (commit) from c6ff95be6113bb2880653caa4efc0d125016f7e0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7a45d91dc4dcbf52a576cca37878bc5c37f293f3 commit 7a45d91dc4dcbf52a576cca37878bc5c37f293f3 Author: Kitware Robot AuthorDate: Sun Jan 10 00:01:06 2016 -0500 Commit: Kitware Robot CommitDate: Sun Jan 10 00:01:06 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index aa8132e..635deea 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 4) -set(CMake_VERSION_PATCH 20160109) +set(CMake_VERSION_PATCH 20160110) #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 Jan 11 00:01:11 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Mon, 11 Jan 2016 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-796-g196d912 Message-ID: <20160111050111.07600E285E@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 196d912200667750d73d872c1c237eebe9d426e0 (commit) from 7a45d91dc4dcbf52a576cca37878bc5c37f293f3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=196d912200667750d73d872c1c237eebe9d426e0 commit 196d912200667750d73d872c1c237eebe9d426e0 Author: Kitware Robot AuthorDate: Mon Jan 11 00:01:06 2016 -0500 Commit: Kitware Robot CommitDate: Mon Jan 11 00:01:06 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 635deea..d44f58e 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 4) -set(CMake_VERSION_PATCH 20160110) +set(CMake_VERSION_PATCH 20160111) #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 Mon Jan 11 09:17:40 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 09:17:40 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-798-gd9f9c4f Message-ID: <20160111141740.47003E269D@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 d9f9c4fbc0a02f048793f4b91aeb5c65d9571e84 (commit) via 2b48f63ce38e49a5c3ee84aa3763da00c8af08f3 (commit) from 196d912200667750d73d872c1c237eebe9d426e0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d9f9c4fbc0a02f048793f4b91aeb5c65d9571e84 commit d9f9c4fbc0a02f048793f4b91aeb5c65d9571e84 Merge: 196d912 2b48f63 Author: Brad King AuthorDate: Mon Jan 11 09:17:38 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 09:17:38 2016 -0500 Merge topic 'FindBLAS-intel-64lp' 2b48f63c FindBLAS: Fix pattern matching on BLAS vendor name ----------------------------------------------------------------------- Summary of changes: Modules/FindBLAS.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 09:17:43 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 09:17:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-800-gcedbb79 Message-ID: <20160111141743.63CC6E26A9@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 cedbb7994dddce2c3fdf846bf4563c846adf4632 (commit) via f086c665da00228cabf465dc1eb7223d40fd6270 (commit) from d9f9c4fbc0a02f048793f4b91aeb5c65d9571e84 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cedbb7994dddce2c3fdf846bf4563c846adf4632 commit cedbb7994dddce2c3fdf846bf4563c846adf4632 Merge: d9f9c4f f086c66 Author: Brad King AuthorDate: Mon Jan 11 09:17:41 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 09:17:41 2016 -0500 Merge topic 'vs14-debug-enum' f086c665 VS: Fix VS 2015 .vcxproj file value for GenerateDebugInformation (#15894) diff --cc Source/cmVisualStudio10TargetGenerator.cxx index 6e1fb5b,6b46773..669c785 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@@ -2603,13 -2591,20 +2611,21 @@@ cmVisualStudio10TargetGenerator::Comput } else { - linkOptions.AddFlag("GenerateDebugInformation", "false"); + if (this->LocalGenerator->GetVersion() >= + cmGlobalVisualStudioGenerator::VS14) + { + linkOptions.AddFlag("GenerateDebugInformation", "No"); + } + else + { + linkOptions.AddFlag("GenerateDebugInformation", "false"); + } } - std::string pdb = this->Target->GetPDBDirectory(config.c_str()); + std::string pdb = this->GeneratorTarget->GetPDBDirectory(config.c_str()); pdb += "/"; pdb += targetNamePDB; - std::string imLib = this->Target->GetDirectory(config.c_str(), true); + std::string imLib = + this->GeneratorTarget->GetDirectory(config.c_str(), true); imLib += "/"; imLib += targetNameImport; ----------------------------------------------------------------------- Summary of changes: Source/cmVisualStudio10TargetGenerator.cxx | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 09:18:15 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 09:18:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1891-g816fe03 Message-ID: <20160111141815.907A1E272A@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 816fe03a024f0d2b315c9797e48a4e58a7ae0490 (commit) via cedbb7994dddce2c3fdf846bf4563c846adf4632 (commit) via d9f9c4fbc0a02f048793f4b91aeb5c65d9571e84 (commit) via 196d912200667750d73d872c1c237eebe9d426e0 (commit) via 7a45d91dc4dcbf52a576cca37878bc5c37f293f3 (commit) via c6ff95be6113bb2880653caa4efc0d125016f7e0 (commit) from 558d5d986886e224346cee5b992920ec073cb6d7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=816fe03a024f0d2b315c9797e48a4e58a7ae0490 commit 816fe03a024f0d2b315c9797e48a4e58a7ae0490 Merge: 558d5d9 cedbb79 Author: Brad King AuthorDate: Mon Jan 11 09:17:56 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 09:17:56 2016 -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 Mon Jan 11 09:52:07 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 09:52:07 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1895-gebf86b8 Message-ID: <20160111145207.1B235E2688@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 ebf86b8bf65ec96e48f814d3f454106201df3538 (commit) via b3677b35d320cce5d23831ec398d6bb283d1444e (commit) via c22da7cff74a293d6362598c2a381147d658022f (commit) via 4ca9df8bd1991870a8a4acfeae26933e8ca7dc9a (commit) from 816fe03a024f0d2b315c9797e48a4e58a7ae0490 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ebf86b8bf65ec96e48f814d3f454106201df3538 commit ebf86b8bf65ec96e48f814d3f454106201df3538 Merge: 816fe03 b3677b3 Author: Brad King AuthorDate: Mon Jan 11 09:52:06 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 09:52:06 2016 -0500 Merge topic 'vs-link-debug-property' into next b3677b35 VS: Map the link `/debug` to its IDE property c22da7cf VS: Drop unused condition in link debug flag generation 4ca9df8b cmIDEOptions: Add support for case-insensitive flags https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b3677b35d320cce5d23831ec398d6bb283d1444e commit b3677b35d320cce5d23831ec398d6bb283d1444e Author: Brad King AuthorDate: Fri Jan 8 14:38:58 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 09:45:00 2016 -0500 VS: Map the link `/debug` to its IDE property Fix the link flag table entries for this flag to be case-insensitive. Also fix the VS 2015 value for the build property enumeration name. This causes `linkOptions.Parse(...)` to correctly extract the `/debug` flag and map it to the IDE property instead. Therefore we do not need to look for the flag explicitly when initializing the property. diff --git a/Source/cmVS10LinkFlagTable.h b/Source/cmVS10LinkFlagTable.h index f6b758d..dd92329 100644 --- a/Source/cmVS10LinkFlagTable.h +++ b/Source/cmVS10LinkFlagTable.h @@ -155,7 +155,8 @@ static cmVS7FlagTable cmVS10LinkFlagTable[] = {"AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0}, {"UACUIAccess", "uiAccess='false'", "", "false", 0}, {"UACUIAccess", "uiAccess='true'", "", "true", 0}, - {"GenerateDebugInformation", "DEBUG", "", "true", 0}, + {"GenerateDebugInformation", "DEBUG", "", "true", + cmVS7FlagTable::CaseInsensitive}, {"MapExports", "MAPINFO:EXPORTS", "", "true", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0}, diff --git a/Source/cmVS11LinkFlagTable.h b/Source/cmVS11LinkFlagTable.h index 0f641e4..2d6f6c0 100644 --- a/Source/cmVS11LinkFlagTable.h +++ b/Source/cmVS11LinkFlagTable.h @@ -177,7 +177,8 @@ static cmVS7FlagTable cmVS11LinkFlagTable[] = {"UACUIAccess", "uiAccess='false'", "", "false", 0}, {"UACUIAccess", "uiAccess='true'", "", "true", 0}, {"ManifestEmbed", "manifest:embed", "", "true", 0}, - {"GenerateDebugInformation", "DEBUG", "", "true", 0}, + {"GenerateDebugInformation", "DEBUG", "", "true", + cmVS7FlagTable::CaseInsensitive}, {"MapExports", "MAPINFO:EXPORTS", "", "true", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0}, diff --git a/Source/cmVS12LinkFlagTable.h b/Source/cmVS12LinkFlagTable.h index e5a570e..0be5e34 100644 --- a/Source/cmVS12LinkFlagTable.h +++ b/Source/cmVS12LinkFlagTable.h @@ -177,7 +177,8 @@ static cmVS7FlagTable cmVS12LinkFlagTable[] = {"UACUIAccess", "uiAccess='false'", "", "false", 0}, {"UACUIAccess", "uiAccess='true'", "", "true", 0}, {"ManifestEmbed", "manifest:embed", "", "true", 0}, - {"GenerateDebugInformation", "DEBUG", "", "true", 0}, + {"GenerateDebugInformation", "DEBUG", "", "true", + cmVS7FlagTable::CaseInsensitive}, {"MapExports", "MAPINFO:EXPORTS", "", "true", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0}, diff --git a/Source/cmVS14LinkFlagTable.h b/Source/cmVS14LinkFlagTable.h index 6d81d12..1e781e8 100644 --- a/Source/cmVS14LinkFlagTable.h +++ b/Source/cmVS14LinkFlagTable.h @@ -177,7 +177,8 @@ static cmVS7FlagTable cmVS14LinkFlagTable[] = {"UACUIAccess", "uiAccess='false'", "", "false", 0}, {"UACUIAccess", "uiAccess='true'", "", "true", 0}, {"ManifestEmbed", "manifest:embed", "", "true", 0}, - {"GenerateDebugInformation", "DEBUG", "", "true", 0}, + {"GenerateDebugInformation", "DEBUG", "", "Debug", + cmVS7FlagTable::CaseInsensitive}, {"MapExports", "MAPINFO:EXPORTS", "", "true", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0}, {"AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0}, diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 56f724f..2120035 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -2597,30 +2597,16 @@ cmVisualStudio10TargetGenerator::ComputeLinkOptions(std::string const& config) linkOptions.AddFlag("StackReserveSize", stackVal); } - if(flags.find("/debug") != flags.npos) + if (this->LocalGenerator->GetVersion() >= + cmGlobalVisualStudioGenerator::VS14) { - if (this->LocalGenerator->GetVersion() >= - cmGlobalVisualStudioGenerator::VS14) - { - linkOptions.AddFlag("GenerateDebugInformation", "Debug"); - } - else - { - linkOptions.AddFlag("GenerateDebugInformation", "true"); - } + linkOptions.AddFlag("GenerateDebugInformation", "No"); } else { - if (this->LocalGenerator->GetVersion() >= - cmGlobalVisualStudioGenerator::VS14) - { - linkOptions.AddFlag("GenerateDebugInformation", "No"); - } - else - { - linkOptions.AddFlag("GenerateDebugInformation", "false"); - } + linkOptions.AddFlag("GenerateDebugInformation", "false"); } + std::string pdb = this->GeneratorTarget->GetPDBDirectory(config.c_str()); pdb += "/"; pdb += targetNamePDB; https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c22da7cff74a293d6362598c2a381147d658022f commit c22da7cff74a293d6362598c2a381147d658022f Author: Brad King AuthorDate: Fri Jan 8 14:36:45 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 09:43:13 2016 -0500 VS: Drop unused condition in link debug flag generation The `linkOptions.IsDebug()` call never returns true because it checks for `DebugInformationFormat` which is a compiler (cl) flag. diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 669c785..56f724f 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -2597,7 +2597,7 @@ cmVisualStudio10TargetGenerator::ComputeLinkOptions(std::string const& config) linkOptions.AddFlag("StackReserveSize", stackVal); } - if(linkOptions.IsDebug() || flags.find("/debug") != flags.npos) + if(flags.find("/debug") != flags.npos) { if (this->LocalGenerator->GetVersion() >= cmGlobalVisualStudioGenerator::VS14) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4ca9df8bd1991870a8a4acfeae26933e8ca7dc9a commit 4ca9df8bd1991870a8a4acfeae26933e8ca7dc9a Author: Brad King AuthorDate: Fri Jan 8 14:30:06 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 09:43:09 2016 -0500 cmIDEOptions: Add support for case-insensitive flags diff --git a/Source/cmIDEFlagTable.h b/Source/cmIDEFlagTable.h index d9a045d..adc7763 100644 --- a/Source/cmIDEFlagTable.h +++ b/Source/cmIDEFlagTable.h @@ -32,6 +32,7 @@ struct cmIDEFlagTable // /NODEFAULTLIB: => // IgnoreDefaultLibraryNames) UserFollowing = (1<<5), // expect value in following argument + CaseInsensitive = (1<<6), // flag may be any case UserValueIgnored = UserValue | UserIgnored, UserValueRequired = UserValue | UserRequired diff --git a/Source/cmIDEOptions.cxx b/Source/cmIDEOptions.cxx index 0eb903d..509602f 100644 --- a/Source/cmIDEOptions.cxx +++ b/Source/cmIDEOptions.cxx @@ -13,6 +13,8 @@ #include "cmSystemTools.h" +#include + //---------------------------------------------------------------------------- cmIDEOptions::cmIDEOptions() { @@ -104,7 +106,9 @@ bool cmIDEOptions::CheckFlagTable(cmIDEFlagTable const* table, // the entry specifies UserRequired we must match only if a // non-empty value is given. int n = static_cast(strlen(entry->commandFlag)); - if(strncmp(flag+1, entry->commandFlag, n) == 0 && + if((strncmp(flag+1, entry->commandFlag, n) == 0 || + (entry->special & cmIDEFlagTable::CaseInsensitive && + cmsysString_strncasecmp(flag+1, entry->commandFlag, n))) && (!(entry->special & cmIDEFlagTable::UserRequired) || static_cast(strlen(flag+1)) > n)) { @@ -112,7 +116,9 @@ bool cmIDEOptions::CheckFlagTable(cmIDEFlagTable const* table, entry_found = true; } } - else if(strcmp(flag+1, entry->commandFlag) == 0) + else if(strcmp(flag+1, entry->commandFlag) == 0 || + (entry->special & cmIDEFlagTable::CaseInsensitive && + cmsysString_strcasecmp(flag+1, entry->commandFlag) == 0)) { if(entry->special & cmIDEFlagTable::UserFollowing) { ----------------------------------------------------------------------- Summary of changes: Source/cmIDEFlagTable.h | 1 + Source/cmIDEOptions.cxx | 10 ++++++++-- Source/cmVS10LinkFlagTable.h | 3 ++- Source/cmVS11LinkFlagTable.h | 3 ++- Source/cmVS12LinkFlagTable.h | 3 ++- Source/cmVS14LinkFlagTable.h | 3 ++- Source/cmVisualStudio10TargetGenerator.cxx | 24 +++++------------------- 7 files changed, 22 insertions(+), 25 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 10:18:44 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 10:18:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1897-gf3ea5a5 Message-ID: <20160111151844.32DB1E2683@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 f3ea5a599f958e20a28e10365bc07253271cde04 (commit) via 3baca6364bb1569e6856337d80e54b37a96d017e (commit) from ebf86b8bf65ec96e48f814d3f454106201df3538 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f3ea5a599f958e20a28e10365bc07253271cde04 commit f3ea5a599f958e20a28e10365bc07253271cde04 Merge: ebf86b8 3baca63 Author: Brad King AuthorDate: Mon Jan 11 10:18:43 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 10:18:43 2016 -0500 Merge topic 'mingw-clang-compile-features' into next 3baca636 Record compile features for MinGW Clang on Windows (#15897) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3baca6364bb1569e6856337d80e54b37a96d017e commit 3baca6364bb1569e6856337d80e54b37a96d017e Author: Brad King AuthorDate: Mon Jan 11 10:08:01 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 10:13:18 2016 -0500 Record compile features for MinGW Clang on Windows (#15897) Drop the 'UNIX' condition on Clang compiler features. This enables use of compile features with MinGW Clang, though additional work may be needed for clang-cl. diff --git a/Help/release/dev/mingw-clang-compile-features.rst b/Help/release/dev/mingw-clang-compile-features.rst new file mode 100644 index 0000000..5b1fb96 --- /dev/null +++ b/Help/release/dev/mingw-clang-compile-features.rst @@ -0,0 +1,5 @@ +mingw-clang-compile-features +---------------------------- + +* The :manual:`Compile Features ` functionality + is now aware of features supported by Clang compilers on Windows (MinGW). diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake index 6a0a5e2..dc62711 100644 --- a/Modules/Compiler/Clang-CXX.cmake +++ b/Modules/Compiler/Clang-CXX.cmake @@ -6,7 +6,7 @@ if(NOT "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC") endif() cmake_policy(GET CMP0025 appleClangPolicy) -if(WIN32 OR (APPLE AND NOT appleClangPolicy STREQUAL NEW)) +if(APPLE AND NOT appleClangPolicy STREQUAL NEW) return() endif() @@ -49,7 +49,7 @@ macro(cmake_record_cxx_compile_features) endmacro() set(_result 0) - if (UNIX AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4) + if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4) _get_clang_features(${CMAKE_CXX14_STANDARD_COMPILE_OPTION} CMAKE_CXX14_COMPILE_FEATURES) if (_result EQUAL 0) _get_clang_features(${CMAKE_CXX11_STANDARD_COMPILE_OPTION} CMAKE_CXX11_COMPILE_FEATURES) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/mingw-clang-compile-features.rst | 5 +++++ Modules/Compiler/Clang-CXX.cmake | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 Help/release/dev/mingw-clang-compile-features.rst hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 11:20:40 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 11:20:40 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1900-ge859349 Message-ID: <20160111162040.D3F45E2788@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 e859349334c8e66148766e9f0acc82667a4944fd (commit) via 9821924d45e0a9a22e8366060f41d6d87c26622f (commit) via 8e7356a2921c769c091c52140564b04108e692c4 (commit) from f3ea5a599f958e20a28e10365bc07253271cde04 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e859349334c8e66148766e9f0acc82667a4944fd commit e859349334c8e66148766e9f0acc82667a4944fd Merge: f3ea5a5 9821924 Author: Brad King AuthorDate: Mon Jan 11 11:20:39 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 11:20:39 2016 -0500 Merge topic 'update-kwsys' into next 9821924d Merge branch 'upstream-KWSys' into update-kwsys 8e7356a2 KWSys 2016-01-11 (e8bf616e) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9821924d45e0a9a22e8366060f41d6d87c26622f commit 9821924d45e0a9a22e8366060f41d6d87c26622f Merge: cedbb79 8e7356a Author: Brad King AuthorDate: Mon Jan 11 11:20:14 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 11:20:14 2016 -0500 Merge branch 'upstream-KWSys' into update-kwsys * upstream-KWSys: KWSys 2016-01-11 (e8bf616e) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8e7356a2921c769c091c52140564b04108e692c4 commit 8e7356a2921c769c091c52140564b04108e692c4 Author: KWSys Upstream AuthorDate: Mon Jan 11 09:01:00 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 11:20:13 2016 -0500 KWSys 2016-01-11 (e8bf616e) Code extracted from: http://public.kitware.com/KWSys.git at commit e8bf616e3556368bf19dbebcd3529a89011ebacb (master). Upstream Shortlog ----------------- Brad King (1): e8bf616e SystemTools: Fix GetShortPath buffer sizing Jan van Dorsten (1): cfb2477d SystemTools: Simplify GetShortPath de-quoting step Robert Maynard (1): 8ef9773d Don't use clang diagnostic pragma's when compiling with ICC on OSX. diff --git a/MD5.c b/MD5.c index a147057..b9d25a8 100644 --- a/MD5.c +++ b/MD5.c @@ -29,7 +29,7 @@ it in a single source file instead of a separate header and implementation file. */ -#if defined(__clang__) +#if defined(__clang__) && !defined(__INTEL_COMPILER) # pragma clang diagnostic push # pragma clang diagnostic ignored "-Wcast-align" #endif @@ -433,7 +433,7 @@ static void md5_finish(md5_state_t *pms, md5_byte_t digest[16]) digest[i] = (md5_byte_t)(pms->abcd[i >> 2] >> ((i & 3) << 3)); } -#if defined(__clang__) +#if defined(__clang__) && !defined(__INTEL_COMPILER) # pragma clang diagnostic pop #endif diff --git a/ProcessUNIX.c b/ProcessUNIX.c index b0ddf5a..07c644b 100644 --- a/ProcessUNIX.c +++ b/ProcessUNIX.c @@ -1595,12 +1595,12 @@ static void kwsysProcessVolatileFree(volatile void* p) { /* clang has made it impossible to free memory that points to volatile without first using special pragmas to disable a warning... */ -#if defined(__clang__) +#if defined(__clang__) && !defined(__INTEL_COMPILER) # pragma clang diagnostic push # pragma clang diagnostic ignored "-Wcast-qual" #endif free((void*)p); /* The cast will silence most compilers, but not clang. */ -#if defined(__clang__) +#if defined(__clang__) && !defined(__INTEL_COMPILER) # pragma clang diagnostic pop #endif } diff --git a/SystemTools.cxx b/SystemTools.cxx index 82087f0..e3428f8 100644 --- a/SystemTools.cxx +++ b/SystemTools.cxx @@ -4491,36 +4491,27 @@ bool SystemTools::FileIsFullPath(const char* in_name, size_t len) bool SystemTools::GetShortPath(const std::string& path, std::string& shortPath) { #if defined(_WIN32) && !defined(__CYGWIN__) - const int size = int(path.size()) +1; // size of return - char *tempPath = new char[size]; // create a buffer - DWORD ret; + std::string tempPath = path; // create a buffer // if the path passed in has quotes around it, first remove the quotes if (!path.empty() && path[0] == '"' && *path.rbegin() == '"') { - strcpy(tempPath,path.c_str()+1); - tempPath[size-2] = '\0'; - } - else - { - strcpy(tempPath,path.c_str()); + tempPath = path.substr(1, path.length()-2); } std::wstring wtempPath = Encoding::ToWide(tempPath); - std::vector buffer(wtempPath.size()+1); - buffer[0] = 0; + DWORD ret = GetShortPathNameW(wtempPath.c_str(), NULL, 0); + std::vector buffer(ret); ret = GetShortPathNameW(wtempPath.c_str(), - &buffer[0], static_cast(wtempPath.size())); + &buffer[0], static_cast(buffer.size())); - if(buffer[0] == 0 || ret > wtempPath.size()) + if (ret == 0) { - delete [] tempPath; return false; } else { shortPath = Encoding::ToNarrow(&buffer[0]); - delete [] tempPath; return true; } #else ----------------------------------------------------------------------- Summary of changes: Source/kwsys/MD5.c | 4 ++-- Source/kwsys/ProcessUNIX.c | 4 ++-- Source/kwsys/SystemTools.cxx | 21 ++++++--------------- 3 files changed, 10 insertions(+), 19 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 13:06:11 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 13:06:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1902-g5c88b04 Message-ID: <20160111180611.CEC8BE2AF5@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 5c88b0413cba78652e3f238302de04b10221c4a1 (commit) via af39f11521af7fc2ec037103df1ad5a616dd7f19 (commit) from e859349334c8e66148766e9f0acc82667a4944fd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5c88b0413cba78652e3f238302de04b10221c4a1 commit 5c88b0413cba78652e3f238302de04b10221c4a1 Merge: e859349 af39f11 Author: Brad King AuthorDate: Mon Jan 11 13:06:10 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 13:06:10 2016 -0500 Merge topic 'vs-global-properties' into next af39f115 VS: Implement VS_GLOBAL_* target properties in VS 2010+ (#13666) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=af39f11521af7fc2ec037103df1ad5a616dd7f19 commit af39f11521af7fc2ec037103df1ad5a616dd7f19 Author: Mike Fitzgerald AuthorDate: Fri Jan 8 17:33:28 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 13:04:34 2016 -0500 VS: Implement VS_GLOBAL_* target properties in VS 2010+ (#13666) These have been documented but previously only implemented for VS 2008 and below. diff --git a/Help/release/dev/vs-global-properties.rst b/Help/release/dev/vs-global-properties.rst new file mode 100644 index 0000000..cae49b7 --- /dev/null +++ b/Help/release/dev/vs-global-properties.rst @@ -0,0 +1,5 @@ +vs-global-properties +-------------------- + +* The :prop_tgt:`VS_GLOBAL_` target property is now implemented + for VS 2010 and above. Previously it worked only in VS 2008 and below. diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 669c785..c9705ac 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -448,6 +448,32 @@ void cmVisualStudio10TargetGenerator::Generate() (*this->BuildFileStream) << cmVS10EscapeXML(targetFrameworkVersion) << "\n"; } + + std::vector keys = this->GeneratorTarget->GetPropertyKeys(); + for(std::vector::const_iterator keyIt = keys.begin(); + keyIt != keys.end(); ++keyIt) + { + static const char* prefix = "VS_GLOBAL_"; + if(keyIt->find(prefix) != 0) + continue; + std::string globalKey = keyIt->substr(strlen(prefix)); + // Skip invalid or separately-handled properties. + if(globalKey == "" || + globalKey == "PROJECT_TYPES" || + globalKey == "ROOTNAMESPACE" || + globalKey == "KEYWORD") + { + continue; + } + const char* value = this->GeneratorTarget->GetProperty(keyIt->c_str()); + if (!value) + continue; + this->WriteString("<", 2); + (*this->BuildFileStream) << globalKey << ">" + << cmVS10EscapeXML(value) + << "\n"; + } + this->WriteString("\n", 1); this->WriteString("\n", ----------------------------------------------------------------------- Summary of changes: Help/release/dev/vs-global-properties.rst | 5 +++++ Source/cmVisualStudio10TargetGenerator.cxx | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 Help/release/dev/vs-global-properties.rst hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 13:56:26 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 13:56:26 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1905-g8673afc Message-ID: <20160111185626.CFE1EE2809@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 8673afc72a2ba9ba8d7184411b4b1247ea45d774 (commit) via a57caf7eecdfe61e4ac5f63b145fc9269610f3f0 (commit) via ad594de8cc9c4063830df58453b0679c209ff4d8 (commit) from 5c88b0413cba78652e3f238302de04b10221c4a1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8673afc72a2ba9ba8d7184411b4b1247ea45d774 commit 8673afc72a2ba9ba8d7184411b4b1247ea45d774 Merge: 5c88b04 a57caf7 Author: Brad King AuthorDate: Mon Jan 11 13:56:25 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 13:56:25 2016 -0500 Merge topic 'vs-win10-sdk' into next a57caf7e VS: Fix Windows 10 SDK version selection (#15831) ad594de8 cmSystemTools: Add VersionCompareEqual helper https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a57caf7eecdfe61e4ac5f63b145fc9269610f3f0 commit a57caf7eecdfe61e4ac5f63b145fc9269610f3f0 Author: Brad King AuthorDate: Mon Jan 11 13:44:11 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 13:44:11 2016 -0500 VS: Fix Windows 10 SDK version selection (#15831) In commit v3.4.0-rc1~5^2~1 (VS: Add support for selecting the Windows 10 SDK, 2015-09-30) we added Windows 10 SDK selection choosing the most recent SDK that is not newer than the target version. This is backward because it should be up to the application code to not use APIs newer than the target version. It is up to the build system to provide a SDK that has at least the APIs expected to be available for the target version. Furthermore, since the default target version is the host version of Windows, the old approach breaks when the only SDK available is for a newer version of Windows. Fix this by always selecting a Windows 10 SDK if one exists. Use the SDK for the exact version if is available. Otherwise use the latest version of the SDK available because that will have at least the APIs expected for the target version. diff --git a/Source/cmGlobalVisualStudio14Generator.cxx b/Source/cmGlobalVisualStudio14Generator.cxx index 803b500..83499f1 100644 --- a/Source/cmGlobalVisualStudio14Generator.cxx +++ b/Source/cmGlobalVisualStudio14Generator.cxx @@ -277,29 +277,21 @@ std::string cmGlobalVisualStudio14Generator::GetWindows10SDKVersion() *i = cmSystemTools::GetFilenameName(*i); } - // Sort the results to make sure we select the most recent one that - // has a version less or equal to our version of the operating system + // Sort the results to make sure we select the most recent one. std::sort(sdks.begin(), sdks.end(), cmSystemTools::VersionCompareGreater); - // Select a suitable SDK version. - if (this->SystemVersion == "10.0") - { - // Use the latest Windows 10 SDK since no build version was given. - return sdks.at(0); - } - else + // Look for a SDK exactly matching the requested target version. + for (std::vector::iterator i = sdks.begin(); + i != sdks.end(); ++i) { - // Find the SDK less or equal to our specified version - for (std::vector::iterator i = sdks.begin(); - i != sdks.end(); ++i) + if (cmSystemTools::VersionCompareEqual(*i, this->SystemVersion)) { - if (!cmSystemTools::VersionCompareGreater(*i, this->SystemVersion)) - { - // This is the most recent SDK that we can run safely - return *i; - } + return *i; } } + + // Use the latest Windows 10 SDK since the exact version is not available. + return sdks.at(0); } #endif // Return an empty string https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ad594de8cc9c4063830df58453b0679c209ff4d8 commit ad594de8cc9c4063830df58453b0679c209ff4d8 Author: Brad King AuthorDate: Mon Jan 11 13:42:07 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 13:43:22 2016 -0500 cmSystemTools: Add VersionCompareEqual helper Wrap a call to VersionCompare with OP_EQUAL. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 2c5aa8a..d8b8415 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -2777,6 +2777,14 @@ bool cmSystemTools::VersionCompare(cmSystemTools::CompareOp op, } //---------------------------------------------------------------------------- +bool cmSystemTools::VersionCompareEqual(std::string const& lhs, + std::string const& rhs) +{ + return cmSystemTools::VersionCompare( + cmSystemTools::OP_EQUAL, lhs.c_str(), rhs.c_str()); +} + +//---------------------------------------------------------------------------- bool cmSystemTools::VersionCompareGreater(std::string const& lhs, std::string const& rhs) { diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index b6b0978..9cafbec 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -294,6 +294,8 @@ public: * Compare versions */ static bool VersionCompare(CompareOp op, const char* lhs, const char* rhs); + static bool VersionCompareEqual(std::string const& lhs, + std::string const& rhs); static bool VersionCompareGreater(std::string const& lhs, std::string const& rhs); ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalVisualStudio14Generator.cxx | 26 +++++++++----------------- Source/cmSystemTools.cxx | 8 ++++++++ Source/cmSystemTools.h | 2 ++ 3 files changed, 19 insertions(+), 17 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 11 16:35:09 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 11 Jan 2016 16:35:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1907-g77b3007 Message-ID: <20160111213509.1E65EE28DE@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 77b30076c63f1e8f3155148a0c9815745b58d24c (commit) via 4d05f195d9518eb5075f5b2a024f6c5874aab042 (commit) from 8673afc72a2ba9ba8d7184411b4b1247ea45d774 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=77b30076c63f1e8f3155148a0c9815745b58d24c commit 77b30076c63f1e8f3155148a0c9815745b58d24c Merge: 8673afc 4d05f19 Author: Brad King AuthorDate: Mon Jan 11 16:35:08 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 11 16:35:08 2016 -0500 Merge topic 'FindwxWidgets-use-isystem' into next 4d05f195 FindwxWidgets: Drop suppression of -isystem https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4d05f195d9518eb5075f5b2a024f6c5874aab042 commit 4d05f195d9518eb5075f5b2a024f6c5874aab042 Author: Brad King AuthorDate: Mon Jan 11 16:21:13 2016 -0500 Commit: Brad King CommitDate: Mon Jan 11 16:26:24 2016 -0500 FindwxWidgets: Drop suppression of -isystem This was added by commit v2.8.0~2292 (... Set variable wxWidgets_INCLUDE_DIRS_NO_SYSTEM on the Mac ..., 2008-04-16) and updated by commit v2.8.9~183^2 (FindwxWidgets: Do not use -isystem on OpenBSD, 2012-05-14). Since the underlying cause was never investigated fully we do not know the conditions under which -isystem breaks wxWidgets, but suppressing -isystem is problematic for users that do not want to see warnings in wxWidgets headers. Simply drop the special case for now so we can see whether anyone hits the problem again, at which point it can be investigated in more detail. Reported-by: Simon Wells diff --git a/Modules/FindwxWidgets.cmake b/Modules/FindwxWidgets.cmake index 9037594..49ce57e 100644 --- a/Modules/FindwxWidgets.cmake +++ b/Modules/FindwxWidgets.cmake @@ -188,18 +188,6 @@ set(wxWidgets_LIBRARIES "") set(wxWidgets_LIBRARY_DIRS "") set(wxWidgets_CXX_FLAGS "") -# Using SYSTEM with INCLUDE_DIRECTORIES in conjunction with wxWidgets on -# the Mac produces compiler errors. Set wxWidgets_INCLUDE_DIRS_NO_SYSTEM -# to prevent UsewxWidgets.cmake from using SYSTEM. -# -# See cmake mailing list discussions for more info: -# https://cmake.org/pipermail/cmake/2008-April/021115.html -# https://cmake.org/pipermail/cmake/2008-April/021146.html -# -if(APPLE OR CMAKE_CXX_PLATFORM_ID MATCHES "OpenBSD") - set(wxWidgets_INCLUDE_DIRS_NO_SYSTEM 1) -endif() - # DEPRECATED: This is a patch to support the DEPRECATED use of # wxWidgets_USE_LIBS. # ----------------------------------------------------------------------- Summary of changes: Modules/FindwxWidgets.cmake | 12 ------------ 1 file changed, 12 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Tue Jan 12 00:01:12 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Tue, 12 Jan 2016 00:01:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-801-gcd9a59b Message-ID: <20160112050112.DA7FDE294E@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 cd9a59b1993bc7732dae4d683c5864847f36a046 (commit) from cedbb7994dddce2c3fdf846bf4563c846adf4632 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cd9a59b1993bc7732dae4d683c5864847f36a046 commit cd9a59b1993bc7732dae4d683c5864847f36a046 Author: Kitware Robot AuthorDate: Tue Jan 12 00:01:09 2016 -0500 Commit: Kitware Robot CommitDate: Tue Jan 12 00:01:09 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index d44f58e..585f6e0 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 4) -set(CMake_VERSION_PATCH 20160111) +set(CMake_VERSION_PATCH 20160112) #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 Jan 12 10:23:00 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:23:00 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-805-gb3c10ef Message-ID: <20160112152300.D5A31E2861@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 b3c10efb0885e2ed23a04cbaf967de23d921ffc8 (commit) via b3677b35d320cce5d23831ec398d6bb283d1444e (commit) via c22da7cff74a293d6362598c2a381147d658022f (commit) via 4ca9df8bd1991870a8a4acfeae26933e8ca7dc9a (commit) from cd9a59b1993bc7732dae4d683c5864847f36a046 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b3c10efb0885e2ed23a04cbaf967de23d921ffc8 commit b3c10efb0885e2ed23a04cbaf967de23d921ffc8 Merge: cd9a59b b3677b3 Author: Brad King AuthorDate: Tue Jan 12 10:22:59 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 10:22:59 2016 -0500 Merge topic 'vs-link-debug-property' b3677b35 VS: Map the link `/debug` to its IDE property c22da7cf VS: Drop unused condition in link debug flag generation 4ca9df8b cmIDEOptions: Add support for case-insensitive flags ----------------------------------------------------------------------- Summary of changes: Source/cmIDEFlagTable.h | 1 + Source/cmIDEOptions.cxx | 10 ++++++++-- Source/cmVS10LinkFlagTable.h | 3 ++- Source/cmVS11LinkFlagTable.h | 3 ++- Source/cmVS12LinkFlagTable.h | 3 ++- Source/cmVS14LinkFlagTable.h | 3 ++- Source/cmVisualStudio10TargetGenerator.cxx | 24 +++++------------------- 7 files changed, 22 insertions(+), 25 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:23:03 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:23:03 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-807-g31a58b4 Message-ID: <20160112152304.016D2E24FE@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 31a58b438f1d597d10835db30edeb1283a4d4829 (commit) via af39f11521af7fc2ec037103df1ad5a616dd7f19 (commit) from b3c10efb0885e2ed23a04cbaf967de23d921ffc8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=31a58b438f1d597d10835db30edeb1283a4d4829 commit 31a58b438f1d597d10835db30edeb1283a4d4829 Merge: b3c10ef af39f11 Author: Brad King AuthorDate: Tue Jan 12 10:23:02 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 10:23:02 2016 -0500 Merge topic 'vs-global-properties' af39f115 VS: Implement VS_GLOBAL_* target properties in VS 2010+ (#13666) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/vs-global-properties.rst | 5 +++++ Source/cmVisualStudio10TargetGenerator.cxx | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 Help/release/dev/vs-global-properties.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:23:06 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:23:06 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-809-g6262fb2 Message-ID: <20160112152306.CDF58E26DD@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 6262fb2f4e10995026710802b213bdd307e0d7b8 (commit) via 3baca6364bb1569e6856337d80e54b37a96d017e (commit) from 31a58b438f1d597d10835db30edeb1283a4d4829 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6262fb2f4e10995026710802b213bdd307e0d7b8 commit 6262fb2f4e10995026710802b213bdd307e0d7b8 Merge: 31a58b4 3baca63 Author: Brad King AuthorDate: Tue Jan 12 10:23:05 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 10:23:05 2016 -0500 Merge topic 'mingw-clang-compile-features' 3baca636 Record compile features for MinGW Clang on Windows (#15897) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/mingw-clang-compile-features.rst | 5 +++++ Modules/Compiler/Clang-CXX.cmake | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 Help/release/dev/mingw-clang-compile-features.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:23:09 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:23:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-812-g0355421 Message-ID: <20160112152309.7E8EBE2872@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 03554210357b8378ac907ee24cd39c699080be50 (commit) via 9821924d45e0a9a22e8366060f41d6d87c26622f (commit) via 8e7356a2921c769c091c52140564b04108e692c4 (commit) from 6262fb2f4e10995026710802b213bdd307e0d7b8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=03554210357b8378ac907ee24cd39c699080be50 commit 03554210357b8378ac907ee24cd39c699080be50 Merge: 6262fb2 9821924 Author: Brad King AuthorDate: Tue Jan 12 10:23:07 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 10:23:07 2016 -0500 Merge topic 'update-kwsys' 9821924d Merge branch 'upstream-KWSys' into update-kwsys 8e7356a2 KWSys 2016-01-11 (e8bf616e) ----------------------------------------------------------------------- Summary of changes: Source/kwsys/MD5.c | 4 ++-- Source/kwsys/ProcessUNIX.c | 4 ++-- Source/kwsys/SystemTools.cxx | 21 ++++++--------------- 3 files changed, 10 insertions(+), 19 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:23:12 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:23:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-814-g3e4da61 Message-ID: <20160112152312.28D0CE2878@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 3e4da6144723450a287a78690d1f9e348c85a4e7 (commit) via 4d05f195d9518eb5075f5b2a024f6c5874aab042 (commit) from 03554210357b8378ac907ee24cd39c699080be50 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3e4da6144723450a287a78690d1f9e348c85a4e7 commit 3e4da6144723450a287a78690d1f9e348c85a4e7 Merge: 0355421 4d05f19 Author: Brad King AuthorDate: Tue Jan 12 10:23:10 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 10:23:10 2016 -0500 Merge topic 'FindwxWidgets-use-isystem' 4d05f195 FindwxWidgets: Drop suppression of -isystem ----------------------------------------------------------------------- Summary of changes: Modules/FindwxWidgets.cmake | 12 ------------ 1 file changed, 12 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:23:34 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:23:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1914-gadbc363 Message-ID: <20160112152334.0F5F6E1FDF@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 adbc363bd97e8c8e52bf0dc72ce24232ec0cfb0e (commit) via 3e4da6144723450a287a78690d1f9e348c85a4e7 (commit) via 03554210357b8378ac907ee24cd39c699080be50 (commit) via 6262fb2f4e10995026710802b213bdd307e0d7b8 (commit) via 31a58b438f1d597d10835db30edeb1283a4d4829 (commit) via b3c10efb0885e2ed23a04cbaf967de23d921ffc8 (commit) via cd9a59b1993bc7732dae4d683c5864847f36a046 (commit) from 77b30076c63f1e8f3155148a0c9815745b58d24c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=adbc363bd97e8c8e52bf0dc72ce24232ec0cfb0e commit adbc363bd97e8c8e52bf0dc72ce24232ec0cfb0e Merge: 77b3007 3e4da61 Author: Brad King AuthorDate: Tue Jan 12 10:23:24 2016 -0500 Commit: Brad King CommitDate: Tue Jan 12 10:23:24 2016 -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 Jan 12 10:53:48 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:53:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-818-gae7398c Message-ID: <20160112155349.EEB82E29A6@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 ae7398c0a7d2a094f932fada3e4d0675a30afb6a (commit) via a57caf7eecdfe61e4ac5f63b145fc9269610f3f0 (commit) via ad594de8cc9c4063830df58453b0679c209ff4d8 (commit) via c173e37fa32b9d212cc6305f5e6dc881ba34e140 (commit) from 3e4da6144723450a287a78690d1f9e348c85a4e7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae7398c0a7d2a094f932fada3e4d0675a30afb6a commit ae7398c0a7d2a094f932fada3e4d0675a30afb6a Merge: 3e4da61 a57caf7 Author: Brad King AuthorDate: Tue Jan 12 10:53:45 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 10:53:45 2016 -0500 Merge topic 'vs-win10-sdk' a57caf7e VS: Fix Windows 10 SDK version selection (#15831) ad594de8 cmSystemTools: Add VersionCompareEqual helper c173e37f VS: Do not select a partial Windows 10 SDK folder (#15831) ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalVisualStudio14Generator.cxx | 42 +++++++++++++++++----------- Source/cmSystemTools.cxx | 8 ++++++ Source/cmSystemTools.h | 2 ++ 3 files changed, 35 insertions(+), 17 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:54:15 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:54:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1916-g84b0545 Message-ID: <20160112155415.EC59DE29D3@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 84b0545fcf7b259dd0d995c8d9aedf7c1e55500d (commit) via ae7398c0a7d2a094f932fada3e4d0675a30afb6a (commit) from adbc363bd97e8c8e52bf0dc72ce24232ec0cfb0e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=84b0545fcf7b259dd0d995c8d9aedf7c1e55500d commit 84b0545fcf7b259dd0d995c8d9aedf7c1e55500d Merge: adbc363 ae7398c Author: Brad King AuthorDate: Tue Jan 12 10:54:05 2016 -0500 Commit: Brad King CommitDate: Tue Jan 12 10:54:05 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:55:33 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:55:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-821-gb500972 Message-ID: <20160112155533.DDBA6E2A6B@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 b5009720d3020021f189570d72c099963795a5c5 (commit) via e1f9d3c0a01fa62eaf933142cb07308eba57acd9 (commit) via cc5dcb3876851abb7927367d23085d256a0b3e15 (commit) from ae7398c0a7d2a094f932fada3e4d0675a30afb6a (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 Jan 12 10:55:34 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:55:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1920-g3a128a8 Message-ID: <20160112155534.17454E2A70@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 3a128a8198be563ea3be57b93c8c8100b515efff (commit) via b5009720d3020021f189570d72c099963795a5c5 (commit) via e1f9d3c0a01fa62eaf933142cb07308eba57acd9 (commit) via cc5dcb3876851abb7927367d23085d256a0b3e15 (commit) from 84b0545fcf7b259dd0d995c8d9aedf7c1e55500d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3a128a8198be563ea3be57b93c8c8100b515efff commit 3a128a8198be563ea3be57b93c8c8100b515efff Merge: 84b0545 b500972 Author: Brad King AuthorDate: Tue Jan 12 10:55:14 2016 -0500 Commit: Brad King CommitDate: Tue Jan 12 10:55:14 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 10:55:34 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 10:55:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.4.1-8-ge1f9d3c Message-ID: <20160112155534.27D9FE2A71@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 e1f9d3c0a01fa62eaf933142cb07308eba57acd9 (commit) via f086c665da00228cabf465dc1eb7223d40fd6270 (commit) via cc5dcb3876851abb7927367d23085d256a0b3e15 (commit) via d9bf5206d007507fff3e1a89b8f49d7960a209c8 (commit) from a9e8b123de79a65074dab1944bf80d94dc101b12 (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/CMakeDetermineCompilerId.cmake | 3 --- Source/cmVisualStudio10TargetGenerator.cxx | 20 ++++++++++++++++++-- 2 files changed, 18 insertions(+), 5 deletions(-) hooks/post-receive -- CMake From matt.mccormick at kitware.com Tue Jan 12 12:27:24 2016 From: matt.mccormick at kitware.com (Matt McCormick) Date: Tue, 12 Jan 2016 12:27:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1924-g3e1fca7 Message-ID: <20160112172724.4F0C8E2A2D@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 3e1fca746416fb82ed79e02e2248c8c26f3549a2 (commit) via 8c8e53d06011ef476780d10601adac78baf8aead (commit) via d50cbbb03d53da6b990402a482a56b3163807dcb (commit) via 31b4700ed640bee962f9db9ce25fa84261a944d2 (commit) from 3a128a8198be563ea3be57b93c8c8100b515efff (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3e1fca746416fb82ed79e02e2248c8c26f3549a2 commit 3e1fca746416fb82ed79e02e2248c8c26f3549a2 Merge: 3a128a8 8c8e53d Author: Matt McCormick AuthorDate: Tue Jan 12 12:27:23 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 12:27:23 2016 -0500 Merge topic 'FindDCMTK-update' into next 8c8e53d0 FindDCMTK: Minor documentation grammatical issues. d50cbbb0 FindDCMTK: Obey QUIET option for find_package. 31b4700e FindDCMTK: Improve compatibility with DCMTKConfig.cmake. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8c8e53d06011ef476780d10601adac78baf8aead commit 8c8e53d06011ef476780d10601adac78baf8aead Author: Matt McCormick AuthorDate: Tue Jan 12 12:25:15 2016 -0500 Commit: Matt McCormick CommitDate: Tue Jan 12 12:25:15 2016 -0500 FindDCMTK: Minor documentation grammatical issues. Also remove CTK integration reference to avoid confusion. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index 89e9c4f..115c26b 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -16,11 +16,11 @@ # the source (default to /usr) # # -# This file is able to find version of DCMTK that do or do not export +# This file is able to find version of DCMTK that does or does not export # a DCMTKConfig.cmake file. # # IMPORTANT: A set of patches has been contributed to DCMTK -# maintainers, as soon as: +# maintainers and merged upstream. As soon as: # (1) it has been integrated upstream so that it is available in # an official release (for example X.Y.Z), # (2) code bases have been updated to build against X.Y.Z @@ -65,22 +65,17 @@ # [X] DCMTKConfig ..: Means that the version of DCMTK exports a DCMTKConfig.cmake file. # # -# -# In CTK commits 52d953 and 74b4b07, the FindDCMTK.cmake module has been updated to be able -# to find both version of DCMTK ([ ] DCMTKConfig and [X] DCMTKConfig). -# -# It is a two steps process: +# It is a two step process: # # * Step 1: Attempt to find DCMTK version providing a DCMTKConfig.cmake file. This is done # with the help of '' -# # * Step 2: If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* variables details below. # # # # Troubleshooting: # -# What to do if my project find a different version of DCMTK ? +# What to do if my project finds a different version of DCMTK? # # Remove DCMTK entry from the CMake registry. # Search for "CMake user package registry" on http://www.cmake.org/cmake/help/v2.8.9/cmake.html#command:find_package https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d50cbbb03d53da6b990402a482a56b3163807dcb commit d50cbbb03d53da6b990402a482a56b3163807dcb Author: Matt McCormick AuthorDate: Mon Jan 11 16:46:12 2016 -0500 Commit: Matt McCormick CommitDate: Mon Jan 11 16:51:36 2016 -0500 FindDCMTK: Obey QUIET option for find_package. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index 5693972..89e9c4f 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -135,18 +135,27 @@ set(_SAVED_DCMTK_DIR ${DCMTK_DIR}) # # Step1: Attempt to find a version of DCMTK providing a DCMTKConfig.cmake file. # -message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake") +if(NOT DCMTK_FIND_QUIETLY) + message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake") +endif() find_package(DCMTK QUIET NO_MODULE) if(DCMTK_FOUND AND NOT "x" STREQUAL "x${DCMTK_LIBRARIES}" AND NOT "x" STREQUAL "x${DCMTK_INCLUDE_DIRS}") - message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - ok") + + if(NOT DCMTK_FIND_QUIETLY) + message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - ok") + endif() return() else() - message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - failed") + if(NOT DCMTK_FIND_QUIETLY) + message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - failed") + endif() endif() -message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake") +if(NOT DCMTK_FIND_QUIETLY) + message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake") +endif() # Restore the value reset by the previous call to 'find_package(DCMTK QUIET NO_MODULE)' set(DCMTK_DIR ${_SAVED_DCMTK_DIR} CACHE PATH ${_dcmtk_dir_description} FORCE) @@ -340,6 +349,7 @@ if(DCMTK_FOUND AND UNIX AND NOT APPLE) set(CMAKE_REQUIRED_DEFINITIONS ) set(CMAKE_REQUIRED_INCLUDES ${DCMTK_INCLUDE_DIRS}) set(CMAKE_REQUIRED_LIBRARIES ${DCMTK_LIBRARIES}) + set(CMAKE_REQUIRED_QUIET ${DCMTK_FIND_QUIETLY}) check_cxx_source_compiles("#include \n#include \nint main(int,char*[]){return 0;}" DCMTK_HAVE_CONFIG_H_OPTIONAL ) @@ -348,4 +358,6 @@ if(DCMTK_FOUND AND UNIX AND NOT APPLE) endif() endif() -message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake - ok") +if(NOT DCMTK_FIND_QUIETLY) + message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake - ok") +endif() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=31b4700ed640bee962f9db9ce25fa84261a944d2 commit 31b4700ed640bee962f9db9ce25fa84261a944d2 Author: Jean-Christophe Fillion-Robin AuthorDate: Mon Jan 11 16:08:56 2016 -0500 Commit: Matt McCormick CommitDate: Mon Jan 11 16:51:24 2016 -0500 FindDCMTK: Improve compatibility with DCMTKConfig.cmake. This improvement to the FindDCMTK module improves compatibility with recent DCMTK, which provides a DCMTKConfig.cmake file. See the module comments for a compatibility matrix. It also provides DCMTK_INCLUDE_DIRS. Ported from CommonTK (commontk.org). diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index 91aafbb..5693972 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -2,9 +2,10 @@ # FindDCMTK # --------- # -# find DCMTK libraries and applications - -# DCMTK_INCLUDE_DIRS - Directories to include to use DCMTK +# - find DCMTK libraries and applications +# The module defines the following variables: +# +# DCMTK_INCLUDE_DIRS - Directories to include to use DCMTK # DCMTK_LIBRARIES - Files to link against to use DCMTK # DCMTK_FOUND - If false, don't try to use DCMTK # DCMTK_DIR - (optional) Source directory for DCMTK @@ -12,8 +13,91 @@ # DCMTK_DIR can be used to make it simpler to find the various include # directories and compiled libraries if you've just compiled it in the # source tree. Just set it to the root of the tree where you extracted -# the source (default to /usr/include/dcmtk/) - +# the source (default to /usr) +# +# +# This file is able to find version of DCMTK that do or do not export +# a DCMTKConfig.cmake file. +# +# IMPORTANT: A set of patches has been contributed to DCMTK +# maintainers, as soon as: +# (1) it has been integrated upstream so that it is available in +# an official release (for example X.Y.Z), +# (2) code bases have been updated to build against X.Y.Z +# This file could be removed. +# +# The set of patches is listed here: https://github.com/commontk/DCMTK/compare/79030ba...f461865 +# +# +# Waiting for this to happen, build systems will have to be able +# to support different versions of DCMTK. +# +# On any given system, the following combination of DCMTK version could be +# considered: +# +# | SYSTEM DCMTK + LOCAL DCMTK | Supported ? | +# --------------------------------------------------------------------------- +# Case A | NA + [ ] DCMTKConfig | YES | +# ------------------------------------------------------|-------------------- +# Case B | NA + [X] DCMTKConfig | YES | +# ------------------------------------------------------|-------------------- +# Case C | [ ] DCMTKConfig + NA | YES | +# ------------------------------------------------------|-------------------- +# Case D | [X] DCMTKConfig + NA | YES | +# ------------------------------------------------------|-------------------- +# Case E | [ ] DCMTKConfig + [ ] DCMTKConfig | YES (*) | +# ------------------------------------------------------|-------------------- +# Case F | [X] DCMTKConfig + [ ] DCMTKConfig | NO | +# ------------------------------------------------------|-------------------- +# Case G | [ ] DCMTKConfig + [X] DCMTKConfig | YES | +# ------------------------------------------------------|-------------------- +# Case H | [X] DCMTKConfig + [X] DCMTKConfig | YES | +# --------------------------------------------------------------------------- +# +# (*) See Troubleshooting section. +# +# Legend: +# +# NA ...............: Means that no System or Local DCMTK is available +# +# [ ] DCMTKConfig ..: Means that the version of DCMTK does NOT export a DCMTKConfig.cmake file. +# +# [X] DCMTKConfig ..: Means that the version of DCMTK exports a DCMTKConfig.cmake file. +# +# +# +# In CTK commits 52d953 and 74b4b07, the FindDCMTK.cmake module has been updated to be able +# to find both version of DCMTK ([ ] DCMTKConfig and [X] DCMTKConfig). +# +# It is a two steps process: +# +# * Step 1: Attempt to find DCMTK version providing a DCMTKConfig.cmake file. This is done +# with the help of '' +# +# * Step 2: If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* variables details below. +# +# +# +# Troubleshooting: +# +# What to do if my project find a different version of DCMTK ? +# +# Remove DCMTK entry from the CMake registry. +# Search for "CMake user package registry" on http://www.cmake.org/cmake/help/v2.8.9/cmake.html#command:find_package +# +# Details: As some point, the DCMTK build tree was exported [1][2][3]. Indeed, before the set of +# patches discussed above has been contributed to upstream DCMTK, an initial implementation of +# a DCMTK build system exporting its build tree has been implemented and has been tested by some +# folks. This had the effect of populating the CMake registry. +# +# Since Step1 does not exclude the CMake registry, when dealing with case E, the incorrect version of +# DCMTK could be found. +# +# [1] http://slicer-devel.65872.n3.nabble.com/Packaging-seems-to-work-again-tp4028121p4028134.html +# [2] https://www.assembla.com/spaces/slicerrt/tickets/244-dcmtk_dir-vs--dcmtkconfig-cmake?comment=267984263#comment:267984263 +# [3] http://www.cmake.org/cmake/help/v2.8.11/cmake.html#command:export +# +# #============================================================================= # Copyright 2004-2009 Kitware, Inc. # Copyright 2009-2010 Mathieu Malaterre @@ -26,7 +110,7 @@ # 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 +# (To distributed this file outside of CMake, substitute the full # License text for the above reference.) # @@ -35,50 +119,133 @@ # Modified for EasyViz by Thomas Sondergaard. # -if(NOT DCMTK_FOUND AND NOT DCMTK_DIR) - set(DCMTK_DIR - "/usr/include/dcmtk/" - CACHE - PATH - "Root of DCMTK source tree (optional).") - mark_as_advanced(DCMTK_DIR) +set(_dcmtk_dir_description "The directory of DCMTK build or install tree.") + +# Ensure that DCMTK_DIR is set to a reasonable default value +# so that DCMTK libraries can be found on a standard Unix distribution. +# It also overwrite the value of DCMTK_DIR after this one has been +# set by a successful discovery of DCMTK by the unpatched FindDCMTK.cmake module +# distributed with CMake (as of 0167cea) +if(NOT DCMTK_DIR OR DCMTK_DIR STREQUAL "/usr/include/dcmtk") + set(DCMTK_DIR "/usr" CACHE PATH ${_dcmtk_dir_description} FORCE) endif() +set(_SAVED_DCMTK_DIR ${DCMTK_DIR}) +# +# Step1: Attempt to find a version of DCMTK providing a DCMTKConfig.cmake file. +# +message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake") +find_package(DCMTK QUIET NO_MODULE) +if(DCMTK_FOUND + AND NOT "x" STREQUAL "x${DCMTK_LIBRARIES}" + AND NOT "x" STREQUAL "x${DCMTK_INCLUDE_DIRS}") + message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - ok") + return() +else() + message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - failed") +endif() + +message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake") + +# Restore the value reset by the previous call to 'find_package(DCMTK QUIET NO_MODULE)' +set(DCMTK_DIR ${_SAVED_DCMTK_DIR} CACHE PATH ${_dcmtk_dir_description} FORCE) + + +# +# Step2: Attempt to find a version of DCMTK that does NOT provide a DCMTKConfig.cmake file. +# + +# prefer DCMTK_DIR over default system paths like /usr/lib +if(DCMTK_DIR) + set(CMAKE_PREFIX_PATH ${DCMTK_DIR}/lib ${CMAKE_PREFIX_PATH}) # this is given to FIND_LIBRARY or FIND_PATH +endif() + +# Find all libraries, store debug and release separately foreach(lib - dcmdata - dcmimage - dcmimgle - dcmjpeg - dcmnet dcmpstat - dcmqrdb - dcmsign dcmsr + dcmsign dcmtls + dcmqrdb + dcmnet + dcmjpeg + dcmimage + dcmimgle + dcmdata + oflog + ofstd ijg12 ijg16 ijg8 - ofstd) + ) - find_library(DCMTK_${lib}_LIBRARY + # Find Release libraries + find_library(DCMTK_${lib}_LIBRARY_RELEASE ${lib} PATHS ${DCMTK_DIR}/${lib}/libsrc ${DCMTK_DIR}/${lib}/libsrc/Release - ${DCMTK_DIR}/${lib}/libsrc/Debug ${DCMTK_DIR}/${lib}/Release + ${DCMTK_DIR}/lib + ${DCMTK_DIR}/lib/Release + ${DCMTK_DIR}/dcmjpeg/lib${lib}/Release + NO_DEFAULT_PATH + ) + + # Find Debug libraries + find_library(DCMTK_${lib}_LIBRARY_DEBUG + ${lib}${DCMTK_CMAKE_DEBUG_POSTFIX} + PATHS + ${DCMTK_DIR}/${lib}/libsrc + ${DCMTK_DIR}/${lib}/libsrc/Debug ${DCMTK_DIR}/${lib}/Debug - ${DCMTK_DIR}/lib) + ${DCMTK_DIR}/lib + ${DCMTK_DIR}/lib/Debug + ${DCMTK_DIR}/dcmjpeg/lib${lib}/Debug + NO_DEFAULT_PATH + ) + + mark_as_advanced(DCMTK_${lib}_LIBRARY_RELEASE) + mark_as_advanced(DCMTK_${lib}_LIBRARY_DEBUG) - mark_as_advanced(DCMTK_${lib}_LIBRARY) + # Add libraries to variable according to build type + if(DCMTK_${lib}_LIBRARY_RELEASE) + list(APPEND DCMTK_LIBRARIES optimized ${DCMTK_${lib}_LIBRARY_RELEASE}) + endif() - if(DCMTK_${lib}_LIBRARY) - list(APPEND DCMTK_LIBRARIES ${DCMTK_${lib}_LIBRARY}) + if(DCMTK_${lib}_LIBRARY_DEBUG) + list(APPEND DCMTK_LIBRARIES debug ${DCMTK_${lib}_LIBRARY_DEBUG}) endif() endforeach() +set(CMAKE_THREAD_LIBS_INIT) +if(DCMTK_oflog_LIBRARY_RELEASE OR DCMTK_oflog_LIBRARY_DEBUG) + # Hack - Not having a DCMTKConfig.cmake file to read the settings from, we will attempt to + # find the library in all cases. + # Ideally, pthread library should be discovered only if DCMTK_WITH_THREADS is enabled. + set(CMAKE_THREAD_PREFER_PTHREAD TRUE) + find_package(Threads) +endif() + +if(CMAKE_THREAD_LIBS_INIT) + list(APPEND DCMTK_LIBRARIES ${CMAKE_THREAD_LIBS_INIT}) +endif() + +# +# SPECIFIC CASE FOR DCMTK BUILD DIR as DCMTK_DIR +# (as opposed to a DCMTK install dir) +# Have to find the source directory. +if(EXISTS ${DCMTK_DIR}/CMakeCache.txt) + load_cache(${DCMTK_DIR} READ_WITH_PREFIX "EXT" + DCMTK_SOURCE_DIR) + if(NOT EXISTS ${EXTDCMTK_SOURCE_DIR}) + message(FATAL_ERROR + "DCMTK build directory references +nonexistant DCMTK source directory ${EXTDCMTK_SOURCE_DIR}") + endif() +endif() set(DCMTK_config_TEST_HEADER osconfig.h) set(DCMTK_dcmdata_TEST_HEADER dctypes.h) @@ -92,6 +259,10 @@ set(DCMTK_dcmsign_TEST_HEADER sicert.h) set(DCMTK_dcmsr_TEST_HEADER dsrtree.h) set(DCMTK_dcmtls_TEST_HEADER tlslayer.h) set(DCMTK_ofstd_TEST_HEADER ofstdinc.h) +set(DCMTK_oflog_TEST_HEADER oflog.h) +set(DCMTK_dcmjpls_TEST_HEADER djlsutil.h) + +set(DCMTK_INCLUDE_DIR_NAMES) foreach(dir config @@ -99,31 +270,47 @@ foreach(dir dcmimage dcmimgle dcmjpeg + dcmjpls dcmnet dcmpstat dcmqrdb dcmsign dcmsr dcmtls - ofstd) + ofstd + oflog) + if(EXTDCMTK_SOURCE_DIR) + set(SOURCE_DIR_PATH + ${EXTDCMTK_SOURCE_DIR}/${dir}/include/dcmtk/${dir}) + endif() find_path(DCMTK_${dir}_INCLUDE_DIR ${DCMTK_${dir}_TEST_HEADER} PATHS ${DCMTK_DIR}/${dir}/include ${DCMTK_DIR}/${dir} - ${DCMTK_DIR}/include/${dir} ${DCMTK_DIR}/include/dcmtk/${dir} ${DCMTK_DIR}/${dir}/include/dcmtk/${dir} + ${DCMTK_DIR}/include/${dir} + ${SOURCE_DIR_PATH} ) mark_as_advanced(DCMTK_${dir}_INCLUDE_DIR) + list(APPEND DCMTK_INCLUDE_DIR_NAMES DCMTK_${dir}_INCLUDE_DIR) if(DCMTK_${dir}_INCLUDE_DIR) + # add the 'include' path so eg + #include "dcmtk/dcmimgle/dcmimage.h" + # works + get_filename_component(_include ${DCMTK_${dir}_INCLUDE_DIR} PATH) + get_filename_component(_include ${_include} PATH) list(APPEND DCMTK_INCLUDE_DIRS - ${DCMTK_${dir}_INCLUDE_DIR}) + ${DCMTK_${dir}_INCLUDE_DIR} + ${_include}) endif() endforeach() +list(APPEND DCMTK_INCLUDE_DIRS ${DCMTK_DIR}/include) + if(WIN32) list(APPEND DCMTK_LIBRARIES netapi32 wsock32) endif() @@ -137,21 +324,28 @@ if(DCMTK_ofstd_INCLUDE_DIR) mark_as_advanced(DCMTK_dcmtk_INCLUDE_DIR) endif() -include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -find_package_handle_standard_args(DCMTK DEFAULT_MSG - DCMTK_config_INCLUDE_DIR - DCMTK_ofstd_INCLUDE_DIR - DCMTK_ofstd_LIBRARY - DCMTK_dcmdata_INCLUDE_DIR - DCMTK_dcmdata_LIBRARY - DCMTK_dcmimgle_INCLUDE_DIR - DCMTK_dcmimgle_LIBRARY) - # Compatibility: This variable is deprecated set(DCMTK_INCLUDE_DIR ${DCMTK_INCLUDE_DIRS}) -foreach(executable dcmdump dcmdjpeg dcmdrle) - string(TOUPPER ${executable} EXECUTABLE) - find_program(DCMTK_${EXECUTABLE}_EXECUTABLE ${executable} ${DCMTK_DIR}/bin) - mark_as_advanced(DCMTK_${EXECUTABLE}_EXECUTABLE) -endforeach() +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(DCMTK + REQUIRED_VARS ${DCMTK_INCLUDE_DIR_NAMES} DCMTK_LIBRARIES + FAIL_MESSAGE "Please set DCMTK_DIR and re-run configure") + +# Workaround bug in packaging of DCMTK 3.6.0 on Debian. +# See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=637687 +if(DCMTK_FOUND AND UNIX AND NOT APPLE) + include(CheckCXXSourceCompiles) + set(CMAKE_REQUIRED_FLAGS ) + set(CMAKE_REQUIRED_DEFINITIONS ) + set(CMAKE_REQUIRED_INCLUDES ${DCMTK_INCLUDE_DIRS}) + set(CMAKE_REQUIRED_LIBRARIES ${DCMTK_LIBRARIES}) + check_cxx_source_compiles("#include \n#include \nint main(int,char*[]){return 0;}" + DCMTK_HAVE_CONFIG_H_OPTIONAL + ) + if(NOT DCMTK_HAVE_CONFIG_H_OPTIONAL) + set(DCMTK_DEFINITIONS "HAVE_CONFIG_H") + endif() +endif() + +message(STATUS "Trying to find DCMTK relying on FindDCMTK.cmake - ok") ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 291 +++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 246 insertions(+), 45 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 12:50:26 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 12:50:26 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1927-gc60dfb9 Message-ID: <20160112175026.C8052E2821@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 c60dfb9be771334ca19d146a99315680f9f53acd (commit) via 33cafa68b85b06c0a88105de24797df3fa44e551 (commit) via ffcc235c7ee2528638fd2ae4029eabcd5b0f1042 (commit) from 3e1fca746416fb82ed79e02e2248c8c26f3549a2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c60dfb9be771334ca19d146a99315680f9f53acd commit c60dfb9be771334ca19d146a99315680f9f53acd Merge: 3e1fca7 33cafa6 Author: Brad King AuthorDate: Tue Jan 12 12:50:26 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 12:50:26 2016 -0500 Merge topic 'update-kwsys' into next 33cafa68 Merge branch 'upstream-KWSys' into update-kwsys ffcc235c KWSys 2016-01-11 (bc07fbf7) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=33cafa68b85b06c0a88105de24797df3fa44e551 commit 33cafa68b85b06c0a88105de24797df3fa44e551 Merge: b500972 ffcc235 Author: Brad King AuthorDate: Tue Jan 12 10:55:49 2016 -0500 Commit: Brad King CommitDate: Tue Jan 12 10:55:49 2016 -0500 Merge branch 'upstream-KWSys' into update-kwsys * upstream-KWSys: KWSys 2016-01-11 (bc07fbf7) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ffcc235c7ee2528638fd2ae4029eabcd5b0f1042 commit ffcc235c7ee2528638fd2ae4029eabcd5b0f1042 Author: KWSys Upstream AuthorDate: Mon Jan 11 16:30:05 2016 +0000 Commit: Brad King CommitDate: Tue Jan 12 10:55:49 2016 -0500 KWSys 2016-01-11 (bc07fbf7) Code extracted from: http://public.kitware.com/KWSys.git at commit bc07fbf7a884713815b3ac72d85487bf6aa338f5 (master). Upstream Shortlog ----------------- James Johnston (1): bc07fbf7 Configure: Silence spurious warnings from Embarcadero compiler. diff --git a/Configure.h.in b/Configure.h.in index 70cf844..cd2d965 100644 --- a/Configure.h.in +++ b/Configure.h.in @@ -115,6 +115,11 @@ # pragma warning (disable: 4710) /* function not inlined */ # pragma warning (disable: 4786) /* identifier truncated in debug info */ # endif +# if defined(__BORLANDC__) && !defined(__cplusplus) + /* Code has no effect; raised by winnt.h in C (not C++) when ignoring an + unused parameter using "(param)" syntax (i.e. no cast to void). */ +# pragma warn -8019 +# endif #endif /* MSVC 6.0 in release mode will warn about code it produces with its diff --git a/SharedForward.h.in b/SharedForward.h.in index f22fa58..f80ef84 100644 --- a/SharedForward.h.in +++ b/SharedForward.h.in @@ -74,6 +74,12 @@ # endif #endif +#if defined(__BORLANDC__) && !defined(__cplusplus) + /* Code has no effect; raised by winnt.h in C (not C++) when ignoring an + unused parameter using "(param)" syntax (i.e. no cast to void). */ +# pragma warn -8019 +#endif + /*--------------------------------------------------------------------------*/ /* Full path to the directory in which this executable is built. Do ----------------------------------------------------------------------- Summary of changes: Source/kwsys/Configure.h.in | 5 +++++ Source/kwsys/SharedForward.h.in | 6 ++++++ 2 files changed, 11 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 13:42:34 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 13:42:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1929-g06de555 Message-ID: <20160112184234.D0441E22AE@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 06de555a31bed2eb841cee3cb1f0e669cbe9eeeb (commit) via 36d87e18a1ffe4d4f23fbd1bb4ba77c9bc10c099 (commit) from c60dfb9be771334ca19d146a99315680f9f53acd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=06de555a31bed2eb841cee3cb1f0e669cbe9eeeb commit 06de555a31bed2eb841cee3cb1f0e669cbe9eeeb Merge: c60dfb9 36d87e1 Author: Brad King AuthorDate: Tue Jan 12 13:42:34 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 13:42:34 2016 -0500 Merge topic 'FindPkgConfig-share-dir' into next 36d87e18 FindPkgConfig: add PREFIX/share/pkgconfig to PKG_CONFIG_PATH (#15910) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=36d87e18a1ffe4d4f23fbd1bb4ba77c9bc10c099 commit 36d87e18a1ffe4d4f23fbd1bb4ba77c9bc10c099 Author: Sam Thursfield AuthorDate: Tue Jan 12 15:48:55 2016 +0100 Commit: Brad King CommitDate: Tue Jan 12 13:42:17 2016 -0500 FindPkgConfig: add PREFIX/share/pkgconfig to PKG_CONFIG_PATH (#15910) Most packages install their .pc files into PREFIX/lib/pkgconfig, but some put them into PREFIX/share/pkgconfig. Either is valid, and pkg-config itself looks in both for the /usr and /usr/local prefixes. This fixes an issue where some packages (yajl, for example) are not found if they are installed into a non-standard prefix and CMAKE_PREFIX_PATH is used to locate them. diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake index d519c1d..eba6953 100644 --- a/Modules/FindPkgConfig.cmake +++ b/Modules/FindPkgConfig.cmake @@ -263,6 +263,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma endif() endif() list(APPEND _lib_dirs "lib/pkgconfig") + list(APPEND _lib_dirs "share/pkgconfig") # Check if directories exist and eventually append them to the # pkgconfig path list ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 1 + 1 file changed, 1 insertion(+) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 14:04:57 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 14:04:57 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1932-g68881bf Message-ID: <20160112190457.A6B3FE2F7F@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 68881bfe2e9765bef47e25836b7c464b04696064 (commit) via 821667018cc0ea049c52647b507d1a8e4bbe2c3a (commit) via 28f2d750edaf6ee1af660d3a0ae6792c65c47997 (commit) from 06de555a31bed2eb841cee3cb1f0e669cbe9eeeb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=68881bfe2e9765bef47e25836b7c464b04696064 commit 68881bfe2e9765bef47e25836b7c464b04696064 Merge: 06de555 8216670 Author: Brad King AuthorDate: Tue Jan 12 14:04:55 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 14:04:55 2016 -0500 Merge topic 'cmake-W-options' into next 82166701 cmake-gui: Add options to control warning-as-error messages 28f2d750 Add -Werror and -Wno-error command-line options https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=821667018cc0ea049c52647b507d1a8e4bbe2c3a commit 821667018cc0ea049c52647b507d1a8e4bbe2c3a Author: Michael Scott AuthorDate: Sat Dec 26 16:04:13 2015 +0000 Commit: Brad King CommitDate: Tue Jan 12 14:03:32 2016 -0500 cmake-gui: Add options to control warning-as-error messages Add new widgets to the warning messages dialog to control treating warnings as errors. diff --git a/Source/QtDialog/QCMake.cxx b/Source/QtDialog/QCMake.cxx index 71b7940..dd7c138 100644 --- a/Source/QtDialog/QCMake.cxx +++ b/Source/QtDialog/QCMake.cxx @@ -475,6 +475,26 @@ void QCMake::setSuppressDeprecatedWarnings(bool value) this->CMakeInstance->SetSuppressDeprecatedWarnings(value); } +bool QCMake::getDevWarningsAsErrors() +{ + return this->CMakeInstance->GetDevWarningsAsErrors(); +} + +void QCMake::setDevWarningsAsErrors(bool value) +{ + this->CMakeInstance->SetDevWarningsAsErrors(value); +} + +bool QCMake::getDeprecatedWarningsAsErrors() +{ + return this->CMakeInstance->GetDeprecatedWarningsAsErrors(); +} + +void QCMake::setDeprecatedWarningsAsErrors(bool value) +{ + this->CMakeInstance->SetDeprecatedWarningsAsErrors(value); +} + void QCMake::setWarnUninitializedMode(bool value) { this->WarnUninitializedMode = value; diff --git a/Source/QtDialog/QCMake.h b/Source/QtDialog/QCMake.h index 4b787b9..8942e7c 100644 --- a/Source/QtDialog/QCMake.h +++ b/Source/QtDialog/QCMake.h @@ -99,6 +99,14 @@ public slots: bool getSuppressDeprecatedWarnings(); /// set whether to do suppress deprecated warnings void setSuppressDeprecatedWarnings(bool value); + /// get whether to treat developer (author) warnings as errors + bool getDevWarningsAsErrors(); + /// set whether to treat developer (author) warnings as errors + void setDevWarningsAsErrors(bool value); + /// get whether to treat deprecated warnings as errors + bool getDeprecatedWarningsAsErrors(); + /// set whether to treat deprecated warnings as errors + void setDeprecatedWarningsAsErrors(bool value); /// set whether to run cmake with warnings about uninitialized variables void setWarnUninitializedMode(bool value); /// set whether to run cmake with warnings about unused variables diff --git a/Source/QtDialog/WarningMessagesDialog.cxx b/Source/QtDialog/WarningMessagesDialog.cxx index 735b71c..4bd541f 100644 --- a/Source/QtDialog/WarningMessagesDialog.cxx +++ b/Source/QtDialog/WarningMessagesDialog.cxx @@ -26,12 +26,27 @@ void WarningMessagesDialog::setInitialValues() this->cmakeInstance->getSuppressDevWarnings()); this->suppressDeprecatedWarnings->setChecked( this->cmakeInstance->getSuppressDeprecatedWarnings()); + + this->developerWarningsAsErrors->setChecked( + this->cmakeInstance->getDevWarningsAsErrors()); + this->deprecatedWarningsAsErrors->setChecked( + this->cmakeInstance->getDeprecatedWarningsAsErrors()); } void WarningMessagesDialog::setupSignals() { QObject::connect(this->buttonBox, SIGNAL(accepted()), this, SLOT(doAccept())); + + QObject::connect(this->suppressDeveloperWarnings, SIGNAL(stateChanged(int)), + this, SLOT(doSuppressDeveloperWarningsChanged(int))); + QObject::connect(this->suppressDeprecatedWarnings, SIGNAL(stateChanged(int)), + this, SLOT(doSuppressDeprecatedWarningsChanged(int))); + + QObject::connect(this->developerWarningsAsErrors, SIGNAL(stateChanged(int)), + this, SLOT(doDeveloperWarningsAsErrorsChanged(int))); + QObject::connect(this->deprecatedWarningsAsErrors, SIGNAL(stateChanged(int)), + this, SLOT(doDeprecatedWarningsAsErrorsChanged(int))); } void WarningMessagesDialog::doAccept() @@ -40,4 +55,45 @@ void WarningMessagesDialog::doAccept() this->suppressDeveloperWarnings->isChecked()); this->cmakeInstance->setSuppressDeprecatedWarnings( this->suppressDeprecatedWarnings->isChecked()); + + this->cmakeInstance->setDevWarningsAsErrors( + this->developerWarningsAsErrors->isChecked()); + this->cmakeInstance->setDeprecatedWarningsAsErrors( + this->deprecatedWarningsAsErrors->isChecked()); +} + +void WarningMessagesDialog::doSuppressDeveloperWarningsChanged(int state) +{ + // no warnings implies no errors either + if (state) + { + this->developerWarningsAsErrors->setChecked(false); + } +} + +void WarningMessagesDialog::doSuppressDeprecatedWarningsChanged(int state) +{ + // no warnings implies no errors either + if (state) + { + this->deprecatedWarningsAsErrors->setChecked(false); + } +} + +void WarningMessagesDialog::doDeveloperWarningsAsErrorsChanged(int state) +{ + // warnings as errors implies warnings are not suppressed + if (state) + { + this->suppressDeveloperWarnings->setChecked(false); + } +} + +void WarningMessagesDialog::doDeprecatedWarningsAsErrorsChanged(int state) +{ + // warnings as errors implies warnings are not suppressed + if (state) + { + this->suppressDeprecatedWarnings->setChecked(false); + } } diff --git a/Source/QtDialog/WarningMessagesDialog.h b/Source/QtDialog/WarningMessagesDialog.h index 028ec10..6c274a7 100644 --- a/Source/QtDialog/WarningMessagesDialog.h +++ b/Source/QtDialog/WarningMessagesDialog.h @@ -35,6 +35,28 @@ private slots: */ void doAccept(); + /** + * Handler for checked state changed event of the suppress developer warnings + * checkbox. + */ + void doSuppressDeveloperWarningsChanged(int state); + /** + * Handler for checked state changed event of the suppress deprecated + * warnings checkbox. + */ + void doSuppressDeprecatedWarningsChanged(int state); + + /** + * Handler for checked state changed event of the developer warnings as + * errors checkbox. + */ + void doDeveloperWarningsAsErrorsChanged(int state); + /** + * Handler for checked state changed event of the deprecated warnings as + * errors checkbox. + */ + void doDeprecatedWarningsAsErrorsChanged(int state); + private: QCMake* cmakeInstance; diff --git a/Source/QtDialog/WarningMessagesDialog.ui b/Source/QtDialog/WarningMessagesDialog.ui index 2367772..3b35cbc 100644 --- a/Source/QtDialog/WarningMessagesDialog.ui +++ b/Source/QtDialog/WarningMessagesDialog.ui @@ -6,8 +6,8 @@ 0 0 - 250 - 150 + 300 + 300 @@ -37,6 +37,9 @@ 0 + + Suppress developer (author) warnings. + Developer Warnings @@ -53,6 +56,9 @@ 0 + + Suppress deprecated warnings. + Deprecated Warnings @@ -65,6 +71,53 @@ + + + + 0 + 0 + + + + Warnings as Errors + + + + + + + 0 + 0 + + + + Treat developer (author) warnings as errors. + + + Developer Warnings as Errors + + + + + + + + 0 + 0 + + + + Treat deprecated warnings as errors. + + + Deprecated Warnings as Errors + + + + + + + https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=28f2d750edaf6ee1af660d3a0ae6792c65c47997 commit 28f2d750edaf6ee1af660d3a0ae6792c65c47997 Author: Michael Scott AuthorDate: Mon Dec 21 21:39:27 2015 +0000 Commit: Brad King CommitDate: Tue Jan 12 14:02:51 2016 -0500 Add -Werror and -Wno-error command-line options Expand the -W set of cmake options to include support for the -Werror and -Wno-error format, which is used to control upgrading and downgrading warning and error messages. Implement support for these new formats for the dev and deprecated message types. Add tests and updated documentation for new options. diff --git a/Help/manual/OPTIONS_BUILD.txt b/Help/manual/OPTIONS_BUILD.txt index 977264c..b428a74 100644 --- a/Help/manual/OPTIONS_BUILD.txt +++ b/Help/manual/OPTIONS_BUILD.txt @@ -86,6 +86,18 @@ Enable warnings that are meant for the author of the CMakeLists.txt files. By default this will also turn on deprecation warnings. +``-Werror=dev`` + Make developer warnings errors. + + Make warnings that are meant for the author of the CMakeLists.txt files + errors. By default this will also turn on deprecated warnings as errors. + +``-Wno-error=dev`` + Make developer warnings not errors. + + Make warnings that are meant for the author of the CMakeLists.txt files not + errors. By default this will also turn off deprecated warnings as errors. + ``-Wdeprecated`` Enable deprecated functionality warnings. @@ -97,3 +109,15 @@ Suppress warnings for usage of deprecated functionality, that are meant for the author of the CMakeLists.txt files. + +``-Werror=deprecated`` + Make deprecated macro and function warnings errors. + + Make warnings for usage of deprecated macros and functions, that are meant + for the author of the CMakeLists.txt files, errors. + +``-Wno-error=deprecated`` + Make deprecated macro and function warnings not errors. + + Make warnings for usage of deprecated macros and functions, that are meant + for the author of the CMakeLists.txt files, not errors. diff --git a/Help/release/dev/cmake-W-options.rst b/Help/release/dev/cmake-W-options.rst index 38e71f9..c055f96 100644 --- a/Help/release/dev/cmake-W-options.rst +++ b/Help/release/dev/cmake-W-options.rst @@ -13,3 +13,10 @@ cmake-W-options * Warnings about deprecated functionality can now be controlled in the :manual:`cmake-gui(1)` application. + +* The suppression of developer warnings as errors can now be controlled with + the new ``-Werror=dev`` and ``-Wno-error=dev`` :manual:`cmake(1)` options. + +* The :variable:`CMAKE_ERROR_DEPRECATED` variable can now be set using the + ``-Werror=deprecated`` and ``-Wno-error=deprecated`` :manual:`cmake(1)` + options. diff --git a/Source/cmMessageCommand.cxx b/Source/cmMessageCommand.cxx index 8272eb0..1c67cea 100644 --- a/Source/cmMessageCommand.cxx +++ b/Source/cmMessageCommand.cxx @@ -25,6 +25,7 @@ bool cmMessageCommand cmake::MessageType type = cmake::MESSAGE; bool status = false; bool fatal = false; + cmake* cm = this->Makefile->GetCMakeInstance(); if (*i == "SEND_ERROR") { type = cmake::FATAL_ERROR; @@ -43,15 +44,19 @@ bool cmMessageCommand } else if (*i == "AUTHOR_WARNING") { - if (this->Makefile->GetCMakeInstance()->GetSuppressDevWarnings( - this->Makefile)) + if (cm->GetDevWarningsAsErrors(this->Makefile)) { - return true; + fatal = true; + type = cmake::AUTHOR_ERROR; } - else + else if (!cm->GetSuppressDevWarnings(this->Makefile)) { type = cmake::AUTHOR_WARNING; } + else + { + return true; + } ++i; } else if (*i == "STATUS") @@ -61,22 +66,18 @@ bool cmMessageCommand } else if (*i == "DEPRECATION") { - if (this->Makefile->IsOn("CMAKE_ERROR_DEPRECATED")) + if (cm->GetDeprecatedWarningsAsErrors(this->Makefile)) { fatal = true; type = cmake::DEPRECATION_ERROR; } + else if (!cm->GetSuppressDeprecatedWarnings(this->Makefile)) + { + type = cmake::DEPRECATION_WARNING; + } else { - if (this->Makefile->GetCMakeInstance()->GetSuppressDeprecatedWarnings( - this->Makefile)) - { - return true; - } - else - { - type = cmake::DEPRECATION_WARNING; - } + return true; } ++i; } diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 7992495..8f6b952 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -291,6 +291,7 @@ bool cmake::SetCacheArgs(const std::vector& args) std::string name; bool foundNo = false; + bool foundError = false; unsigned int nameStartPosition = 0; if (entry.find("no-", nameStartPosition) == 0) @@ -299,6 +300,12 @@ bool cmake::SetCacheArgs(const std::vector& args) nameStartPosition += 3; } + if (entry.find("error=", nameStartPosition) == 0) + { + foundError = true; + nameStartPosition += 6; + } + name = entry.substr(nameStartPosition); if (name.empty()) { @@ -306,16 +313,27 @@ bool cmake::SetCacheArgs(const std::vector& args) return false; } - if (!foundNo) + if (!foundNo && !foundError) { // -W this->DiagLevels[name] = std::max(this->DiagLevels[name], DIAG_WARN); } + else if (foundNo && !foundError) + { + // -Wno + this->DiagLevels[name] = DIAG_IGNORE; + } + else if (!foundNo && foundError) + { + // -Werror= + this->DiagLevels[name] = DIAG_ERROR; + } else { - // -Wno - this->DiagLevels[name] = DIAG_IGNORE; + // -Wno-error= + this->DiagLevels[name] = std::min(this->DiagLevels[name], + DIAG_WARN); } } else if(arg.find("-U",0) == 0) @@ -1270,10 +1288,17 @@ int cmake::Configure() if (diagLevel == DIAG_IGNORE) { this->SetSuppressDeprecatedWarnings(true); + this->SetDeprecatedWarningsAsErrors(false); } else if (diagLevel == DIAG_WARN) { this->SetSuppressDeprecatedWarnings(false); + this->SetDeprecatedWarningsAsErrors(false); + } + else if (diagLevel == DIAG_ERROR) + { + this->SetSuppressDeprecatedWarnings(false); + this->SetDeprecatedWarningsAsErrors(true); } } @@ -1283,9 +1308,11 @@ int cmake::Configure() const char* cachedWarnDeprecated = this->State->GetCacheEntryValue("CMAKE_WARN_DEPRECATED"); + const char* cachedErrorDeprecated = + this->State->GetCacheEntryValue("CMAKE_ERROR_DEPRECATED"); // don't overwrite deprecated warning setting from a previous invocation - if (!cachedWarnDeprecated) + if (!cachedWarnDeprecated && !cachedErrorDeprecated) { setDeprecatedVariables = true; } @@ -1294,19 +1321,34 @@ int cmake::Configure() if (diagLevel == DIAG_IGNORE) { this->SetSuppressDevWarnings(true); + this->SetDevWarningsAsErrors(false); if (setDeprecatedVariables) { this->SetSuppressDeprecatedWarnings(true); + this->SetDeprecatedWarningsAsErrors(false); } } else if (diagLevel == DIAG_WARN) { this->SetSuppressDevWarnings(false); + this->SetDevWarningsAsErrors(false); + + if (setDeprecatedVariables) + { + this->SetSuppressDeprecatedWarnings(false); + this->SetDeprecatedWarningsAsErrors(false); + } + } + else if (diagLevel == DIAG_ERROR) + { + this->SetSuppressDevWarnings(false); + this->SetDevWarningsAsErrors(true); if (setDeprecatedVariables) { this->SetSuppressDeprecatedWarnings(false); + this->SetDeprecatedWarningsAsErrors(true); } } } @@ -2547,16 +2589,45 @@ static bool cmakeCheckStampList(const char* stampList) return true; } +cmake::MessageType cmake::ConvertMessageType(cmake::MessageType t) +{ + bool warningsAsErrors; + + if (t == cmake::AUTHOR_WARNING || t == cmake::AUTHOR_ERROR) + { + warningsAsErrors = this->GetDevWarningsAsErrors(); + if (warningsAsErrors && t == cmake::AUTHOR_WARNING) + { + t = cmake::AUTHOR_ERROR; + } + else if (!warningsAsErrors && t == cmake::AUTHOR_ERROR) + { + t = cmake::AUTHOR_WARNING; + } + } + else if (t == cmake::DEPRECATION_WARNING || t == cmake::DEPRECATION_ERROR) + { + warningsAsErrors = this->GetDeprecatedWarningsAsErrors(); + if (warningsAsErrors && t == cmake::DEPRECATION_WARNING) + { + t = cmake::DEPRECATION_ERROR; + } + else if (!warningsAsErrors && t == cmake::DEPRECATION_ERROR) + { + t = cmake::DEPRECATION_WARNING; + } + } + + return t; +} + bool cmake::IsMessageTypeVisible(cmake::MessageType t) { bool isVisible = true; if(t == cmake::DEPRECATION_ERROR) { - // if CMAKE_ERROR_DEPRECATED is on, show the message, otherwise suppress it - const char* errorDeprecated = this->State->GetCacheEntryValue( - "CMAKE_ERROR_DEPRECATED"); - if(cmSystemTools::IsOff(errorDeprecated)) + if(!this->GetDeprecatedWarningsAsErrors()) { isVisible = false; } @@ -2568,6 +2639,13 @@ bool cmake::IsMessageTypeVisible(cmake::MessageType t) isVisible = false; } } + else if (t == cmake::AUTHOR_ERROR) + { + if (!this->GetDevWarningsAsErrors()) + { + isVisible = false; + } + } else if (t == cmake::AUTHOR_WARNING) { if (this->GetSuppressDevWarnings()) @@ -2606,6 +2684,10 @@ bool cmake::PrintMessagePreamble(cmake::MessageType t, std::ostream& msg) { msg << "CMake Warning (dev)"; } + else if (t == cmake::AUTHOR_ERROR) + { + msg << "CMake Error (dev)"; + } else { msg << "CMake Warning"; @@ -2630,6 +2712,12 @@ void displayMessage(cmake::MessageType t, std::ostringstream& msg) msg << "This warning is for project developers. Use -Wno-dev to suppress it."; } + else if (t == cmake::AUTHOR_ERROR) + { + msg << + "This error is for project developers. Use -Wno-error=dev to suppress " + "it."; + } // Add a terminating blank line. msg << "\n"; @@ -2653,7 +2741,8 @@ void displayMessage(cmake::MessageType t, std::ostringstream& msg) // Output the message. if(t == cmake::FATAL_ERROR || t == cmake::INTERNAL_ERROR - || t == cmake::DEPRECATION_ERROR) + || t == cmake::DEPRECATION_ERROR + || t == cmake::AUTHOR_ERROR) { cmSystemTools::SetErrorOccured(); cmSystemTools::Message(msg.str().c_str(), "Error"); @@ -2671,6 +2760,17 @@ void cmake::IssueMessage(cmake::MessageType t, std::string const& text, { cmListFileBacktrace backtrace = bt; + if (!force) + { + // override the message type, if needed, for warnings and errors + cmake::MessageType override = this->ConvertMessageType(t); + if (override != t) + { + t = override; + force = true; + } + } + if (!force && !this->IsMessageTypeVisible(t)) { return; @@ -2698,6 +2798,17 @@ void cmake::IssueMessage(cmake::MessageType t, std::string const& text, cmListFileContext const& lfc, bool force) { + if (!force) + { + // override the message type, if needed, for warnings and errors + cmake::MessageType override = this->ConvertMessageType(t); + if (override != t) + { + t = override; + force = true; + } + } + if (!force && !this->IsMessageTypeVisible(t)) { return; @@ -2941,3 +3052,74 @@ void cmake::SetSuppressDeprecatedWarnings(bool b) "functionality.", cmState::INTERNAL); } + +bool cmake::GetDevWarningsAsErrors(cmMakefile const* mf) +{ + if (mf) + { + return (mf->IsSet("CMAKE_SUPPRESS_DEVELOPER_ERRORS") && + !mf->IsOn("CMAKE_SUPPRESS_DEVELOPER_ERRORS")); + } + else + { + const char* cacheEntryValue = this->State->GetCacheEntryValue( + "CMAKE_SUPPRESS_DEVELOPER_ERRORS"); + return cacheEntryValue && cmSystemTools::IsOff(cacheEntryValue); + } +} + +void cmake::SetDevWarningsAsErrors(bool b) +{ + std::string value; + + // equivalent to -Werror=dev + if (b) + { + value = "FALSE"; + } + // equivalent to -Wno-error=dev + else + { + value = "TRUE"; + } + + this->AddCacheEntry("CMAKE_SUPPRESS_DEVELOPER_ERRORS", value.c_str(), + "Suppress errors that are meant for" + " the author of the CMakeLists.txt files.", + cmState::INTERNAL); +} + +bool cmake::GetDeprecatedWarningsAsErrors(cmMakefile const* mf) +{ + if (mf) + { + return mf->IsOn("CMAKE_ERROR_DEPRECATED"); + } + else + { + const char* cacheEntryValue = this->State->GetCacheEntryValue( + "CMAKE_ERROR_DEPRECATED"); + return cmSystemTools::IsOn(cacheEntryValue); + } +} + +void cmake::SetDeprecatedWarningsAsErrors(bool b) +{ + std::string value; + + // equivalent to -Werror=deprecated + if (b) + { + value = "TRUE"; + } + // equivalent to -Wno-error=deprecated + else + { + value = "FALSE"; + } + + this->AddCacheEntry("CMAKE_ERROR_DEPRECATED", value.c_str(), + "Whether to issue deprecation errors for macros" + " and functions.", + cmState::INTERNAL); +} diff --git a/Source/cmake.h b/Source/cmake.h index 298d82b..8496705 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -59,6 +59,7 @@ class cmake public: enum MessageType { AUTHOR_WARNING, + AUTHOR_ERROR, FATAL_ERROR, INTERNAL_ERROR, MESSAGE, @@ -71,7 +72,8 @@ class cmake enum DiagLevel { DIAG_IGNORE, - DIAG_WARN + DIAG_WARN, + DIAG_ERROR }; /** \brief Describes the working modes of cmake */ @@ -330,6 +332,28 @@ class cmake */ void SetSuppressDeprecatedWarnings(bool v); + /* + * Get the state of treating developer (author) warnings as errors. + * Returns false, by default, if warnings should not be treated as errors, + * true otherwise. + */ + bool GetDevWarningsAsErrors(cmMakefile const* mf = NULL); + /** + * Set the state of treating developer (author) warnings as errors. + */ + void SetDevWarningsAsErrors(bool v); + + /* + * Get the state of treating deprecated warnings as errors. + * Returns false, by default, if warnings should not be treated as errors, + * true otherwise. + */ + bool GetDeprecatedWarningsAsErrors(cmMakefile const* mf = NULL); + /** + * Set the state of treating developer (author) warnings as errors. + */ + void SetDeprecatedWarningsAsErrors(bool v); + /** Display a message to the user. */ void IssueMessage(cmake::MessageType t, std::string const& text, cmListFileBacktrace const& backtrace = cmListFileBacktrace(), @@ -441,6 +465,12 @@ private: // Print a list of valid generators to stderr. void PrintGeneratorList(); + /** + * Convert a message type between a warning and an error, based on the state + * of the error output CMake variables, in the cache. + */ + cmake::MessageType ConvertMessageType(cmake::MessageType t); + /* * Check if messages of this type should be output, based on the state of the * warning and error output CMake variables, in the cache. @@ -457,10 +487,16 @@ private: {"-G ", "Specify a build system generator."},\ {"-T ", "Specify toolset name if supported by generator."}, \ {"-A ", "Specify platform name if supported by generator."}, \ - {"-Wno-dev", "Suppress developer warnings."},\ {"-Wdev", "Enable developer warnings."},\ + {"-Wno-dev", "Suppress developer warnings."},\ + {"-Werror=dev", "Make developer warnings errors."},\ + {"-Wno-error=dev", "Make developer warnings not errors."},\ {"-Wdeprecated", "Enable deprecation warnings."},\ - {"-Wno-deprecated", "Suppress deprecation warnings."} + {"-Wno-deprecated", "Suppress deprecation warnings."},\ + {"-Werror=deprecated", "Make deprecated macro and function warnings " \ + "errors."},\ + {"-Wno-error=deprecated", "Make deprecated macro and function warnings " \ + "not errors."} #define FOR_EACH_C_FEATURE(F) \ F(c_function_prototypes) \ diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake index 5e2200f..e77ba1f 100644 --- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake +++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake @@ -187,6 +187,14 @@ set(RunCMake_TEST_OPTIONS -Wdev) run_cmake(Wdev) unset(RunCMake_TEST_OPTIONS) +set(RunCMake_TEST_OPTIONS -Werror=dev) +run_cmake(Werror_dev) +unset(RunCMake_TEST_OPTIONS) + +set(RunCMake_TEST_OPTIONS -Wno-error=dev) +run_cmake(Wno-error_deprecated) +unset(RunCMake_TEST_OPTIONS) + # -Wdev should not override deprecated options if specified set(RunCMake_TEST_OPTIONS -Wdev -Wno-deprecated) run_cmake(Wno-deprecated) @@ -200,6 +208,11 @@ set(RunCMake_TEST_OPTIONS -Wdev) run_cmake(Wdeprecated) unset(RunCMake_TEST_OPTIONS) +# -Werror=dev should enable deprecated errors as well +set(RunCMake_TEST_OPTIONS -Werror=dev) +run_cmake(Werror_deprecated) +unset(RunCMake_TEST_OPTIONS) + set(RunCMake_TEST_OPTIONS -Wdeprecated) run_cmake(Wdeprecated) unset(RunCMake_TEST_OPTIONS) @@ -208,6 +221,14 @@ set(RunCMake_TEST_OPTIONS -Wno-deprecated) run_cmake(Wno-deprecated) unset(RunCMake_TEST_OPTIONS) +set(RunCMake_TEST_OPTIONS -Werror=deprecated) +run_cmake(Werror_deprecated) +unset(RunCMake_TEST_OPTIONS) + +set(RunCMake_TEST_OPTIONS -Wno-error=deprecated) +run_cmake(Wno-error_deprecated) +unset(RunCMake_TEST_OPTIONS) + # Dev warnings should be on by default run_cmake(Wdev) @@ -224,6 +245,7 @@ unset(RunCMake_TEST_OPTIONS) run_cmake_command(W_bad-arg1 ${CMAKE_COMMAND} -W) run_cmake_command(W_bad-arg2 ${CMAKE_COMMAND} -Wno-) +run_cmake_command(W_bad-arg3 ${CMAKE_COMMAND} -Werror=) set(RunCMake_TEST_OPTIONS --debug-output) run_cmake(debug-output) diff --git a/Tests/RunCMake/message/errormessage-result.txt b/Tests/RunCMake/CommandLine/W_bad-arg3-result.txt similarity index 100% copy from Tests/RunCMake/message/errormessage-result.txt copy to Tests/RunCMake/CommandLine/W_bad-arg3-result.txt diff --git a/Tests/RunCMake/CommandLine/W_bad-arg3-stderr.txt b/Tests/RunCMake/CommandLine/W_bad-arg3-stderr.txt new file mode 100644 index 0000000..cc643df --- /dev/null +++ b/Tests/RunCMake/CommandLine/W_bad-arg3-stderr.txt @@ -0,0 +1,2 @@ +CMake Error: No warning name provided. +CMake Error: Problem processing arguments. Aborting. diff --git a/Tests/RunCMake/message/errormessage-result.txt b/Tests/RunCMake/CommandLine/Werror_deprecated-result.txt similarity index 100% copy from Tests/RunCMake/message/errormessage-result.txt copy to Tests/RunCMake/CommandLine/Werror_deprecated-result.txt diff --git a/Tests/RunCMake/CommandLine/Werror_deprecated-stderr.txt b/Tests/RunCMake/CommandLine/Werror_deprecated-stderr.txt new file mode 100644 index 0000000..6acdc73 --- /dev/null +++ b/Tests/RunCMake/CommandLine/Werror_deprecated-stderr.txt @@ -0,0 +1,4 @@ +^CMake Deprecation Error at Werror_deprecated.cmake:1 \(message\): + Some deprecated warning +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/CommandLine/Werror_deprecated.cmake b/Tests/RunCMake/CommandLine/Werror_deprecated.cmake new file mode 100644 index 0000000..3142b42 --- /dev/null +++ b/Tests/RunCMake/CommandLine/Werror_deprecated.cmake @@ -0,0 +1 @@ +message(DEPRECATION "Some deprecated warning") diff --git a/Tests/RunCMake/message/errormessage-result.txt b/Tests/RunCMake/CommandLine/Werror_dev-result.txt similarity index 100% copy from Tests/RunCMake/message/errormessage-result.txt copy to Tests/RunCMake/CommandLine/Werror_dev-result.txt diff --git a/Tests/RunCMake/CommandLine/Werror_dev-stderr.txt b/Tests/RunCMake/CommandLine/Werror_dev-stderr.txt new file mode 100644 index 0000000..590ec96 --- /dev/null +++ b/Tests/RunCMake/CommandLine/Werror_dev-stderr.txt @@ -0,0 +1,11 @@ +^CMake Error \(dev\) at Werror_dev.cmake:4 \(include\): + include\(\) given empty file name \(ignored\). +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) +This error is for project developers. Use -Wno-error=dev to suppress it. + +CMake Error \(dev\) at Werror_dev.cmake:7 \(message\): + Some author warning +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) +This error is for project developers. Use -Wno-error=dev to suppress it.$ diff --git a/Tests/RunCMake/CommandLine/Werror_dev.cmake b/Tests/RunCMake/CommandLine/Werror_dev.cmake new file mode 100644 index 0000000..05f333a --- /dev/null +++ b/Tests/RunCMake/CommandLine/Werror_dev.cmake @@ -0,0 +1,7 @@ +# with -Werror=dev this will also cause an (upgraded) AUTHOR_ERROR message, +# checks that messages issued outside of the message command, by other CMake +# commands, also are affected by -Werror=dev +include("") + +# message command sets fatal occurred flag, so run it last +message(AUTHOR_WARNING "Some author warning") diff --git a/Tests/RunCMake/CommandLine/Wno-error_deprecated-stderr.txt b/Tests/RunCMake/CommandLine/Wno-error_deprecated-stderr.txt new file mode 100644 index 0000000..0ed1698 --- /dev/null +++ b/Tests/RunCMake/CommandLine/Wno-error_deprecated-stderr.txt @@ -0,0 +1,4 @@ +^CMake Deprecation Warning at Wno-error_deprecated.cmake:2 \(message\): + Some deprecated warning +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/CommandLine/Wno-error_deprecated.cmake b/Tests/RunCMake/CommandLine/Wno-error_deprecated.cmake new file mode 100644 index 0000000..676792a --- /dev/null +++ b/Tests/RunCMake/CommandLine/Wno-error_deprecated.cmake @@ -0,0 +1,2 @@ +# This should still produce a warning when -Wno-error=deprecated is specified +message(DEPRECATION "Some deprecated warning") diff --git a/Tests/RunCMake/CommandLine/Wno-error_dev-stderr.txt b/Tests/RunCMake/CommandLine/Wno-error_dev-stderr.txt new file mode 100644 index 0000000..dd22d55 --- /dev/null +++ b/Tests/RunCMake/CommandLine/Wno-error_dev-stderr.txt @@ -0,0 +1,11 @@ +^CMake Warning \(dev\) at Wno-error_dev.cmake:2 \(message\): + Some author warning +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) +This warning is for project developers. Use -Wno-dev to suppress it. + +CMake Warning \(dev\) at Wno-error_dev.cmake:6 \(include\): + include\(\) given empty file name \(ignored\). +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) +This warning is for project developers. Use -Wno-dev to suppress it.$ diff --git a/Tests/RunCMake/CommandLine/Wno-error_dev.cmake b/Tests/RunCMake/CommandLine/Wno-error_dev.cmake new file mode 100644 index 0000000..b700c19 --- /dev/null +++ b/Tests/RunCMake/CommandLine/Wno-error_dev.cmake @@ -0,0 +1,7 @@ +# This should still produce a warning when -Wno-error=dev is specified +message(AUTHOR_WARNING "Some author warning") + +# with -Wno-error=dev this will also cause an AUTHOR_WARNING message, checks +# that messages issued outside of the message command, by other CMake commands, +# also are affected by -Wno-error=dev +include("") diff --git a/Tests/RunCMake/message/RunCMakeTest.cmake b/Tests/RunCMake/message/RunCMakeTest.cmake index 294dfbb..9489693 100644 --- a/Tests/RunCMake/message/RunCMakeTest.cmake +++ b/Tests/RunCMake/message/RunCMakeTest.cmake @@ -3,4 +3,8 @@ include(RunCMake) run_cmake(defaultmessage) run_cmake(nomessage) run_cmake(warnmessage) -run_cmake(errormessage) +# message command sets fatal occurred flag, so check each type of error + +# seperately +run_cmake(errormessage_deprecated) +run_cmake(errormessage_dev) diff --git a/Tests/RunCMake/message/errormessage-stderr.txt b/Tests/RunCMake/message/errormessage-stderr.txt deleted file mode 100644 index 49e7ca9..0000000 --- a/Tests/RunCMake/message/errormessage-stderr.txt +++ /dev/null @@ -1,4 +0,0 @@ -CMake Deprecation Error at errormessage.cmake:4 \(message\): - This is an error -Call Stack \(most recent call first\): - CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/message/errormessage.cmake b/Tests/RunCMake/message/errormessage.cmake deleted file mode 100644 index 7d3b779..0000000 --- a/Tests/RunCMake/message/errormessage.cmake +++ /dev/null @@ -1,4 +0,0 @@ - -set(CMAKE_ERROR_DEPRECATED ON) - -message(DEPRECATION "This is an error") diff --git a/Tests/RunCMake/message/errormessage-result.txt b/Tests/RunCMake/message/errormessage_deprecated-result.txt similarity index 100% copy from Tests/RunCMake/message/errormessage-result.txt copy to Tests/RunCMake/message/errormessage_deprecated-result.txt diff --git a/Tests/RunCMake/message/errormessage_deprecated-stderr.txt b/Tests/RunCMake/message/errormessage_deprecated-stderr.txt new file mode 100644 index 0000000..dd21c3b --- /dev/null +++ b/Tests/RunCMake/message/errormessage_deprecated-stderr.txt @@ -0,0 +1,4 @@ +^CMake Deprecation Error at errormessage_deprecated.cmake:3 \(message\): + This is a deprecation error +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\)$ diff --git a/Tests/RunCMake/message/errormessage_deprecated.cmake b/Tests/RunCMake/message/errormessage_deprecated.cmake new file mode 100644 index 0000000..579275e --- /dev/null +++ b/Tests/RunCMake/message/errormessage_deprecated.cmake @@ -0,0 +1,3 @@ +set(CMAKE_ERROR_DEPRECATED ON) + +message(DEPRECATION "This is a deprecation error") diff --git a/Tests/RunCMake/message/errormessage-result.txt b/Tests/RunCMake/message/errormessage_dev-result.txt similarity index 100% rename from Tests/RunCMake/message/errormessage-result.txt rename to Tests/RunCMake/message/errormessage_dev-result.txt diff --git a/Tests/RunCMake/message/errormessage_dev-stderr.txt b/Tests/RunCMake/message/errormessage_dev-stderr.txt new file mode 100644 index 0000000..086b55c --- /dev/null +++ b/Tests/RunCMake/message/errormessage_dev-stderr.txt @@ -0,0 +1,5 @@ +^CMake Error \(dev\) at errormessage_dev.cmake:3 \(message\): + This is a author error +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) +This error is for project developers. Use -Wno-error=dev to suppress it.$ diff --git a/Tests/RunCMake/message/errormessage_dev.cmake b/Tests/RunCMake/message/errormessage_dev.cmake new file mode 100644 index 0000000..6ba1165 --- /dev/null +++ b/Tests/RunCMake/message/errormessage_dev.cmake @@ -0,0 +1,3 @@ +set(CMAKE_SUPPRESS_DEVELOPER_ERRORS OFF) + +message(AUTHOR_WARNING "This is a author error") ----------------------------------------------------------------------- Summary of changes: Help/manual/OPTIONS_BUILD.txt | 24 +++ Help/release/dev/cmake-W-options.rst | 7 + Source/QtDialog/QCMake.cxx | 20 ++ Source/QtDialog/QCMake.h | 8 + Source/QtDialog/WarningMessagesDialog.cxx | 56 ++++++ Source/QtDialog/WarningMessagesDialog.h | 22 +++ Source/QtDialog/WarningMessagesDialog.ui | 57 +++++- Source/cmMessageCommand.cxx | 29 +-- Source/cmake.cxx | 200 +++++++++++++++++++- Source/cmake.h | 42 +++- Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 22 +++ .../W_bad-arg3-result.txt} | 0 ...W_bad-arg2-stderr.txt => W_bad-arg3-stderr.txt} | 0 .../Werror_deprecated-result.txt} | 0 ...ted-stderr.txt => Werror_deprecated-stderr.txt} | 2 +- .../{Wdeprecated.cmake => Werror_deprecated.cmake} | 0 .../Werror_dev-result.txt} | 0 Tests/RunCMake/CommandLine/Werror_dev-stderr.txt | 11 ++ Tests/RunCMake/CommandLine/Werror_dev.cmake | 7 + ...-stderr.txt => Wno-error_deprecated-stderr.txt} | 2 +- .../CommandLine/Wno-error_deprecated.cmake | 2 + .../{Wdev-stderr.txt => Wno-error_dev-stderr.txt} | 4 +- Tests/RunCMake/CommandLine/Wno-error_dev.cmake | 7 + Tests/RunCMake/message/RunCMakeTest.cmake | 6 +- Tests/RunCMake/message/errormessage-result.txt | 1 - Tests/RunCMake/message/errormessage-stderr.txt | 4 - Tests/RunCMake/message/errormessage.cmake | 4 - .../errormessage_deprecated-result.txt} | 0 .../message/errormessage_deprecated-stderr.txt | 4 + .../RunCMake/message/errormessage_deprecated.cmake | 3 + .../errormessage_dev-result.txt} | 0 Tests/RunCMake/message/errormessage_dev-stderr.txt | 5 + Tests/RunCMake/message/errormessage_dev.cmake | 3 + 33 files changed, 510 insertions(+), 42 deletions(-) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/W_bad-arg3-result.txt} (100%) copy Tests/RunCMake/CommandLine/{W_bad-arg2-stderr.txt => W_bad-arg3-stderr.txt} (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/Werror_deprecated-result.txt} (100%) copy Tests/RunCMake/CommandLine/{Wdeprecated-stderr.txt => Werror_deprecated-stderr.txt} (58%) copy Tests/RunCMake/CommandLine/{Wdeprecated.cmake => Werror_deprecated.cmake} (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/Werror_dev-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/Werror_dev-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/Werror_dev.cmake copy Tests/RunCMake/CommandLine/{Wdeprecated-stderr.txt => Wno-error_deprecated-stderr.txt} (57%) create mode 100644 Tests/RunCMake/CommandLine/Wno-error_deprecated.cmake copy Tests/RunCMake/CommandLine/{Wdev-stderr.txt => Wno-error_dev-stderr.txt} (74%) create mode 100644 Tests/RunCMake/CommandLine/Wno-error_dev.cmake delete mode 100644 Tests/RunCMake/message/errormessage-result.txt delete mode 100644 Tests/RunCMake/message/errormessage-stderr.txt delete mode 100644 Tests/RunCMake/message/errormessage.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => message/errormessage_deprecated-result.txt} (100%) create mode 100644 Tests/RunCMake/message/errormessage_deprecated-stderr.txt create mode 100644 Tests/RunCMake/message/errormessage_deprecated.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => message/errormessage_dev-result.txt} (100%) create mode 100644 Tests/RunCMake/message/errormessage_dev-stderr.txt create mode 100644 Tests/RunCMake/message/errormessage_dev.cmake hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 12 14:10:43 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 12 Jan 2016 14:10:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1934-g21bc95c Message-ID: <20160112191043.C6C5CE1DD9@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 21bc95c2ff3b44500bc0bb2d777f1e4acb729676 (commit) via fc5d6592291aaff7238b7625468f9820a596d758 (commit) from 68881bfe2e9765bef47e25836b7c464b04696064 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=21bc95c2ff3b44500bc0bb2d777f1e4acb729676 commit 21bc95c2ff3b44500bc0bb2d777f1e4acb729676 Merge: 68881bf fc5d659 Author: Brad King AuthorDate: Tue Jan 12 14:10:42 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 14:10:42 2016 -0500 Merge topic 'vs-debug-fastlink' into next fc5d6592 VS: Map link `/debug:fastlink` flag to VS 2015 IDE property (#15894) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fc5d6592291aaff7238b7625468f9820a596d758 commit fc5d6592291aaff7238b7625468f9820a596d758 Author: Brad King AuthorDate: Tue Jan 12 13:56:17 2016 -0500 Commit: Brad King CommitDate: Tue Jan 12 13:59:59 2016 -0500 VS: Map link `/debug:fastlink` flag to VS 2015 IDE property (#15894) Suggested-by: Thomas Laguzzi diff --git a/Help/release/dev/vs-debug-fastlink.rst b/Help/release/dev/vs-debug-fastlink.rst new file mode 100644 index 0000000..c2e0599 --- /dev/null +++ b/Help/release/dev/vs-debug-fastlink.rst @@ -0,0 +1,5 @@ +vs-debug-fastlink +----------------- + +* The :generator:`Visual Studio 14 2015` generator learned to map the + ``/debug:fastlink`` linker flag to the ``.vcxproj`` file property. diff --git a/Source/cmVS14LinkFlagTable.h b/Source/cmVS14LinkFlagTable.h index 1e781e8..29e3d86 100644 --- a/Source/cmVS14LinkFlagTable.h +++ b/Source/cmVS14LinkFlagTable.h @@ -177,6 +177,8 @@ static cmVS7FlagTable cmVS14LinkFlagTable[] = {"UACUIAccess", "uiAccess='false'", "", "false", 0}, {"UACUIAccess", "uiAccess='true'", "", "true", 0}, {"ManifestEmbed", "manifest:embed", "", "true", 0}, + {"GenerateDebugInformation", "DEBUG:FASTLINK", "", "DebugFastLink", + cmVS7FlagTable::CaseInsensitive}, {"GenerateDebugInformation", "DEBUG", "", "Debug", cmVS7FlagTable::CaseInsensitive}, {"MapExports", "MAPINFO:EXPORTS", "", "true", 0}, ----------------------------------------------------------------------- Summary of changes: Help/release/dev/vs-debug-fastlink.rst | 5 +++++ Source/cmVS14LinkFlagTable.h | 2 ++ 2 files changed, 7 insertions(+) create mode 100644 Help/release/dev/vs-debug-fastlink.rst hooks/post-receive -- CMake From matt.mccormick at kitware.com Tue Jan 12 14:46:15 2016 From: matt.mccormick at kitware.com (Matt McCormick) Date: Tue, 12 Jan 2016 14:46:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1936-ge174bc9 Message-ID: <20160112194615.2E151E240E@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 e174bc906b2f65bbc17995f6722ea2e41a78b472 (commit) via d790f4feeadc863d47ffec9d901d4bf5519001df (commit) from 21bc95c2ff3b44500bc0bb2d777f1e4acb729676 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e174bc906b2f65bbc17995f6722ea2e41a78b472 commit e174bc906b2f65bbc17995f6722ea2e41a78b472 Merge: 21bc95c d790f4f Author: Matt McCormick AuthorDate: Tue Jan 12 14:46:14 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 14:46:14 2016 -0500 Merge topic 'FindDCMTK-update' into next d790f4fe FindDCMTK: Keep original copyright notice. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d790f4feeadc863d47ffec9d901d4bf5519001df commit d790f4feeadc863d47ffec9d901d4bf5519001df Author: Matt McCormick AuthorDate: Tue Jan 12 14:44:21 2016 -0500 Commit: Matt McCormick CommitDate: Tue Jan 12 14:45:11 2016 -0500 FindDCMTK: Keep original copyright notice. This is a follow-up to 31b4700ed640bee962f9db9ce25fa84261a944d2. Remove the extra character that was added to ensure the CMake.ModuleNotices test passes. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index 115c26b..e79c2cd 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -105,7 +105,7 @@ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the License for more information. #============================================================================= -# (To distributed this file outside of CMake, substitute the full +# (To distribute this file outside of CMake, substitute the full # License text for the above reference.) # ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From matt.mccormick at kitware.com Tue Jan 12 15:44:41 2016 From: matt.mccormick at kitware.com (Matt McCormick) Date: Tue, 12 Jan 2016 15:44:41 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1938-g3f3e6dd Message-ID: <20160112204441.E6192E2381@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 3f3e6ddf46580649e726293f64c6808256927167 (commit) via 361c199ff602d492d4261f0387d84913a0989473 (commit) from e174bc906b2f65bbc17995f6722ea2e41a78b472 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f3e6ddf46580649e726293f64c6808256927167 commit 3f3e6ddf46580649e726293f64c6808256927167 Merge: e174bc9 361c199 Author: Matt McCormick AuthorDate: Tue Jan 12 15:44:40 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 12 15:44:40 2016 -0500 Merge topic 'FindDCMTK-update' into next 361c199f FindDCMTK: Add reStructuredText formatting. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=361c199ff602d492d4261f0387d84913a0989473 commit 361c199ff602d492d4261f0387d84913a0989473 Author: Matt McCormick AuthorDate: Tue Jan 12 15:44:10 2016 -0500 Commit: Matt McCormick CommitDate: Tue Jan 12 15:44:10 2016 -0500 FindDCMTK: Add reStructuredText formatting. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index e79c2cd..1238616 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -1,32 +1,35 @@ #.rst: # FindDCMTK # --------- +# Find DCMTK libraries and applications # -# - find DCMTK libraries and applications -# The module defines the following variables: +# The module defines the following variables:: # # DCMTK_INCLUDE_DIRS - Directories to include to use DCMTK # DCMTK_LIBRARIES - Files to link against to use DCMTK # DCMTK_FOUND - If false, don't try to use DCMTK # DCMTK_DIR - (optional) Source directory for DCMTK # -# DCMTK_DIR can be used to make it simpler to find the various include +# `DCMTK_DIR` can be used to make it simpler to find the various include # directories and compiled libraries if you've just compiled it in the # source tree. Just set it to the root of the tree where you extracted -# the source (default to /usr) +# the source (default to `/usr`) # # # This file is able to find version of DCMTK that does or does not export -# a DCMTKConfig.cmake file. +# a *DCMTKConfig.cmake* file. # -# IMPORTANT: A set of patches has been contributed to DCMTK -# maintainers and merged upstream. As soon as: -# (1) it has been integrated upstream so that it is available in +# .. important:: +# A set of patches has been contributed to DCMTK +# maintainers and merged upstream. As soon as: +# +# 1) it has been integrated upstream so that it is available in # an official release (for example X.Y.Z), -# (2) code bases have been updated to build against X.Y.Z -# This file could be removed. +# 2) code bases have been updated to build against X.Y.Z +# +# This file could be removed. # -# The set of patches is listed here: https://github.com/commontk/DCMTK/compare/79030ba...f461865 +# The set of patches is listed here: https://github.com/commontk/DCMTK/compare/79030ba...f461865 # # # Waiting for this to happen, build systems will have to be able @@ -35,24 +38,25 @@ # On any given system, the following combination of DCMTK version could be # considered: # -# | SYSTEM DCMTK + LOCAL DCMTK | Supported ? | -# --------------------------------------------------------------------------- -# Case A | NA + [ ] DCMTKConfig | YES | -# ------------------------------------------------------|-------------------- -# Case B | NA + [X] DCMTKConfig | YES | -# ------------------------------------------------------|-------------------- -# Case C | [ ] DCMTKConfig + NA | YES | -# ------------------------------------------------------|-------------------- -# Case D | [X] DCMTKConfig + NA | YES | -# ------------------------------------------------------|-------------------- -# Case E | [ ] DCMTKConfig + [ ] DCMTKConfig | YES (*) | -# ------------------------------------------------------|-------------------- -# Case F | [X] DCMTKConfig + [ ] DCMTKConfig | NO | -# ------------------------------------------------------|-------------------- -# Case G | [ ] DCMTKConfig + [X] DCMTKConfig | YES | -# ------------------------------------------------------|-------------------- -# Case H | [X] DCMTKConfig + [X] DCMTKConfig | YES | -# --------------------------------------------------------------------------- +# +--------+---------------------+-----------------------+-------------------+ +# | | SYSTEM DCMTK | LOCAL DCMTK | Supported ? | +# +--------+---------------------+-----------------------+-------------------+ +# | Case A | NA | [ ] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case B | NA | [X] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case C | [ ] DCMTKConfig | NA | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case D | [X] DCMTKConfig | NA | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case E | [ ] DCMTKConfig | [ ] DCMTKConfig | YES (*) | +# +--------+---------------------+-----------------------+-------------------+ +# | Case F | [X] DCMTKConfig | [ ] DCMTKConfig | NO | +# +--------+---------------------+-----------------------+-------------------+ +# | Case G | [ ] DCMTKConfig | [X] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case H | [X] DCMTKConfig | [X] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ # # (*) See Troubleshooting section. # @@ -67,31 +71,31 @@ # # It is a two step process: # -# * Step 1: Attempt to find DCMTK version providing a DCMTKConfig.cmake file. This is done -# with the help of '' -# * Step 2: If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* variables details below. -# -# +# * Step 1: Attempt to find DCMTK version providing a DCMTKConfig.cmake file. This is done with the help of `''` +# * Step 2: If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* variables details below. # -# Troubleshooting: +# Troubleshooting +# ^^^^^^^^^^^^^^^ # -# What to do if my project finds a different version of DCMTK? +# What to do if my project finds a different version of DCMTK? # -# Remove DCMTK entry from the CMake registry. -# Search for "CMake user package registry" on http://www.cmake.org/cmake/help/v2.8.9/cmake.html#command:find_package +# Remove DCMTK entry from the CMake registry per :command:`find_package` +# documentation. # -# Details: As some point, the DCMTK build tree was exported [1][2][3]. Indeed, before the set of -# patches discussed above has been contributed to upstream DCMTK, an initial implementation of -# a DCMTK build system exporting its build tree has been implemented and has been tested by some -# folks. This had the effect of populating the CMake registry. +# Details +# ^^^^^^^ # -# Since Step1 does not exclude the CMake registry, when dealing with case E, the incorrect version of -# DCMTK could be found. +# At some point, the DCMTK build tree was exported [1][2][3]. Indeed, before the set of +# patches discussed above has been contributed to upstream DCMTK, an initial implementation of +# a DCMTK build system exporting its build tree has been implemented and has been tested by some +# folks. This had the effect of populating the CMake registry. # -# [1] http://slicer-devel.65872.n3.nabble.com/Packaging-seems-to-work-again-tp4028121p4028134.html -# [2] https://www.assembla.com/spaces/slicerrt/tickets/244-dcmtk_dir-vs--dcmtkconfig-cmake?comment=267984263#comment:267984263 -# [3] http://www.cmake.org/cmake/help/v2.8.11/cmake.html#command:export +# Since Step1 does not exclude the CMake registry, when dealing with case E, the incorrect version of +# DCMTK could be found. # +# - [1] http://slicer-devel.65872.n3.nabble.com/Packaging-seems-to-work-again-tp4028121p4028134.html +# - [2] https://www.assembla.com/spaces/slicerrt/tickets/244-dcmtk_dir-vs--dcmtkconfig-cmake?comment=267984263#comment:267984263 +# - [3] http://www.cmake.org/cmake/help/v2.8.11/cmake.html#command:export # #============================================================================= # Copyright 2004-2009 Kitware, Inc. ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 98 ++++++++++++++++++++++++----------------------- 1 file changed, 51 insertions(+), 47 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Wed Jan 13 00:01:12 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Wed, 13 Jan 2016 00:01:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-822-g39b7954 Message-ID: <20160113050112.D681DE2B3C@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 39b7954d4de734d6f08fab1a6fb442abc2e9bb5c (commit) from b5009720d3020021f189570d72c099963795a5c5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=39b7954d4de734d6f08fab1a6fb442abc2e9bb5c commit 39b7954d4de734d6f08fab1a6fb442abc2e9bb5c Author: Kitware Robot AuthorDate: Wed Jan 13 00:01:10 2016 -0500 Commit: Kitware Robot CommitDate: Wed Jan 13 00:01:10 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 585f6e0..f9fdef4 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 4) -set(CMake_VERSION_PATCH 20160112) +set(CMake_VERSION_PATCH 20160113) #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 Jan 13 09:10:10 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:10:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1940-ge0c8efb Message-ID: <20160113141010.8BAD6DB969@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 e0c8efbea200d306fb8202750d400b58d3c7185a (commit) via 630c8aa8435fced988545d396714398faa3426b1 (commit) from 3f3e6ddf46580649e726293f64c6808256927167 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e0c8efbea200d306fb8202750d400b58d3c7185a commit e0c8efbea200d306fb8202750d400b58d3c7185a Merge: 3f3e6dd 630c8aa Author: Brad King AuthorDate: Wed Jan 13 09:10:09 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:10:09 2016 -0500 Merge topic 'install-DIRECTORY-genex' into next 630c8aa8 install: Allow generator expressions in DIRECTORY https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=630c8aa8435fced988545d396714398faa3426b1 commit 630c8aa8435fced988545d396714398faa3426b1 Author: Yves Frederix AuthorDate: Tue Jan 12 21:01:07 2016 +0100 Commit: Brad King CommitDate: Wed Jan 13 09:02:06 2016 -0500 install: Allow generator expressions in DIRECTORY Teach install(DIRECTORY) to support generator expressions in the list of directories, much like install(FILES) already supports. diff --git a/Help/command/install.rst b/Help/command/install.rst index 423899e..5d2add7 100644 --- a/Help/command/install.rst +++ b/Help/command/install.rst @@ -271,9 +271,10 @@ will install the ``icons`` directory to ``share/myproj/icons`` and the file permissions, the scripts will be given specific permissions, and any ``CVS`` directories will be excluded. -The install destination given to the directory install ``DESTINATION`` may -use "generator expressions" with the syntax ``$<...>``. See the -:manual:`cmake-generator-expressions(7)` manual for available expressions. +The list of ``dirs...`` given to ``DIRECTORY`` and the install destination +given to the directory install ``DESTINATION`` may use "generator expressions" +with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` +manual for available expressions. Custom Installation Logic ^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/Help/release/dev/install-DIRECTORY-genex.rst b/Help/release/dev/install-DIRECTORY-genex.rst new file mode 100644 index 0000000..e48f19b --- /dev/null +++ b/Help/release/dev/install-DIRECTORY-genex.rst @@ -0,0 +1,6 @@ +install-DIRECTORY-genex +----------------------- + +* The :command:`install(DIRECTORY)` command learned to support + :manual:`generator expressions ` + in the list of directories. diff --git a/Source/cmInstallDirectoryGenerator.cxx b/Source/cmInstallDirectoryGenerator.cxx index ea27f61..f2e8609 100644 --- a/Source/cmInstallDirectoryGenerator.cxx +++ b/Source/cmInstallDirectoryGenerator.cxx @@ -36,6 +36,16 @@ cmInstallDirectoryGenerator { this->ActionsPerConfig = true; } + + // We need per-config actions if any directories have generator expressions. + for(std::vector::const_iterator i = dirs.begin(); + !this->ActionsPerConfig && i != dirs.end(); ++i) + { + if(cmGeneratorExpression::Find(*i) != std::string::npos) + { + this->ActionsPerConfig = true; + } + } } //---------------------------------------------------------------------------- @@ -60,7 +70,7 @@ cmInstallDirectoryGenerator::GenerateScriptActions(std::ostream& os, } else { - this->AddDirectoryInstallRule(os, "", indent); + this->AddDirectoryInstallRule(os, "", indent, this->Directories); } } @@ -69,20 +79,30 @@ void cmInstallDirectoryGenerator::GenerateScriptForConfig( const std::string& config, Indent const& indent) { - this->AddDirectoryInstallRule(os, config, indent); + std::vector dirs; + cmGeneratorExpression ge; + for(std::vector::const_iterator i = this->Directories.begin(); + i != this->Directories.end(); ++i) + { + cmsys::auto_ptr cge = ge.Parse(*i); + cmSystemTools::ExpandListArgument(cge->Evaluate( + this->LocalGenerator, config), dirs); + } + this->AddDirectoryInstallRule(os, config, indent, dirs); } void cmInstallDirectoryGenerator::AddDirectoryInstallRule( std::ostream& os, const std::string& config, - Indent const& indent) + Indent const& indent, + std::vector const& dirs) { // Write code to install the directories. const char* no_rename = 0; this->AddInstallRule(os, this->GetDestination(config), cmInstallType_DIRECTORY, - this->Directories, + dirs, this->Optional, this->FilePermissions.c_str(), this->DirPermissions.c_str(), diff --git a/Source/cmInstallDirectoryGenerator.h b/Source/cmInstallDirectoryGenerator.h index 04107e1..9b732d3 100644 --- a/Source/cmInstallDirectoryGenerator.h +++ b/Source/cmInstallDirectoryGenerator.h @@ -42,7 +42,8 @@ protected: Indent const& indent); void AddDirectoryInstallRule(std::ostream& os, const std::string& config, - Indent const& indent); + Indent const& indent, + std::vector const& dirs); cmLocalGenerator* LocalGenerator; std::vector Directories; std::string FilePermissions; diff --git a/Tests/ExportImport/Export/CMakeLists.txt b/Tests/ExportImport/Export/CMakeLists.txt index aedc89b..dcba9ac 100644 --- a/Tests/ExportImport/Export/CMakeLists.txt +++ b/Tests/ExportImport/Export/CMakeLists.txt @@ -551,5 +551,5 @@ install( ARCHIVE DESTINATION lib INCLUDES DESTINATION include/abs ) -install(DIRECTORY include/abs DESTINATION $<1:include>$<0:/wrong>) +install(DIRECTORY $<1:include/abs>$<0:/wrong> DESTINATION $<1:include>$<0:/wrong>) install(EXPORT expAbs NAMESPACE expAbs_ DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/expAbs) diff --git a/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad-result.txt b/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad-stderr.txt b/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad-stderr.txt new file mode 100644 index 0000000..9844158 --- /dev/null +++ b/Tests/RunCMake/install/DIRECTORY-DIRECTORY-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/DIRECTORY-DIRECTORY-bad.cmake b/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad.cmake new file mode 100644 index 0000000..ec0436d --- /dev/null +++ b/Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad.cmake @@ -0,0 +1 @@ +install(DIRECTORY $ DESTINATION .) diff --git a/Tests/RunCMake/install/RunCMakeTest.cmake b/Tests/RunCMake/install/RunCMakeTest.cmake index 043bd1f..2c1b29d 100644 --- a/Tests/RunCMake/install/RunCMakeTest.cmake +++ b/Tests/RunCMake/install/RunCMakeTest.cmake @@ -6,6 +6,7 @@ run_cmake(DIRECTORY-message-lazy) run_cmake(SkipInstallRulesWarning) run_cmake(SkipInstallRulesNoWarning1) run_cmake(SkipInstallRulesNoWarning2) +run_cmake(DIRECTORY-DIRECTORY-bad) run_cmake(DIRECTORY-DESTINATION-bad) run_cmake(FILES-DESTINATION-bad) run_cmake(TARGETS-DESTINATION-bad) diff --git a/Tests/SimpleInstall/CMakeLists.txt b/Tests/SimpleInstall/CMakeLists.txt index e365076..2737f18 100644 --- a/Tests/SimpleInstall/CMakeLists.txt +++ b/Tests/SimpleInstall/CMakeLists.txt @@ -252,7 +252,7 @@ else() file(REMOVE_RECURSE "${CMAKE_INSTALL_PREFIX}/MyTest/share/CVS") file(REMOVE_RECURSE "${CMAKE_INSTALL_PREFIX}/MyTest/share/TestSubDir/CVS") install( - DIRECTORY TestSubDir scripts/ DESTINATION $<1:MyTest/share>$<0:/wrong> + DIRECTORY TestSubDir $<1:scripts/>$<0:/wrong> DESTINATION $<1:MyTest/share>$<0:/wrong> FILE_PERMISSIONS OWNER_READ OWNER_WRITE DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE @@ -263,7 +263,7 @@ else() # Alternate directory installation for coverage. install( - DIRECTORY scripts/ DESTINATION $<1:MyTest/share/alt>$<0:/wrong> + DIRECTORY $<1:scripts/>$<0:/wrong> DESTINATION $<1:MyTest/share/alt>$<0:/wrong> COMPONENT Development USE_SOURCE_PERMISSIONS PATTERN "CVS" EXCLUDE diff --git a/Tests/SimpleInstallS2/CMakeLists.txt b/Tests/SimpleInstallS2/CMakeLists.txt index e365076..2737f18 100644 --- a/Tests/SimpleInstallS2/CMakeLists.txt +++ b/Tests/SimpleInstallS2/CMakeLists.txt @@ -252,7 +252,7 @@ else() file(REMOVE_RECURSE "${CMAKE_INSTALL_PREFIX}/MyTest/share/CVS") file(REMOVE_RECURSE "${CMAKE_INSTALL_PREFIX}/MyTest/share/TestSubDir/CVS") install( - DIRECTORY TestSubDir scripts/ DESTINATION $<1:MyTest/share>$<0:/wrong> + DIRECTORY TestSubDir $<1:scripts/>$<0:/wrong> DESTINATION $<1:MyTest/share>$<0:/wrong> FILE_PERMISSIONS OWNER_READ OWNER_WRITE DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE @@ -263,7 +263,7 @@ else() # Alternate directory installation for coverage. install( - DIRECTORY scripts/ DESTINATION $<1:MyTest/share/alt>$<0:/wrong> + DIRECTORY $<1:scripts/>$<0:/wrong> DESTINATION $<1:MyTest/share/alt>$<0:/wrong> COMPONENT Development USE_SOURCE_PERMISSIONS PATTERN "CVS" EXCLUDE ----------------------------------------------------------------------- Summary of changes: Help/command/install.rst | 7 ++--- Help/release/dev/install-DIRECTORY-genex.rst | 6 +++++ Source/cmInstallDirectoryGenerator.cxx | 28 +++++++++++++++++--- Source/cmInstallDirectoryGenerator.h | 3 ++- Tests/ExportImport/Export/CMakeLists.txt | 2 +- .../DIRECTORY-DIRECTORY-bad-result.txt} | 0 .../DIRECTORY-DIRECTORY-bad-stderr.txt} | 0 .../RunCMake/install/DIRECTORY-DIRECTORY-bad.cmake | 1 + Tests/RunCMake/install/RunCMakeTest.cmake | 1 + Tests/SimpleInstall/CMakeLists.txt | 4 +-- Tests/SimpleInstallS2/CMakeLists.txt | 4 +-- 11 files changed, 43 insertions(+), 13 deletions(-) create mode 100644 Help/release/dev/install-DIRECTORY-genex.rst copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => install/DIRECTORY-DIRECTORY-bad-result.txt} (100%) copy Tests/RunCMake/{XcodeProject/XcodeAttributeGenexError-stderr.txt => install/DIRECTORY-DIRECTORY-bad-stderr.txt} (100%) create mode 100644 Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad.cmake hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 13 09:33:14 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:33:14 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-825-gef3202f Message-ID: <20160113143314.BB7D6E2EE7@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 ef3202fb98bf3dd56ee5eca06f169270619064e3 (commit) via 33cafa68b85b06c0a88105de24797df3fa44e551 (commit) via ffcc235c7ee2528638fd2ae4029eabcd5b0f1042 (commit) from 39b7954d4de734d6f08fab1a6fb442abc2e9bb5c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ef3202fb98bf3dd56ee5eca06f169270619064e3 commit ef3202fb98bf3dd56ee5eca06f169270619064e3 Merge: 39b7954 33cafa6 Author: Brad King AuthorDate: Wed Jan 13 09:33:13 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:33:13 2016 -0500 Merge topic 'update-kwsys' 33cafa68 Merge branch 'upstream-KWSys' into update-kwsys ffcc235c KWSys 2016-01-11 (bc07fbf7) ----------------------------------------------------------------------- Summary of changes: Source/kwsys/Configure.h.in | 5 +++++ Source/kwsys/SharedForward.h.in | 6 ++++++ 2 files changed, 11 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 13 09:33:17 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:33:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-827-g5774f38 Message-ID: <20160113143317.47720E2EEE@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 5774f389cde220199d257af41f0188b09c6d3857 (commit) via 36d87e18a1ffe4d4f23fbd1bb4ba77c9bc10c099 (commit) from ef3202fb98bf3dd56ee5eca06f169270619064e3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5774f389cde220199d257af41f0188b09c6d3857 commit 5774f389cde220199d257af41f0188b09c6d3857 Merge: ef3202f 36d87e1 Author: Brad King AuthorDate: Wed Jan 13 09:33:15 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:33:15 2016 -0500 Merge topic 'FindPkgConfig-share-dir' 36d87e18 FindPkgConfig: add PREFIX/share/pkgconfig to PKG_CONFIG_PATH (#15910) ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 1 + 1 file changed, 1 insertion(+) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 13 09:33:20 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:33:20 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-830-g59dac28 Message-ID: <20160113143320.3ABFEE2EEB@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 59dac28856b6ba5971217e0cf907a76cc0dba82c (commit) via 821667018cc0ea049c52647b507d1a8e4bbe2c3a (commit) via 28f2d750edaf6ee1af660d3a0ae6792c65c47997 (commit) from 5774f389cde220199d257af41f0188b09c6d3857 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=59dac28856b6ba5971217e0cf907a76cc0dba82c commit 59dac28856b6ba5971217e0cf907a76cc0dba82c Merge: 5774f38 8216670 Author: Brad King AuthorDate: Wed Jan 13 09:33:18 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:33:18 2016 -0500 Merge topic 'cmake-W-options' 82166701 cmake-gui: Add options to control warning-as-error messages 28f2d750 Add -Werror and -Wno-error command-line options ----------------------------------------------------------------------- Summary of changes: Help/manual/OPTIONS_BUILD.txt | 24 +++ Help/release/dev/cmake-W-options.rst | 7 + Source/QtDialog/QCMake.cxx | 20 ++ Source/QtDialog/QCMake.h | 8 + Source/QtDialog/WarningMessagesDialog.cxx | 56 ++++++ Source/QtDialog/WarningMessagesDialog.h | 22 +++ Source/QtDialog/WarningMessagesDialog.ui | 57 +++++- Source/cmMessageCommand.cxx | 29 +-- Source/cmake.cxx | 200 +++++++++++++++++++- Source/cmake.h | 42 +++- Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 22 +++ .../W_bad-arg3-result.txt} | 0 ...W_bad-arg2-stderr.txt => W_bad-arg3-stderr.txt} | 0 .../Werror_deprecated-result.txt} | 0 ...ted-stderr.txt => Werror_deprecated-stderr.txt} | 2 +- .../{Wdeprecated.cmake => Werror_deprecated.cmake} | 0 .../Werror_dev-result.txt} | 0 Tests/RunCMake/CommandLine/Werror_dev-stderr.txt | 11 ++ Tests/RunCMake/CommandLine/Werror_dev.cmake | 7 + ...-stderr.txt => Wno-error_deprecated-stderr.txt} | 2 +- .../CommandLine/Wno-error_deprecated.cmake | 2 + .../{Wdev-stderr.txt => Wno-error_dev-stderr.txt} | 4 +- Tests/RunCMake/CommandLine/Wno-error_dev.cmake | 7 + Tests/RunCMake/message/RunCMakeTest.cmake | 6 +- Tests/RunCMake/message/errormessage-result.txt | 1 - Tests/RunCMake/message/errormessage-stderr.txt | 4 - Tests/RunCMake/message/errormessage.cmake | 4 - .../errormessage_deprecated-result.txt} | 0 .../message/errormessage_deprecated-stderr.txt | 4 + .../RunCMake/message/errormessage_deprecated.cmake | 3 + .../errormessage_dev-result.txt} | 0 Tests/RunCMake/message/errormessage_dev-stderr.txt | 5 + Tests/RunCMake/message/errormessage_dev.cmake | 3 + 33 files changed, 510 insertions(+), 42 deletions(-) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/W_bad-arg3-result.txt} (100%) copy Tests/RunCMake/CommandLine/{W_bad-arg2-stderr.txt => W_bad-arg3-stderr.txt} (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/Werror_deprecated-result.txt} (100%) copy Tests/RunCMake/CommandLine/{Wdeprecated-stderr.txt => Werror_deprecated-stderr.txt} (58%) copy Tests/RunCMake/CommandLine/{Wdeprecated.cmake => Werror_deprecated.cmake} (100%) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/Werror_dev-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/Werror_dev-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/Werror_dev.cmake copy Tests/RunCMake/CommandLine/{Wdeprecated-stderr.txt => Wno-error_deprecated-stderr.txt} (57%) create mode 100644 Tests/RunCMake/CommandLine/Wno-error_deprecated.cmake copy Tests/RunCMake/CommandLine/{Wdev-stderr.txt => Wno-error_dev-stderr.txt} (74%) create mode 100644 Tests/RunCMake/CommandLine/Wno-error_dev.cmake delete mode 100644 Tests/RunCMake/message/errormessage-result.txt delete mode 100644 Tests/RunCMake/message/errormessage-stderr.txt delete mode 100644 Tests/RunCMake/message/errormessage.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => message/errormessage_deprecated-result.txt} (100%) create mode 100644 Tests/RunCMake/message/errormessage_deprecated-stderr.txt create mode 100644 Tests/RunCMake/message/errormessage_deprecated.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => message/errormessage_dev-result.txt} (100%) create mode 100644 Tests/RunCMake/message/errormessage_dev-stderr.txt create mode 100644 Tests/RunCMake/message/errormessage_dev.cmake hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 13 09:33:22 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:33:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-832-g05ab4b7 Message-ID: <20160113143323.011D7E2EEC@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 05ab4b7c66cccb7b04b05e252671f3628d4795fc (commit) via fc5d6592291aaff7238b7625468f9820a596d758 (commit) from 59dac28856b6ba5971217e0cf907a76cc0dba82c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=05ab4b7c66cccb7b04b05e252671f3628d4795fc commit 05ab4b7c66cccb7b04b05e252671f3628d4795fc Merge: 59dac28 fc5d659 Author: Brad King AuthorDate: Wed Jan 13 09:33:21 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:33:21 2016 -0500 Merge topic 'vs-debug-fastlink' fc5d6592 VS: Map link `/debug:fastlink` flag to VS 2015 IDE property (#15894) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/vs-debug-fastlink.rst | 5 +++++ Source/cmVS14LinkFlagTable.h | 2 ++ 2 files changed, 7 insertions(+) create mode 100644 Help/release/dev/vs-debug-fastlink.rst hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 13 09:33:37 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:33:37 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1946-g646f594 Message-ID: <20160113143337.CD029E2EF4@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 646f594fcee5e5ac073a72754a9c067d75bb9bcb (commit) via 05ab4b7c66cccb7b04b05e252671f3628d4795fc (commit) via 59dac28856b6ba5971217e0cf907a76cc0dba82c (commit) via 5774f389cde220199d257af41f0188b09c6d3857 (commit) via ef3202fb98bf3dd56ee5eca06f169270619064e3 (commit) via 39b7954d4de734d6f08fab1a6fb442abc2e9bb5c (commit) from e0c8efbea200d306fb8202750d400b58d3c7185a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=646f594fcee5e5ac073a72754a9c067d75bb9bcb commit 646f594fcee5e5ac073a72754a9c067d75bb9bcb Merge: e0c8efb 05ab4b7 Author: Brad King AuthorDate: Wed Jan 13 09:33:31 2016 -0500 Commit: Brad King CommitDate: Wed Jan 13 09:33:31 2016 -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 Jan 13 09:39:21 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 09:39:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1948-g1ead8ce Message-ID: <20160113143921.5E069C088D@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 1ead8ced6b1e6132923a6da0a410b005bb48a694 (commit) via a777600248ea0f71581fcdfac2664b26b0f56376 (commit) from 646f594fcee5e5ac073a72754a9c067d75bb9bcb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1ead8ced6b1e6132923a6da0a410b005bb48a694 commit 1ead8ced6b1e6132923a6da0a410b005bb48a694 Merge: 646f594 a777600 Author: Brad King AuthorDate: Wed Jan 13 09:39:20 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:39:20 2016 -0500 Merge topic 'allow-variables-for-find-defaults' into next a7776002 Revert "find_*: Add variables to enable NO_XXX_PATH defaults to find commands" https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a777600248ea0f71581fcdfac2664b26b0f56376 commit a777600248ea0f71581fcdfac2664b26b0f56376 Author: Brad King AuthorDate: Wed Jan 13 09:38:58 2016 -0500 Commit: Brad King CommitDate: Wed Jan 13 09:38:58 2016 -0500 Revert "find_*: Add variables to enable NO_XXX_PATH defaults to find commands" This reverts commit 7f6ba8cd74bd5030916247049c6259293ad668a9. It will be revised and restored later. diff --git a/Help/command/FIND_XXX.txt b/Help/command/FIND_XXX.txt index 7078c8c..bd4d295 100644 --- a/Help/command/FIND_XXX.txt +++ b/Help/command/FIND_XXX.txt @@ -56,9 +56,8 @@ Options include: ``DOC`` Specify the documentation string for the ```` cache entry. -If ``NO_DEFAULT_PATH`` is specified or if -:variable:`CMAKE_FIND_NO_DEFAULT_PATH` is set and contains ``ALL`` or -|CMAKE_PATH_NAME|, then no additional paths are added to the search. +If ``NO_DEFAULT_PATH`` is specified, then no additional paths are +added to the search. If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: .. |CMAKE_PREFIX_PATH_XXX_SUBDIR| replace:: @@ -74,9 +73,7 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: 1. Search paths specified in cmake-specific cache variables. These are intended to be used on the command line with a ``-DVAR=value``. - This can be skipped if ``NO_CMAKE_PATH`` is passed or if - :variable:`CMAKE_FIND_NO_CMAKE_PATH` is set and contains ``ALL`` or - |CMAKE_PATH_NAME|. + This can be skipped if ``NO_CMAKE_PATH`` is passed. * |CMAKE_PREFIX_PATH_XXX| * |CMAKE_XXX_PATH| @@ -84,9 +81,7 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: 2. Search paths specified in cmake-specific environment variables. These are intended to be set in the user's shell configuration. - This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or if - :variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH` is set and contains - ``ALL`` or |CMAKE_PATH_NAME|. + This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed. * |CMAKE_PREFIX_PATH_XXX| * |CMAKE_XXX_PATH| @@ -98,16 +93,13 @@ If ``NO_DEFAULT_PATH`` is not specified, the search process is as follows: Hard-coded guesses should be specified with the ``PATHS`` option. 4. Search the standard system environment variables. - This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is an argument or if - :variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH` is set and contains - ``ALL`` or |CMAKE_PATH_NAME| + This can be skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is an argument. * |SYSTEM_ENVIRONMENT_PATH_XXX| 5. Search cmake variables defined in the Platform files for the current system. This can be skipped if ``NO_CMAKE_SYSTEM_PATH`` - is passed or if :variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH` is set and - contains ``ALL`` or |CMAKE_PATH_NAME|. + is passed. * |CMAKE_SYSTEM_PREFIX_PATH_XXX| * |CMAKE_SYSTEM_XXX_PATH| diff --git a/Help/command/find_file.rst b/Help/command/find_file.rst index 45fc84e..bf7a919 100644 --- a/Help/command/find_file.rst +++ b/Help/command/find_file.rst @@ -30,5 +30,4 @@ find_file .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_INCLUDE` -.. |CMAKE_PATH_NAME| replace:: ``INCLUDE`` .. include:: FIND_XXX.txt diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst index de7f98a..5d07574 100644 --- a/Help/command/find_library.rst +++ b/Help/command/find_library.rst @@ -30,7 +30,6 @@ find_library .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_LIBRARY` -.. |CMAKE_PATH_NAME| replace:: ``LIBRARY`` .. include:: FIND_XXX.txt When more than one value is given to the ``NAMES`` option this command by diff --git a/Help/command/find_package.rst b/Help/command/find_package.rst index 6d72879..58dff9d 100644 --- a/Help/command/find_package.rst +++ b/Help/command/find_package.rst @@ -238,9 +238,7 @@ enabled. 1. Search paths specified in cmake-specific cache variables. These are intended to be used on the command line with a ``-DVAR=value``. - This can be skipped if ``NO_CMAKE_PATH`` is passed or if - :variable:`CMAKE_FIND_NO_CMAKE_PATH` is set and contains ``ALL`` or - ``PACKAGE``:: + This can be skipped if ``NO_CMAKE_PATH`` is passed:: CMAKE_PREFIX_PATH CMAKE_FRAMEWORK_PATH @@ -248,9 +246,7 @@ enabled. 2. Search paths specified in cmake-specific environment variables. These are intended to be set in the user's shell configuration. - This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed or - :variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH` is set and contains - ``ALL`` or ``PACKAGE``:: + This can be skipped if ``NO_CMAKE_ENVIRONMENT_PATH`` is passed:: _DIR CMAKE_PREFIX_PATH @@ -263,10 +259,9 @@ enabled. be specified with the ``PATHS`` option. 4. Search the standard system environment variables. This can be - skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed or - :variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH` is set and contains - ``ALL`` or ``PACKAGE``. Path entries ending in ``/bin`` or ``/sbin`` - are automatically converted to their parent directories:: + skipped if ``NO_SYSTEM_ENVIRONMENT_PATH`` is passed. Path entries + ending in ``/bin`` or ``/sbin`` are automatically converted to their + parent directories:: PATH diff --git a/Help/command/find_path.rst b/Help/command/find_path.rst index 748c754..4403cb5 100644 --- a/Help/command/find_path.rst +++ b/Help/command/find_path.rst @@ -30,7 +30,6 @@ find_path .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_INCLUDE` -.. |CMAKE_PATH_NAME| replace:: ``INCLUDE`` .. include:: FIND_XXX.txt When searching for frameworks, if the file is specified as ``A/b.h``, then diff --git a/Help/command/find_program.rst b/Help/command/find_program.rst index d6c954a..d3430c0 100644 --- a/Help/command/find_program.rst +++ b/Help/command/find_program.rst @@ -25,7 +25,6 @@ find_program .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: :variable:`CMAKE_FIND_ROOT_PATH_MODE_PROGRAM` -.. |CMAKE_PATH_NAME| replace:: ``PROGRAM`` .. include:: FIND_XXX.txt When more than one value is given to the ``NAMES`` option this command by diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index ac8701b..3f49572 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -124,12 +124,7 @@ Variables that Change Behavior /variable/CMAKE_FIND_FRAMEWORK /variable/CMAKE_FIND_LIBRARY_PREFIXES /variable/CMAKE_FIND_LIBRARY_SUFFIXES - /variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH - /variable/CMAKE_FIND_NO_CMAKE_PATH - /variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH - /variable/CMAKE_FIND_NO_DEFAULT_PATH /variable/CMAKE_FIND_NO_INSTALL_PREFIX - /variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH /variable/CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY /variable/CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY /variable/CMAKE_FIND_PACKAGE_WARN_NO_MODULE diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst deleted file mode 100644 index ee761aa..0000000 --- a/Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst +++ /dev/null @@ -1,10 +0,0 @@ -CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH ------------------------------------- - -.. |NO_XXX_PATH| replace:: NO_CMAKE_ENVIRONMENT_PATH -.. include:: CMAKE_FIND_NO_XXX_PATH.txt - -See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_PATH`, -:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and -:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst deleted file mode 100644 index 0ac6666..0000000 --- a/Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst +++ /dev/null @@ -1,10 +0,0 @@ -CMAKE_FIND_NO_CMAKE_PATH ------------------------- - -.. |NO_XXX_PATH| replace:: NO_CMAKE_PATH -.. include:: CMAKE_FIND_NO_XXX_PATH.txt - -See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, -:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and -:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst b/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst deleted file mode 100644 index 827ef79..0000000 --- a/Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst +++ /dev/null @@ -1,10 +0,0 @@ -CMAKE_FIND_NO_CMAKE_SYSTEM_PATH -------------------------------- - -.. |NO_XXX_PATH| replace:: NO_CMAKE_SYSTEM_PATH -.. include:: CMAKE_FIND_NO_XXX_PATH.txt - -See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, and -:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst b/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst deleted file mode 100644 index 37e8369..0000000 --- a/Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst +++ /dev/null @@ -1,10 +0,0 @@ -CMAKE_FIND_NO_DEFAULT_PATH --------------------------- - -.. |NO_XXX_PATH| replace:: NO_DEFAULT_PATH -.. include:: CMAKE_FIND_NO_XXX_PATH.txt - -See also :variable:`CMAKE_FIND_NO_CMAKE_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, -:variable:`CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH`, and -:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst b/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst deleted file mode 100644 index 977083e..0000000 --- a/Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst +++ /dev/null @@ -1,10 +0,0 @@ -CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH -------------------------------------- - -.. |NO_XXX_PATH| replace:: NO_SYSTEM_ENVIRONMENT_PATH -.. include:: CMAKE_FIND_NO_XXX_PATH.txt - -See also :variable:`CMAKE_FIND_NO_DEFAULT_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_PATH`, -:variable:`CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH`, and -:variable:`CMAKE_FIND_NO_CMAKE_SYSTEM_PATH`. diff --git a/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt b/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt deleted file mode 100644 index ca9ad26..0000000 --- a/Help/variable/CMAKE_FIND_NO_XXX_PATH.txt +++ /dev/null @@ -1,21 +0,0 @@ -This variable enables the |NO_XXX_PATH| option to be on by default for the -various find commands. It's value is a list with valid entries being: - -``INCLUDE`` - Enable the option for the :command:`find_file` and :command:`find_path` - commands. - -``LIBRARY`` - Enable the option for the :command:`find_library` command. - -``PACKAGE`` - Enable the option for the :command:`find_package` command. - -``PROGRAM`` - Enable the option for the :command:`find_program` command. - -``ALL`` - Enable the option for all find commands. - -The list can contain any combination of valid entries in any order to affect -the specified find command. diff --git a/Source/cmFindCommon.cxx b/Source/cmFindCommon.cxx index 8c237ca..913985f 100644 --- a/Source/cmFindCommon.cxx +++ b/Source/cmFindCommon.cxx @@ -309,39 +309,8 @@ void cmFindCommon::GetIgnoredPaths(std::set& ignore) } //---------------------------------------------------------------------------- -inline bool ListContains2Helper(const cmMakefile* make, - const std::string& cmakeVar, const std::string& test1, - const std::string& test2) -{ - std::vector v; - cmSystemTools::ExpandListArgument( - make->GetSafeDefinition(cmakeVar), v, true); - for(std::vector::const_iterator i = v.begin(); - i != v.end(); ++i) - { - if(*i == test1 || *i == test2) - { - return true; - } - } - return false; -} - -//---------------------------------------------------------------------------- bool cmFindCommon::CheckCommonArgument(std::string const& arg) { - // Initialize global path options - this->NoDefaultPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_DEFAULT_PATH", "ALL", this->CMakePathName); - this->NoCMakeEnvironmentPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH", "ALL", this->CMakePathName); - this->NoCMakePath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_CMAKE_PATH", "ALL", this->CMakePathName); - this->NoSystemEnvironmentPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH", "ALL", this->CMakePathName); - this->NoCMakeSystemPath = ListContains2Helper(this->Makefile, - "CMAKE_FIND_NO_CMAKE_SYSTEM_PATH", "ALL", this->CMakePathName); - if(arg == "NO_DEFAULT_PATH") { this->NoDefaultPath = true; ----------------------------------------------------------------------- Summary of changes: Help/command/FIND_XXX.txt | 20 ++++--------- Help/command/find_file.rst | 1 - Help/command/find_library.rst | 1 - Help/command/find_package.rst | 15 ++++------ Help/command/find_path.rst | 1 - Help/command/find_program.rst | 1 - Help/manual/cmake-variables.7.rst | 5 ---- .../CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst | 10 ------- Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst | 10 ------- Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst | 10 ------- Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst | 10 ------- .../CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst | 10 ------- Help/variable/CMAKE_FIND_NO_XXX_PATH.txt | 21 ------------- Source/cmFindCommon.cxx | 31 -------------------- 14 files changed, 11 insertions(+), 135 deletions(-) delete mode 100644 Help/variable/CMAKE_FIND_NO_CMAKE_ENVIRONMENT_PATH.rst delete mode 100644 Help/variable/CMAKE_FIND_NO_CMAKE_PATH.rst delete mode 100644 Help/variable/CMAKE_FIND_NO_CMAKE_SYSTEM_PATH.rst delete mode 100644 Help/variable/CMAKE_FIND_NO_DEFAULT_PATH.rst delete mode 100644 Help/variable/CMAKE_FIND_NO_SYSTEM_ENVIRONMENT_PATH.rst delete mode 100644 Help/variable/CMAKE_FIND_NO_XXX_PATH.txt hooks/post-receive -- CMake From zack.galbreath at kitware.com Wed Jan 13 09:50:34 2016 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Wed, 13 Jan 2016 09:50:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1950-g1e6e2d6 Message-ID: <20160113145034.983A2E2ABA@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 1e6e2d6c5bc43ad9ff65f2e4e554fb15c70437b4 (commit) via 9a5ed4dfee23cee7aaaabc1b731cc2aa6cad6c46 (commit) from 1ead8ced6b1e6132923a6da0a410b005bb48a694 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1e6e2d6c5bc43ad9ff65f2e4e554fb15c70437b4 commit 1e6e2d6c5bc43ad9ff65f2e4e554fb15c70437b4 Merge: 1ead8ce 9a5ed4d Author: Zack Galbreath AuthorDate: Wed Jan 13 09:50:33 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 09:50:33 2016 -0500 Merge topic 'report_failed_tests' into next 9a5ed4df Always report which tests failed https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9a5ed4dfee23cee7aaaabc1b731cc2aa6cad6c46 commit 9a5ed4dfee23cee7aaaabc1b731cc2aa6cad6c46 Author: Zack Galbreath AuthorDate: Wed Jan 13 09:49:40 2016 -0500 Commit: Zack Galbreath CommitDate: Wed Jan 13 09:49:40 2016 -0500 Always report which tests failed This commit fixes a bug in the implementation of the QUIET option of ctest_test. Prior to this commit, if any tests failed you would see: The following tests FAILED: ...but not the subsequent line(s) indicating which tests failed. diff --git a/Source/CTest/cmCTestTestHandler.cxx b/Source/CTest/cmCTestTestHandler.cxx index a8f983f..b6a4819 100644 --- a/Source/CTest/cmCTestTestHandler.cxx +++ b/Source/CTest/cmCTestTestHandler.cxx @@ -609,11 +609,11 @@ int cmCTestTestHandler::ProcessHandler() if ( ftit->Status != cmCTestTestHandler::COMPLETED ) { ofs << ftit->TestCount << ":" << ftit->Name << std::endl; - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, "\t" << std::setw(3) + cmCTestLog(this->CTest, HANDLER_OUTPUT, "\t" << std::setw(3) << ftit->TestCount << " - " << ftit->Name << " (" << this->GetTestStatus(ftit->Status) << ")" - << std::endl, this->Quiet); + << std::endl); } } } ----------------------------------------------------------------------- Summary of changes: Source/CTest/cmCTestTestHandler.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From matt.mccormick at kitware.com Wed Jan 13 10:53:25 2016 From: matt.mccormick at kitware.com (Matt McCormick) Date: Wed, 13 Jan 2016 10:53:25 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1952-g9167410 Message-ID: <20160113155325.E85EAE2D45@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 916741017fce97137df31effb795e93a43c4a54d (commit) via ed54acf383ef7c46a2746c4423f395d399f0e525 (commit) from 1e6e2d6c5bc43ad9ff65f2e4e554fb15c70437b4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=916741017fce97137df31effb795e93a43c4a54d commit 916741017fce97137df31effb795e93a43c4a54d Merge: 1e6e2d6 ed54acf Author: Matt McCormick AuthorDate: Wed Jan 13 10:53:25 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 10:53:25 2016 -0500 Merge topic 'FindDCMTK-update' into next ed54acf3 FindDCMTK: Simplify documentation. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ed54acf383ef7c46a2746c4423f395d399f0e525 commit ed54acf383ef7c46a2746c4423f395d399f0e525 Author: Matt McCormick AuthorDate: Wed Jan 13 10:53:03 2016 -0500 Commit: Matt McCormick CommitDate: Wed Jan 13 10:53:03 2016 -0500 FindDCMTK: Simplify documentation. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index 1238616..dd0c9ff 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -10,92 +10,11 @@ # DCMTK_FOUND - If false, don't try to use DCMTK # DCMTK_DIR - (optional) Source directory for DCMTK # -# `DCMTK_DIR` can be used to make it simpler to find the various include -# directories and compiled libraries if you've just compiled it in the -# source tree. Just set it to the root of the tree where you extracted -# the source (default to `/usr`) -# -# -# This file is able to find version of DCMTK that does or does not export -# a *DCMTKConfig.cmake* file. -# -# .. important:: -# A set of patches has been contributed to DCMTK -# maintainers and merged upstream. As soon as: -# -# 1) it has been integrated upstream so that it is available in -# an official release (for example X.Y.Z), -# 2) code bases have been updated to build against X.Y.Z -# -# This file could be removed. -# -# The set of patches is listed here: https://github.com/commontk/DCMTK/compare/79030ba...f461865 -# -# -# Waiting for this to happen, build systems will have to be able -# to support different versions of DCMTK. -# -# On any given system, the following combination of DCMTK version could be -# considered: -# -# +--------+---------------------+-----------------------+-------------------+ -# | | SYSTEM DCMTK | LOCAL DCMTK | Supported ? | -# +--------+---------------------+-----------------------+-------------------+ -# | Case A | NA | [ ] DCMTKConfig | YES | -# +--------+---------------------+-----------------------+-------------------+ -# | Case B | NA | [X] DCMTKConfig | YES | -# +--------+---------------------+-----------------------+-------------------+ -# | Case C | [ ] DCMTKConfig | NA | YES | -# +--------+---------------------+-----------------------+-------------------+ -# | Case D | [X] DCMTKConfig | NA | YES | -# +--------+---------------------+-----------------------+-------------------+ -# | Case E | [ ] DCMTKConfig | [ ] DCMTKConfig | YES (*) | -# +--------+---------------------+-----------------------+-------------------+ -# | Case F | [X] DCMTKConfig | [ ] DCMTKConfig | NO | -# +--------+---------------------+-----------------------+-------------------+ -# | Case G | [ ] DCMTKConfig | [X] DCMTKConfig | YES | -# +--------+---------------------+-----------------------+-------------------+ -# | Case H | [X] DCMTKConfig | [X] DCMTKConfig | YES | -# +--------+---------------------+-----------------------+-------------------+ -# -# (*) See Troubleshooting section. -# -# Legend: -# -# NA ...............: Means that no System or Local DCMTK is available -# -# [ ] DCMTKConfig ..: Means that the version of DCMTK does NOT export a DCMTKConfig.cmake file. -# -# [X] DCMTKConfig ..: Means that the version of DCMTK exports a DCMTKConfig.cmake file. -# -# -# It is a two step process: -# -# * Step 1: Attempt to find DCMTK version providing a DCMTKConfig.cmake file. This is done with the help of `''` -# * Step 2: If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* variables details below. -# -# Troubleshooting -# ^^^^^^^^^^^^^^^ -# -# What to do if my project finds a different version of DCMTK? -# -# Remove DCMTK entry from the CMake registry per :command:`find_package` -# documentation. -# -# Details -# ^^^^^^^ -# -# At some point, the DCMTK build tree was exported [1][2][3]. Indeed, before the set of -# patches discussed above has been contributed to upstream DCMTK, an initial implementation of -# a DCMTK build system exporting its build tree has been implemented and has been tested by some -# folks. This had the effect of populating the CMake registry. -# -# Since Step1 does not exclude the CMake registry, when dealing with case E, the incorrect version of -# DCMTK could be found. -# -# - [1] http://slicer-devel.65872.n3.nabble.com/Packaging-seems-to-work-again-tp4028121p4028134.html -# - [2] https://www.assembla.com/spaces/slicerrt/tickets/244-dcmtk_dir-vs--dcmtkconfig-cmake?comment=267984263#comment:267984263 -# - [3] http://www.cmake.org/cmake/help/v2.8.11/cmake.html#command:export +# .. note:: +# Recent DCMTK provides a *DCMTKConfig.cmake* :manual:`package configuration file +# `. To exclusively use the package configuration file +# (recommended when possible), pass the `NO_MODULE` option to +# :command:`find_package`. For example, `find_package(DCMTK NO_MODULE)`. # #============================================================================= # Copyright 2004-2009 Kitware, Inc. ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 91 +++-------------------------------------------- 1 file changed, 5 insertions(+), 86 deletions(-) hooks/post-receive -- CMake From matt.mccormick at kitware.com Wed Jan 13 14:15:08 2016 From: matt.mccormick at kitware.com (Matt McCormick) Date: Wed, 13 Jan 2016 14:15:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1954-g021378e Message-ID: <20160113191508.C4437E2532@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 021378efed47f005d8b20c3d56487d68982919fe (commit) via ae32b5c91d660c30c80c29ab5b548b364e94c89b (commit) from 916741017fce97137df31effb795e93a43c4a54d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=021378efed47f005d8b20c3d56487d68982919fe commit 021378efed47f005d8b20c3d56487d68982919fe Merge: 9167410 ae32b5c Author: Matt McCormick AuthorDate: Wed Jan 13 14:15:07 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 14:15:07 2016 -0500 Merge topic 'FindDCMTK-update' into next ae32b5c9 FindDCMTK: Add compatibility table to documentation. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae32b5c91d660c30c80c29ab5b548b364e94c89b commit ae32b5c91d660c30c80c29ab5b548b364e94c89b Author: Matt McCormick AuthorDate: Wed Jan 13 14:13:44 2016 -0500 Commit: Matt McCormick CommitDate: Wed Jan 13 14:13:44 2016 -0500 FindDCMTK: Add compatibility table to documentation. Re: Bug #15909. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index dd0c9ff..dc663b5 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -10,11 +10,69 @@ # DCMTK_FOUND - If false, don't try to use DCMTK # DCMTK_DIR - (optional) Source directory for DCMTK # -# .. note:: -# Recent DCMTK provides a *DCMTKConfig.cmake* :manual:`package configuration file -# `. To exclusively use the package configuration file -# (recommended when possible), pass the `NO_MODULE` option to -# :command:`find_package`. For example, `find_package(DCMTK NO_MODULE)`. +# Compatibility +# ^^^^^^^^^^^^^ +# +# This module is able to find a version of DCMTK that does or does not export +# a *DCMTKConfig.cmake* file. It applies a two step process: +# +# * Step 1: Attempt to find DCMTK version providing a *DCMTKConfig.cmake* file. +# * Step 2: If step 1 failed, rely on *FindDCMTK.cmake* to set `DCMTK_*` variables details below. +# +# +# `Recent DCMTK +# `_ +# provides a *DCMTKConfig.cmake* :manual:`package configuration file +# `. To exclusively use the package configuration file +# (recommended when possible), pass the `NO_MODULE` option to +# :command:`find_package`. For example, `find_package(DCMTK NO_MODULE)`. +# This requires official DCMTK snapshot *3.6.1_20140617* or newer. +# +# +# Until all clients update to the more recent DCMTK, build systems will need +# to support different versions of DCMTK. +# +# On any given system, the following combinations of DCMTK versions could be +# considered: +# +# +--------+---------------------+-----------------------+-------------------+ +# | | SYSTEM DCMTK | LOCAL DCMTK | Supported ? | +# +--------+---------------------+-----------------------+-------------------+ +# | Case A | NA | [ ] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case B | NA | [X] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case C | [ ] DCMTKConfig | NA | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case D | [X] DCMTKConfig | NA | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case E | [ ] DCMTKConfig | [ ] DCMTKConfig | YES (*) | +# +--------+---------------------+-----------------------+-------------------+ +# | Case F | [X] DCMTKConfig | [ ] DCMTKConfig | NO | +# +--------+---------------------+-----------------------+-------------------+ +# | Case G | [ ] DCMTKConfig | [X] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# | Case H | [X] DCMTKConfig | [X] DCMTKConfig | YES | +# +--------+---------------------+-----------------------+-------------------+ +# +# (*) See Troubleshooting section. +# +# Legend: +# +# NA ...............: Means that no System or Local DCMTK is available +# +# [ ] DCMTKConfig ..: Means that the version of DCMTK does NOT export a DCMTKConfig.cmake file. +# +# [X] DCMTKConfig ..: Means that the version of DCMTK exports a DCMTKConfig.cmake file. +# +# +# Troubleshooting +# ^^^^^^^^^^^^^^^ +# +# What to do if my project finds a different version of DCMTK? +# +# Remove DCMTK entry from the CMake registry per :command:`find_package` +# documentation. # #============================================================================= # Copyright 2004-2009 Kitware, Inc. ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 68 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 63 insertions(+), 5 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 13 14:30:48 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 13 Jan 2016 14:30:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1956-g0a9d803 Message-ID: <20160113193048.9DE6DE2E44@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 0a9d80385666d819587a5761d0a1f4a9f9e1edfa (commit) via 7a37afa7e709bb1134ad7fb058195bc85f261b87 (commit) from 021378efed47f005d8b20c3d56487d68982919fe (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0a9d80385666d819587a5761d0a1f4a9f9e1edfa commit 0a9d80385666d819587a5761d0a1f4a9f9e1edfa Merge: 021378e 7a37afa Author: Brad King AuthorDate: Wed Jan 13 14:30:47 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 13 14:30:47 2016 -0500 Merge topic 'bootstap-system-liblzma' into next 7a37afa7 bootstrap: Add option to build with system liblzma (#15916) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7a37afa7e709bb1134ad7fb058195bc85f261b87 commit 7a37afa7e709bb1134ad7fb058195bc85f261b87 Author: Brad King AuthorDate: Wed Jan 13 14:27:02 2016 -0500 Commit: Brad King CommitDate: Wed Jan 13 14:28:02 2016 -0500 bootstrap: Add option to build with system liblzma (#15916) diff --git a/bootstrap b/bootstrap index d1274c1..b3f06a1 100755 --- a/bootstrap +++ b/bootstrap @@ -404,6 +404,8 @@ Configuration: --no-system-zlib use cmake-provided zlib library (default) --system-bzip2 use system-installed bzip2 library --no-system-bzip2 use cmake-provided bzip2 library (default) + --system-liblzma use system-installed liblzma library + --no-system-liblzma use cmake-provided liblzma library (default) --system-libarchive use system-installed libarchive library --no-system-libarchive use cmake-provided libarchive library (default) @@ -632,10 +634,10 @@ while test $# != 0; do --init=*) cmake_init_file=`cmake_arg "$1"` ;; --system-libs) cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARIES=1" ;; --no-system-libs) cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARIES=0" ;; - --system-bzip2|--system-curl|--system-expat|--system-jsoncpp|--system-libarchive|--system-zlib) + --system-bzip2|--system-curl|--system-expat|--system-jsoncpp|--system-libarchive|--system-zlib|--system-liblzma) lib=`cmake_arg "$1" "--system-"` cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARY_`cmake_toupper $lib`=1" ;; - --no-system-bzip2|--no-system-curl|--no-system-expat|--no-system-jsoncpp|--no-system-libarchive|--no-system-zlib) + --no-system-bzip2|--no-system-curl|--no-system-expat|--no-system-jsoncpp|--no-system-libarchive|--no-system-zlib|--no-system-liblzma) lib=`cmake_arg "$1" "--no-system-"` cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARY_`cmake_toupper $lib`=0" ;; --qt-gui) cmake_bootstrap_qt_gui="1" ;; ----------------------------------------------------------------------- Summary of changes: bootstrap | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Thu Jan 14 00:01:10 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Thu, 14 Jan 2016 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-833-g6be2ded Message-ID: <20160114050110.6AD62E2E78@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 6be2dedaedec4d6df7844119d2e4954535d66ad2 (commit) from 05ab4b7c66cccb7b04b05e252671f3628d4795fc (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6be2dedaedec4d6df7844119d2e4954535d66ad2 commit 6be2dedaedec4d6df7844119d2e4954535d66ad2 Author: Kitware Robot AuthorDate: Thu Jan 14 00:01:07 2016 -0500 Commit: Kitware Robot CommitDate: Thu Jan 14 00:01:07 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index f9fdef4..ea95862 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 4) -set(CMake_VERSION_PATCH 20160113) +set(CMake_VERSION_PATCH 20160114) #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 Jan 14 11:20:34 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 11:20:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1958-ge584aa9 Message-ID: <20160114162034.991BDE2DE9@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 e584aa916a85ec45a19e751e2c224b97231ff02e (commit) via a7393cbd40b4387d352413c48cec36b9d3cd0b51 (commit) from 0a9d80385666d819587a5761d0a1f4a9f9e1edfa (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e584aa916a85ec45a19e751e2c224b97231ff02e commit e584aa916a85ec45a19e751e2c224b97231ff02e Merge: 0a9d803 a7393cb Author: Brad King AuthorDate: Thu Jan 14 11:20:33 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 11:20:33 2016 -0500 Merge topic 'report_failed_tests' into next a7393cbd ctest_test: Report which tests failed even when QUIET is used https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a7393cbd40b4387d352413c48cec36b9d3cd0b51 commit a7393cbd40b4387d352413c48cec36b9d3cd0b51 Author: Zack Galbreath AuthorDate: Wed Jan 13 09:49:40 2016 -0500 Commit: Brad King CommitDate: Wed Jan 13 10:32:24 2016 -0500 ctest_test: Report which tests failed even when QUIET is used Since commit v3.3.0-rc1~410^2~3 (ctest_test: Add QUIET option, 2015-02-17) if tests fail when QUIET is used one sees: The following tests FAILED: but not the subsequent line(s) indicating which tests failed. Restore the list of failed tests. diff --git a/Source/CTest/cmCTestTestHandler.cxx b/Source/CTest/cmCTestTestHandler.cxx index a8f983f..b6a4819 100644 --- a/Source/CTest/cmCTestTestHandler.cxx +++ b/Source/CTest/cmCTestTestHandler.cxx @@ -609,11 +609,11 @@ int cmCTestTestHandler::ProcessHandler() if ( ftit->Status != cmCTestTestHandler::COMPLETED ) { ofs << ftit->TestCount << ":" << ftit->Name << std::endl; - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, "\t" << std::setw(3) + cmCTestLog(this->CTest, HANDLER_OUTPUT, "\t" << std::setw(3) << ftit->TestCount << " - " << ftit->Name << " (" << this->GetTestStatus(ftit->Status) << ")" - << std::endl, this->Quiet); + << std::endl); } } } ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 11:42:22 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 11:42:22 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-835-g9cf6388 Message-ID: <20160114164222.E8738E2447@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 9cf63886985f39bb364e620e4459252b9ba8072a (commit) via 630c8aa8435fced988545d396714398faa3426b1 (commit) from 6be2dedaedec4d6df7844119d2e4954535d66ad2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9cf63886985f39bb364e620e4459252b9ba8072a commit 9cf63886985f39bb364e620e4459252b9ba8072a Merge: 6be2ded 630c8aa Author: Brad King AuthorDate: Thu Jan 14 11:42:20 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 11:42:20 2016 -0500 Merge topic 'install-DIRECTORY-genex' 630c8aa8 install: Allow generator expressions in DIRECTORY ----------------------------------------------------------------------- Summary of changes: Help/command/install.rst | 7 ++--- Help/release/dev/install-DIRECTORY-genex.rst | 6 +++++ Source/cmInstallDirectoryGenerator.cxx | 28 +++++++++++++++++--- Source/cmInstallDirectoryGenerator.h | 3 ++- Tests/ExportImport/Export/CMakeLists.txt | 2 +- .../DIRECTORY-DIRECTORY-bad-result.txt} | 0 .../DIRECTORY-DIRECTORY-bad-stderr.txt} | 0 .../RunCMake/install/DIRECTORY-DIRECTORY-bad.cmake | 1 + Tests/RunCMake/install/RunCMakeTest.cmake | 1 + Tests/SimpleInstall/CMakeLists.txt | 4 +-- Tests/SimpleInstallS2/CMakeLists.txt | 4 +-- 11 files changed, 43 insertions(+), 13 deletions(-) create mode 100644 Help/release/dev/install-DIRECTORY-genex.rst copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => install/DIRECTORY-DIRECTORY-bad-result.txt} (100%) copy Tests/RunCMake/{XcodeProject/XcodeAttributeGenexError-stderr.txt => install/DIRECTORY-DIRECTORY-bad-stderr.txt} (100%) create mode 100644 Tests/RunCMake/install/DIRECTORY-DIRECTORY-bad.cmake hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 11:42:25 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 11:42:25 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-837-g6e1a3df Message-ID: <20160114164225.7CDC5E2508@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 6e1a3df0c7d570ae560fc39fae17de839fe2f3e6 (commit) via 7a37afa7e709bb1134ad7fb058195bc85f261b87 (commit) from 9cf63886985f39bb364e620e4459252b9ba8072a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6e1a3df0c7d570ae560fc39fae17de839fe2f3e6 commit 6e1a3df0c7d570ae560fc39fae17de839fe2f3e6 Merge: 9cf6388 7a37afa Author: Brad King AuthorDate: Thu Jan 14 11:42:23 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 11:42:23 2016 -0500 Merge topic 'bootstap-system-liblzma' 7a37afa7 bootstrap: Add option to build with system liblzma (#15916) ----------------------------------------------------------------------- Summary of changes: bootstrap | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 11:42:28 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 11:42:28 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-839-gf3fd50a Message-ID: <20160114164228.2998AE2510@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 f3fd50ad4b4252c42de55657074ca0b84f97a83c (commit) via a7393cbd40b4387d352413c48cec36b9d3cd0b51 (commit) from 6e1a3df0c7d570ae560fc39fae17de839fe2f3e6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f3fd50ad4b4252c42de55657074ca0b84f97a83c commit f3fd50ad4b4252c42de55657074ca0b84f97a83c Merge: 6e1a3df a7393cb Author: Brad King AuthorDate: Thu Jan 14 11:42:26 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 11:42:26 2016 -0500 Merge topic 'report_failed_tests' a7393cbd ctest_test: Report which tests failed even when QUIET is used ----------------------------------------------------------------------- Summary of changes: Source/CTest/cmCTestTestHandler.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 11:42:43 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 11:42:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1963-g358f772 Message-ID: <20160114164243.38C46E2520@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 358f7727f9b30ab91b65905ed7812e216b172466 (commit) via f3fd50ad4b4252c42de55657074ca0b84f97a83c (commit) via 6e1a3df0c7d570ae560fc39fae17de839fe2f3e6 (commit) via 9cf63886985f39bb364e620e4459252b9ba8072a (commit) via 6be2dedaedec4d6df7844119d2e4954535d66ad2 (commit) from e584aa916a85ec45a19e751e2c224b97231ff02e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=358f7727f9b30ab91b65905ed7812e216b172466 commit 358f7727f9b30ab91b65905ed7812e216b172466 Merge: e584aa9 f3fd50a Author: Brad King AuthorDate: Thu Jan 14 11:42:34 2016 -0500 Commit: Brad King CommitDate: Thu Jan 14 11:42:34 2016 -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 Jan 14 13:27:59 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 13:27:59 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1965-g8810997 Message-ID: <20160114182759.69928E3207@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 8810997b9bcabc895f99f0b68e5a96515831189e (commit) via 6e0739808514591e9a1cee0ca78aa1da17f52a86 (commit) from 358f7727f9b30ab91b65905ed7812e216b172466 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8810997b9bcabc895f99f0b68e5a96515831189e commit 8810997b9bcabc895f99f0b68e5a96515831189e Merge: 358f772 6e07398 Author: Brad King AuthorDate: Thu Jan 14 13:27:58 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 13:27:58 2016 -0500 Merge topic 'FindDCMTK-update' into next 6e073980 fixup! FindDCMTK: Add compatibility table to documentation. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6e0739808514591e9a1cee0ca78aa1da17f52a86 commit 6e0739808514591e9a1cee0ca78aa1da17f52a86 Author: Brad King AuthorDate: Thu Jan 14 13:27:42 2016 -0500 Commit: Brad King CommitDate: Thu Jan 14 13:27:42 2016 -0500 fixup! FindDCMTK: Add compatibility table to documentation. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index dc663b5..63d253d 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -1,6 +1,7 @@ #.rst: # FindDCMTK # --------- +# # Find DCMTK libraries and applications # # The module defines the following variables:: @@ -71,9 +72,9 @@ # # What to do if my project finds a different version of DCMTK? # -# Remove DCMTK entry from the CMake registry per :command:`find_package` +# Remove DCMTK entry from the CMake cache per :command:`find_package` # documentation. -# + #============================================================================= # Copyright 2004-2009 Kitware, Inc. # Copyright 2009-2010 Mathieu Malaterre ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 13:29:21 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 13:29:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1967-g24fcf2e Message-ID: <20160114182921.F135BE3275@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 24fcf2ef037e50eb375f8e0d5e49a7658273f230 (commit) via 4b24626e0096f5bf6d57b5861a2eb001067c8f89 (commit) from 8810997b9bcabc895f99f0b68e5a96515831189e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=24fcf2ef037e50eb375f8e0d5e49a7658273f230 commit 24fcf2ef037e50eb375f8e0d5e49a7658273f230 Merge: 8810997 4b24626 Author: Brad King AuthorDate: Thu Jan 14 13:29:21 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 13:29:21 2016 -0500 Merge topic 'FindDCMTK-update' into next 4b24626e FindDCMTK: Simplify documentation. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4b24626e0096f5bf6d57b5861a2eb001067c8f89 commit 4b24626e0096f5bf6d57b5861a2eb001067c8f89 Author: Matt McCormick AuthorDate: Wed Jan 13 10:53:03 2016 -0500 Commit: Brad King CommitDate: Thu Jan 14 13:28:56 2016 -0500 FindDCMTK: Simplify documentation. diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake index 1238616..63d253d 100644 --- a/Modules/FindDCMTK.cmake +++ b/Modules/FindDCMTK.cmake @@ -1,6 +1,7 @@ #.rst: # FindDCMTK # --------- +# # Find DCMTK libraries and applications # # The module defines the following variables:: @@ -10,32 +11,29 @@ # DCMTK_FOUND - If false, don't try to use DCMTK # DCMTK_DIR - (optional) Source directory for DCMTK # -# `DCMTK_DIR` can be used to make it simpler to find the various include -# directories and compiled libraries if you've just compiled it in the -# source tree. Just set it to the root of the tree where you extracted -# the source (default to `/usr`) -# -# -# This file is able to find version of DCMTK that does or does not export -# a *DCMTKConfig.cmake* file. +# Compatibility +# ^^^^^^^^^^^^^ # -# .. important:: -# A set of patches has been contributed to DCMTK -# maintainers and merged upstream. As soon as: +# This module is able to find a version of DCMTK that does or does not export +# a *DCMTKConfig.cmake* file. It applies a two step process: # -# 1) it has been integrated upstream so that it is available in -# an official release (for example X.Y.Z), -# 2) code bases have been updated to build against X.Y.Z +# * Step 1: Attempt to find DCMTK version providing a *DCMTKConfig.cmake* file. +# * Step 2: If step 1 failed, rely on *FindDCMTK.cmake* to set `DCMTK_*` variables details below. # -# This file could be removed. # -# The set of patches is listed here: https://github.com/commontk/DCMTK/compare/79030ba...f461865 +# `Recent DCMTK +# `_ +# provides a *DCMTKConfig.cmake* :manual:`package configuration file +# `. To exclusively use the package configuration file +# (recommended when possible), pass the `NO_MODULE` option to +# :command:`find_package`. For example, `find_package(DCMTK NO_MODULE)`. +# This requires official DCMTK snapshot *3.6.1_20140617* or newer. # # -# Waiting for this to happen, build systems will have to be able +# Until all clients update to the more recent DCMTK, build systems will need # to support different versions of DCMTK. # -# On any given system, the following combination of DCMTK version could be +# On any given system, the following combinations of DCMTK versions could be # considered: # # +--------+---------------------+-----------------------+-------------------+ @@ -69,34 +67,14 @@ # [X] DCMTKConfig ..: Means that the version of DCMTK exports a DCMTKConfig.cmake file. # # -# It is a two step process: -# -# * Step 1: Attempt to find DCMTK version providing a DCMTKConfig.cmake file. This is done with the help of `''` -# * Step 2: If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* variables details below. -# # Troubleshooting # ^^^^^^^^^^^^^^^ # # What to do if my project finds a different version of DCMTK? # -# Remove DCMTK entry from the CMake registry per :command:`find_package` +# Remove DCMTK entry from the CMake cache per :command:`find_package` # documentation. -# -# Details -# ^^^^^^^ -# -# At some point, the DCMTK build tree was exported [1][2][3]. Indeed, before the set of -# patches discussed above has been contributed to upstream DCMTK, an initial implementation of -# a DCMTK build system exporting its build tree has been implemented and has been tested by some -# folks. This had the effect of populating the CMake registry. -# -# Since Step1 does not exclude the CMake registry, when dealing with case E, the incorrect version of -# DCMTK could be found. -# -# - [1] http://slicer-devel.65872.n3.nabble.com/Packaging-seems-to-work-again-tp4028121p4028134.html -# - [2] https://www.assembla.com/spaces/slicerrt/tickets/244-dcmtk_dir-vs--dcmtkconfig-cmake?comment=267984263#comment:267984263 -# - [3] http://www.cmake.org/cmake/help/v2.8.11/cmake.html#command:export -# + #============================================================================= # Copyright 2004-2009 Kitware, Inc. # Copyright 2009-2010 Mathieu Malaterre ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 13:30:33 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 13:30:33 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-846-g43a32bd Message-ID: <20160114183033.1F3C2E32DD@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 43a32bdff6b452016a9b59224cd83e3c79c58e28 (commit) via 4b24626e0096f5bf6d57b5861a2eb001067c8f89 (commit) via 361c199ff602d492d4261f0387d84913a0989473 (commit) via d790f4feeadc863d47ffec9d901d4bf5519001df (commit) via 8c8e53d06011ef476780d10601adac78baf8aead (commit) via d50cbbb03d53da6b990402a482a56b3163807dcb (commit) via 31b4700ed640bee962f9db9ce25fa84261a944d2 (commit) from f3fd50ad4b4252c42de55657074ca0b84f97a83c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=43a32bdff6b452016a9b59224cd83e3c79c58e28 commit 43a32bdff6b452016a9b59224cd83e3c79c58e28 Merge: f3fd50a 4b24626 Author: Brad King AuthorDate: Thu Jan 14 13:30:31 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 14 13:30:31 2016 -0500 Merge topic 'FindDCMTK-update' 4b24626e FindDCMTK: Simplify documentation. 361c199f FindDCMTK: Add reStructuredText formatting. d790f4fe FindDCMTK: Keep original copyright notice. 8c8e53d0 FindDCMTK: Minor documentation grammatical issues. d50cbbb0 FindDCMTK: Obey QUIET option for find_package. 31b4700e FindDCMTK: Improve compatibility with DCMTKConfig.cmake. ----------------------------------------------------------------------- Summary of changes: Modules/FindDCMTK.cmake | 275 +++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 229 insertions(+), 46 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 14 13:30:47 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 14 Jan 2016 13:30:47 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1969-gaea52d2 Message-ID: <20160114183047.42C40E32E3@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 aea52d2033f3e17ba11af70fb6d264e8637a8deb (commit) via 43a32bdff6b452016a9b59224cd83e3c79c58e28 (commit) from 24fcf2ef037e50eb375f8e0d5e49a7658273f230 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aea52d2033f3e17ba11af70fb6d264e8637a8deb commit aea52d2033f3e17ba11af70fb6d264e8637a8deb Merge: 24fcf2e 43a32bd Author: Brad King AuthorDate: Thu Jan 14 13:30:41 2016 -0500 Commit: Brad King CommitDate: Thu Jan 14 13:30:41 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Fri Jan 15 00:01:10 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Fri, 15 Jan 2016 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-847-gb8d002a Message-ID: <20160115050110.2C509E32A7@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 b8d002af1aeefb435a9560b056f081e5d8dff734 (commit) from 43a32bdff6b452016a9b59224cd83e3c79c58e28 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b8d002af1aeefb435a9560b056f081e5d8dff734 commit b8d002af1aeefb435a9560b056f081e5d8dff734 Author: Kitware Robot AuthorDate: Fri Jan 15 00:01:07 2016 -0500 Commit: Kitware Robot CommitDate: Fri Jan 15 00:01:07 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index ea95862..17ed248 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 4) -set(CMake_VERSION_PATCH 20160114) +set(CMake_VERSION_PATCH 20160115) #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 Jan 15 08:46:42 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 08:46:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1971-ga0e5995 Message-ID: <20160115134642.03771E2D08@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 a0e599587c8ddd4898d6019fab52f01f9ddec4d3 (commit) via 6ccc307053f03c4c48a2cb9d5795f91d341a5c39 (commit) from aea52d2033f3e17ba11af70fb6d264e8637a8deb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a0e599587c8ddd4898d6019fab52f01f9ddec4d3 commit a0e599587c8ddd4898d6019fab52f01f9ddec4d3 Merge: aea52d2 6ccc307 Author: Brad King AuthorDate: Fri Jan 15 08:46:41 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 08:46:41 2016 -0500 Merge topic 'FindCUDA-verbatim' into next 6ccc3070 FindCUDA: Support special characters in path (#15919) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6ccc307053f03c4c48a2cb9d5795f91d341a5c39 commit 6ccc307053f03c4c48a2cb9d5795f91d341a5c39 Author: Brad King AuthorDate: Fri Jan 15 08:44:15 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 08:46:20 2016 -0500 FindCUDA: Support special characters in path (#15919) Add `VERBATIM` to all `add_custom_command` calls so that CMake will escape arguments properly even when special characters such as "()" are present. Suggested-by: Nils Gladitz diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake index ada5b8a..1674e2d 100644 --- a/Modules/FindCUDA.cmake +++ b/Modules/FindCUDA.cmake @@ -1474,6 +1474,7 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files) -P "${custom_target_script}" WORKING_DIRECTORY "${cuda_compile_intermediate_directory}" COMMENT "${cuda_build_comment_string}" + VERBATIM ) # Make sure the build system knows the file is generated. @@ -1592,6 +1593,7 @@ function(CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS output_file cuda_target options COMMAND ${CUDA_NVCC_EXECUTABLE} ${nvcc_flags} -dlink ${object_files} -o ${output_file} ${flags} COMMENT "Building NVCC intermediate link file ${output_file_relative_path}" + VERBATIM ) else() get_filename_component(output_file_dir "${output_file}" DIRECTORY) @@ -1601,6 +1603,7 @@ function(CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS output_file cuda_target options COMMAND ${CMAKE_COMMAND} -E echo "Building NVCC intermediate link file ${output_file_relative_path}" COMMAND ${CMAKE_COMMAND} -E make_directory "${output_file_dir}" COMMAND ${CUDA_NVCC_EXECUTABLE} ${nvcc_flags} ${flags} -dlink ${object_files} -o "${output_file}" + VERBATIM ) endif() endif() ----------------------------------------------------------------------- Summary of changes: Modules/FindCUDA.cmake | 3 +++ 1 file changed, 3 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 10:23:57 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 10:23:57 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1975-g718c6e8 Message-ID: <20160115152357.A8CB9E309C@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 718c6e8e33bfb666e7482504f429409df1c0b566 (commit) via aea1b03617bed037bbd12af36d7ef92feff0ba74 (commit) via e5cbec14a5aec9203bd0e29fa0172fa00c97e521 (commit) via 0ca122fcb3df3331a6daaeec090bd967daa0f2b9 (commit) from a0e599587c8ddd4898d6019fab52f01f9ddec4d3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=718c6e8e33bfb666e7482504f429409df1c0b566 commit 718c6e8e33bfb666e7482504f429409df1c0b566 Merge: a0e5995 aea1b03 Author: Brad King AuthorDate: Fri Jan 15 10:23:56 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 10:23:56 2016 -0500 Merge topic 'export-static-private-depend' into next aea1b036 Fix export of STATIC library PRIVATE dependencies with CMP0022 NEW e5cbec14 Tests: Use CMP0022 NEW behavior in some ExportImport cases 0ca122fc Tests: Isolate policy changes in ExportImport test https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aea1b03617bed037bbd12af36d7ef92feff0ba74 commit aea1b03617bed037bbd12af36d7ef92feff0ba74 Author: Brad King AuthorDate: Fri Jan 15 10:02:52 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 10:18:53 2016 -0500 Fix export of STATIC library PRIVATE dependencies with CMP0022 NEW The target_link_libraries command records the PRIVATE dependencies of a STATIC library in INTERFACE_LINK_LIBRARIES as "$". This hides the target name from export namespacing logic inside a generator expression. When user-written generator expressions reference a target name they must put it inside a "$" expression to allow the export logic to rename the target. In the case that the private dependency is not already a generator expression, target_link_libraries must use "$>" to allow the export logic to rename the target. Reported-by: Tam?s Ken?z diff --git a/Source/cmTargetLinkLibrariesCommand.cxx b/Source/cmTargetLinkLibrariesCommand.cxx index 435346a..5f3246a 100644 --- a/Source/cmTargetLinkLibrariesCommand.cxx +++ b/Source/cmTargetLinkLibrariesCommand.cxx @@ -432,8 +432,11 @@ cmTargetLinkLibrariesCommand::HandleLibrary(const std::string& lib, { std::string configLib = this->Target ->GetDebugGeneratorExpressions(lib, llt); - if (cmGeneratorExpression::IsValidTargetName(lib) - || cmGeneratorExpression::Find(lib) != std::string::npos) + if (cmGeneratorExpression::IsValidTargetName(configLib)) + { + configLib = "$>"; + } + else if (cmGeneratorExpression::Find(configLib) != std::string::npos) { configLib = "$"; } diff --git a/Tests/ExportImport/Export/CMakeLists.txt b/Tests/ExportImport/Export/CMakeLists.txt index 9c50d6c..c2ecb0b 100644 --- a/Tests/ExportImport/Export/CMakeLists.txt +++ b/Tests/ExportImport/Export/CMakeLists.txt @@ -136,6 +136,8 @@ cmake_policy(SET CMP0022 NEW) add_library(testLibRequired testLibRequired.c) add_library(testLibDepends testLibDepends.c) target_link_libraries(testLibDepends LINK_PUBLIC testLibRequired) +add_library(testStaticLibRequiredPrivate testStaticLibRequiredPrivate.c) +target_link_libraries(testLibDepends PRIVATE testStaticLibRequiredPrivate) cmake_policy(POP) macro(add_include_lib _libName) @@ -394,6 +396,10 @@ install(TARGETS INCLUDES DESTINATION $/include/$ ) +install(TARGETS + testStaticLibRequiredPrivate + EXPORT RequiredExp DESTINATION lib +) install(EXPORT RequiredExp NAMESPACE Req:: FILE testLibRequiredTargets.cmake DESTINATION lib/cmake/testLibRequired) file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/installIncludesTest") diff --git a/Tests/ExportImport/Export/testLibDepends.c b/Tests/ExportImport/Export/testLibDepends.c index fb5a002..3c7774e 100644 --- a/Tests/ExportImport/Export/testLibDepends.c +++ b/Tests/ExportImport/Export/testLibDepends.c @@ -16,5 +16,10 @@ #endif extern int testLibRequired(void); +extern int testStaticLibRequiredPrivate(void); -int testLibDepends(void) { return testLibRequired(); } +int testLibDepends(void) { + return testLibRequired() + + testStaticLibRequiredPrivate() + ; +} diff --git a/Tests/ExportImport/Export/testStaticLibRequiredPrivate.c b/Tests/ExportImport/Export/testStaticLibRequiredPrivate.c new file mode 100644 index 0000000..28a2675 --- /dev/null +++ b/Tests/ExportImport/Export/testStaticLibRequiredPrivate.c @@ -0,0 +1 @@ +int testStaticLibRequiredPrivate(void) { return 0; } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e5cbec14a5aec9203bd0e29fa0172fa00c97e521 commit e5cbec14a5aec9203bd0e29fa0172fa00c97e521 Author: Brad King AuthorDate: Fri Jan 15 09:49:21 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 09:56:01 2016 -0500 Tests: Use CMP0022 NEW behavior in some ExportImport cases diff --git a/Tests/ExportImport/Export/CMakeLists.txt b/Tests/ExportImport/Export/CMakeLists.txt index 9b6a543..9c50d6c 100644 --- a/Tests/ExportImport/Export/CMakeLists.txt +++ b/Tests/ExportImport/Export/CMakeLists.txt @@ -130,10 +130,13 @@ set_property(TARGET testLibCycleA PROPERTY LINK_INTERFACE_MULTIPLICITY 3) add_library(testLibNoSONAME SHARED testLibNoSONAME.c) set_property(TARGET testLibNoSONAME PROPERTY NO_SONAME 1) +cmake_policy(PUSH) +cmake_policy(SET CMP0022 NEW) # Test exporting dependent libraries into different exports add_library(testLibRequired testLibRequired.c) add_library(testLibDepends testLibDepends.c) target_link_libraries(testLibDepends LINK_PUBLIC testLibRequired) +cmake_policy(POP) macro(add_include_lib _libName) file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/${_libName}.c" "/* no content */\n") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0ca122fcb3df3331a6daaeec090bd967daa0f2b9 commit 0ca122fcb3df3331a6daaeec090bd967daa0f2b9 Author: Brad King AuthorDate: Fri Jan 15 09:54:56 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 09:55:26 2016 -0500 Tests: Isolate policy changes in ExportImport test Use cmake_policy(PUSH/POP) to isolate CMP0022 policy changes. diff --git a/Tests/ExportImport/Export/CMakeLists.txt b/Tests/ExportImport/Export/CMakeLists.txt index dcba9ac..9b6a543 100644 --- a/Tests/ExportImport/Export/CMakeLists.txt +++ b/Tests/ExportImport/Export/CMakeLists.txt @@ -270,6 +270,7 @@ install(FILES DESTINATION include/testSharedLibRequiredUser ) +cmake_policy(PUSH) cmake_policy(SET CMP0022 NEW) add_library(testSharedLibRequiredUser2 SHARED testSharedLibRequiredUser2.cpp) generate_export_header(testSharedLibRequiredUser2) @@ -283,7 +284,7 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/testsharedlibrequireduser2_export.h" DESTINATION include/testSharedLibRequiredUser2 ) -cmake_policy(SET CMP0022 OLD) +cmake_policy(POP) add_library(testSharedLibDepends SHARED testSharedLibDepends.cpp) set_property(TARGET testSharedLibDepends APPEND PROPERTY @@ -311,6 +312,8 @@ target_link_libraries(testSharedLibDepends LINK_PUBLIC renamed_on_export) target_link_libraries(testSharedLibDepends LINK_INTERFACE_LIBRARIES $<$,EXECUTABLE>:$>) +cmake_policy(PUSH) +cmake_policy(SET CMP0022 OLD) add_library(cmp0022OLD SHARED cmp0022_vs6_1.cpp) generate_export_header(cmp0022OLD BASE_NAME cmp0022) target_include_directories(cmp0022OLD PUBLIC @@ -324,7 +327,7 @@ target_include_directories(cmp0022NEW PUBLIC "$" "$/include/cmp0022>" ) -cmake_policy(SET CMP0022 OLD) +cmake_policy(POP) install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/cmp0022.h" "${CMAKE_CURRENT_BINARY_DIR}/cmp0022_export.h" ----------------------------------------------------------------------- Summary of changes: Source/cmTargetLinkLibrariesCommand.cxx | 7 +++++-- Tests/ExportImport/Export/CMakeLists.txt | 16 ++++++++++++++-- Tests/ExportImport/Export/testLibDepends.c | 7 ++++++- .../ExportImport/Export/testStaticLibRequiredPrivate.c | 1 + 4 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 Tests/ExportImport/Export/testStaticLibRequiredPrivate.c hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 14:08:31 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 14:08:31 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1977-g7a8ce54 Message-ID: <20160115190831.9A2FCE3309@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 7a8ce548243625cc405200c759759e424cf50f98 (commit) via b8d002af1aeefb435a9560b056f081e5d8dff734 (commit) from 718c6e8e33bfb666e7482504f429409df1c0b566 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7a8ce548243625cc405200c759759e424cf50f98 commit 7a8ce548243625cc405200c759759e424cf50f98 Merge: 718c6e8 b8d002a Author: Brad King AuthorDate: Fri Jan 15 14:08:19 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 14:08:19 2016 -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 Jan 15 14:09:24 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 14:09:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1979-g1f83d8a Message-ID: <20160115190924.E16F7A9D7F@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 1f83d8a365ec1859b59c596d275fe431126ea63f (commit) via 09b2f1c3f5819a5a3ec03069e7c2811172ac3591 (commit) from 7a8ce548243625cc405200c759759e424cf50f98 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1f83d8a365ec1859b59c596d275fe431126ea63f commit 1f83d8a365ec1859b59c596d275fe431126ea63f Merge: 7a8ce54 09b2f1c Author: Brad King AuthorDate: Fri Jan 15 14:09:24 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 14:09:24 2016 -0500 Merge topic 'windows-program-files' into next 09b2f1c3 Windows: Find Program Files directories more robustly from environment https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=09b2f1c3f5819a5a3ec03069e7c2811172ac3591 commit 09b2f1c3f5819a5a3ec03069e7c2811172ac3591 Author: Brad King AuthorDate: Fri Jan 15 14:04:19 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 14:07:22 2016 -0500 Windows: Find Program Files directories more robustly from environment In Modules/Platform/WindowsPaths.cmake our previously recorded environment variable combinations no longer seem to be correct. For example, a 64-bit cmake binary may see ProgramW6432 in the environment and end up not considering the "ProgramFiles(x86)" variable. Instead check for all possible environment variables in the preferred order and then remove duplicates. Reported-by: Shawn Waldon diff --git a/Modules/Platform/WindowsPaths.cmake b/Modules/Platform/WindowsPaths.cmake index 658de3b..eafa8fa 100644 --- a/Modules/Platform/WindowsPaths.cmake +++ b/Modules/Platform/WindowsPaths.cmake @@ -28,46 +28,32 @@ set(__WINDOWS_PATHS_INCLUDED 1) # Windows 64-bit Binary: # ENV{ProgramFiles(x86)} = [C:\Program Files (x86)] # ENV{ProgramFiles} = [C:\Program Files] -# ENV{ProgramW6432} = -# (executed from cygwin): -# ENV{ProgramFiles(x86)} = -# ENV{ProgramFiles} = [C:\Program Files] -# ENV{ProgramW6432} = +# ENV{ProgramW6432} = [C:\Program Files] or # -# Windows 32-bit Binary: +# Windows 32-bit Binary on 64-bit Windows: # ENV{ProgramFiles(x86)} = [C:\Program Files (x86)] # ENV{ProgramFiles} = [C:\Program Files (x86)] # ENV{ProgramW6432} = [C:\Program Files] -# (executed from cygwin): -# ENV{ProgramFiles(x86)} = -# ENV{ProgramFiles} = [C:\Program Files (x86)] -# ENV{ProgramW6432} = [C:\Program Files] -if(DEFINED "ENV{ProgramW6432}") - # 32-bit binary on 64-bit windows. - # The 64-bit program files are in ProgramW6432. - list(APPEND CMAKE_SYSTEM_PREFIX_PATH "$ENV{ProgramW6432}") - - # The 32-bit program files are in ProgramFiles. - if(DEFINED "ENV{ProgramFiles}") - list(APPEND CMAKE_SYSTEM_PREFIX_PATH "$ENV{ProgramFiles}") +set(_programfiles "") +foreach(v "ProgramW6432" "ProgramFiles" "ProgramFiles(x86)") + if(DEFINED "ENV{${v}}") + file(TO_CMAKE_PATH "$ENV{${v}}" _env_programfiles) + list(APPEND _programfiles "${_env_programfiles}") + unset(_env_programfiles) endif() -else() - # 64-bit binary, or 32-bit binary on 32-bit windows. - if(DEFINED "ENV{ProgramFiles}") - list(APPEND CMAKE_SYSTEM_PREFIX_PATH "$ENV{ProgramFiles}") - endif() - set(programfilesx86 "ProgramFiles(x86)") - if(DEFINED "ENV{${programfilesx86}}") - # 64-bit binary. 32-bit program files are in ProgramFiles(x86). - list(APPEND CMAKE_SYSTEM_PREFIX_PATH "$ENV{${programfilesx86}}") - elseif(DEFINED "ENV{SystemDrive}") - # Guess the 32-bit program files location. - if(EXISTS "$ENV{SystemDrive}/Program Files (x86)") - list(APPEND CMAKE_SYSTEM_PREFIX_PATH - "$ENV{SystemDrive}/Program Files (x86)") +endforeach() +if(DEFINED "ENV{SystemDrive}") + foreach(d "Program Files" "Program Files (x86)") + if(EXISTS "$ENV{SystemDrive}/${d}") + list(APPEND _programfiles "$ENV{SystemDrive}/${d}") endif() - endif() + endforeach() +endif() +if(_programfiles) + list(REMOVE_DUPLICATES _programfiles) + list(APPEND CMAKE_SYSTEM_PREFIX_PATH ${_programfiles}) endif() +unset(_programfiles) # Add the CMake install location. get_filename_component(_CMAKE_INSTALL_DIR "${CMAKE_ROOT}" PATH) ----------------------------------------------------------------------- Summary of changes: Modules/Platform/WindowsPaths.cmake | 52 +++++++++++++---------------------- 1 file changed, 19 insertions(+), 33 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 14:21:32 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 14:21:32 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1981-g39120bf Message-ID: <20160115192132.97128E2D52@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 39120bfffe6b2f24cc488bfacf37bc5ca60f5718 (commit) via 83d633919a75bde05acdf642ff79c5b310fce824 (commit) from 1f83d8a365ec1859b59c596d275fe431126ea63f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=39120bfffe6b2f24cc488bfacf37bc5ca60f5718 commit 39120bfffe6b2f24cc488bfacf37bc5ca60f5718 Merge: 1f83d8a 83d6339 Author: Brad King AuthorDate: Fri Jan 15 14:21:31 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 14:21:31 2016 -0500 Merge topic 'ExternalProject-git-clone-o' into next 83d63391 ExternalProject: Add option to set `git clone -o` argument https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=83d633919a75bde05acdf642ff79c5b310fce824 commit 83d633919a75bde05acdf642ff79c5b310fce824 Author: Adam Rankin AuthorDate: Fri Jan 15 12:34:46 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 14:20:04 2016 -0500 ExternalProject: Add option to set `git clone -o` argument Add a `GIT_REMOTE_NAME` option to `ExternalProject_Add` to support git clone --origin Default to `origin` if not specified. diff --git a/Help/release/dev/ExternalProject-git-clone-o.rst b/Help/release/dev/ExternalProject-git-clone-o.rst new file mode 100644 index 0000000..c9ff3e1 --- /dev/null +++ b/Help/release/dev/ExternalProject-git-clone-o.rst @@ -0,0 +1,5 @@ +ExternalProject-git-clone-o +--------------------------- + +* The :module:`ExternalProject` module learned a new ``GIT_REMOTE_NAME`` + option to control the ``git clone --origin`` value. diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index c822bdb..5c5c54a 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -57,6 +57,8 @@ Create custom targets to build projects in external trees URL of git repo ``GIT_TAG `` Git branch name, commit id or tag + ``GIT_REMOTE_NAME `` + The optional name of the remote, default to ``origin`` ``GIT_SUBMODULES ...`` Git submodules that shall be updated, all if empty ``HG_REPOSITORY `` @@ -494,7 +496,7 @@ define_property(DIRECTORY PROPERTY "EP_UPDATE_DISCONNECTED" INHERITED "ExternalProject module." ) -function(_ep_write_gitclone_script script_filename source_dir git_EXECUTABLE git_repository git_tag git_submodules src_name work_dir gitclone_infofile gitclone_stampfile) +function(_ep_write_gitclone_script script_filename source_dir git_EXECUTABLE git_repository git_tag git_remote_name git_submodules src_name work_dir gitclone_infofile gitclone_stampfile) file(WRITE ${script_filename} "if(\"${git_tag}\" STREQUAL \"\") message(FATAL_ERROR \"Tag for git checkout should not be empty.\") @@ -524,7 +526,7 @@ set(error_code 1) set(number_of_tries 0) while(error_code AND number_of_tries LESS 3) execute_process( - COMMAND \"${git_EXECUTABLE}\" clone \"${git_repository}\" \"${src_name}\" + COMMAND \"${git_EXECUTABLE}\" clone --origin \"${git_remote_name}\" \"${git_repository}\" \"${src_name}\" WORKING_DIRECTORY \"${work_dir}\" RESULT_VARIABLE error_code ) @@ -645,7 +647,7 @@ endif() endfunction() -function(_ep_write_gitupdate_script script_filename git_EXECUTABLE git_tag git_submodules git_repository work_dir) +function(_ep_write_gitupdate_script script_filename git_EXECUTABLE git_tag git_remote_name git_submodules git_repository work_dir) if(NOT GIT_VERSION_STRING VERSION_LESS 1.7.6) set(git_stash_save_options --all --quiet) else() @@ -687,7 +689,7 @@ if(\"\${show_ref_output}\" MATCHES \"refs/remotes/${git_tag}\") set(git_remote \"\${CMAKE_MATCH_1}\") set(git_tag \"\${CMAKE_MATCH_2}\") else() - set(git_remote \"origin\") + set(git_remote \"${git_remote_name}\") set(git_tag \"${git_tag}\") endif() @@ -1749,6 +1751,11 @@ function(_ep_add_download_command name) endif() get_property(git_submodules TARGET ${name} PROPERTY _EP_GIT_SUBMODULES) + get_property(git_remote_name TARGET ${name} PROPERTY _EP_GIT_REMOTE_NAME) + if(NOT git_remote_name) + set(git_remote_name "origin") + endif() + # For the download step, and the git clone operation, only the repository # should be recorded in a configured RepositoryInfo file. If the repo # changes, the clone script should be run again. But if only the tag @@ -1772,7 +1779,7 @@ function(_ep_add_download_command name) # The script will delete the source directory and then call git clone. # _ep_write_gitclone_script(${tmp_dir}/${name}-gitclone.cmake ${source_dir} - ${GIT_EXECUTABLE} ${git_repository} ${git_tag} "${git_submodules}" ${src_name} ${work_dir} + ${GIT_EXECUTABLE} ${git_repository} ${git_tag} ${git_remote_name} "${git_submodules}" ${src_name} ${work_dir} ${stamp_dir}/${name}-gitinfo.txt ${stamp_dir}/${name}-gitclone-lastrun.txt ) set(comment "Performing download step (git clone) for '${name}'") @@ -1993,9 +2000,13 @@ function(_ep_add_update_command name) if(NOT git_tag) set(git_tag "master") endif() + get_property(git_remote_name TARGET ${name} PROPERTY _EP_GIT_REMOTE_NAME) + if(NOT git_remote_name) + set(git_remote_name "origin") + endif() get_property(git_submodules TARGET ${name} PROPERTY _EP_GIT_SUBMODULES) _ep_write_gitupdate_script(${tmp_dir}/${name}-gitupdate.cmake - ${GIT_EXECUTABLE} ${git_tag} "${git_submodules}" ${git_repository} ${work_dir} + ${GIT_EXECUTABLE} ${git_tag} ${git_remote_name} "${git_submodules}" ${git_repository} ${work_dir} ) set(cmd ${CMAKE_COMMAND} -P ${tmp_dir}/${name}-gitupdate.cmake) set(always 1) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/ExternalProject-git-clone-o.rst | 5 +++++ Modules/ExternalProject.cmake | 23 ++++++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 Help/release/dev/ExternalProject-git-clone-o.rst hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 14:49:03 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 14:49:03 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1983-g3f6e325 Message-ID: <20160115194903.EE66BE2F8C@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 3f6e32535b336418d834e583f5731832c1b1dd85 (commit) via dc201bfd7e76b8022de8d7cb7a779dfe7b272e93 (commit) from 39120bfffe6b2f24cc488bfacf37bc5ca60f5718 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f6e32535b336418d834e583f5731832c1b1dd85 commit 3f6e32535b336418d834e583f5731832c1b1dd85 Merge: 39120bf dc201bf Author: Brad King AuthorDate: Fri Jan 15 14:49:03 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 14:49:03 2016 -0500 Merge topic 'rpath-preserve-compiler-defined' into next dc201bfd install: Do not remove compiler-defined RPATH entries https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dc201bfd7e76b8022de8d7cb7a779dfe7b272e93 commit dc201bfd7e76b8022de8d7cb7a779dfe7b272e93 Author: Lior Goldberg AuthorDate: Fri Dec 25 15:08:51 2015 +0200 Commit: Brad King CommitDate: Fri Jan 15 14:48:10 2016 -0500 install: Do not remove compiler-defined RPATH entries Some compilers may add their own RPATH entries when invoking the linker. For example, a GCC installation may contain the following definition in the specs file: *link_libgcc: %D -rpath <> In this case binaries may contain RPATH entries that CMake did not add. When we update the RPATH on installation we must preserve these entries even if CMake thinks the INSTALL_RPATH value should be empty. Fix this by always using file(RPATH_CHANGE) and teach it to behave as file(RPATH_REMOVE) if the actual RPATH in the file is empty after replacing the build-tree RPATH with the install-tree RPATH. This will preserve any compiler-added RPATH value instead of removing it. diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx index 1158a27..5e88fa2 100644 --- a/Source/cmInstallTargetGenerator.cxx +++ b/Source/cmInstallTargetGenerator.cxx @@ -791,18 +791,10 @@ cmInstallTargetGenerator } // Write a rule to run chrpath to set the install-tree RPATH - if(newRpath.empty()) - { - os << indent << "file(RPATH_REMOVE\n" - << indent << " FILE \"" << toDestDirPath << "\")\n"; - } - else - { - os << indent << "file(RPATH_CHANGE\n" - << indent << " FILE \"" << toDestDirPath << "\"\n" - << indent << " OLD_RPATH \"" << oldRpath << "\"\n" - << indent << " NEW_RPATH \"" << newRpath << "\")\n"; - } + os << indent << "file(RPATH_CHANGE\n" + << indent << " FILE \"" << toDestDirPath << "\"\n" + << indent << " OLD_RPATH \"" << oldRpath << "\"\n" + << indent << " NEW_RPATH \"" << newRpath << "\")\n"; } } diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 008272c..0994032 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -2565,6 +2565,7 @@ bool cmSystemTools::ChangeRPath(std::string const& file, *changed = false; } int rp_count = 0; + bool remove_rpath = true; cmSystemToolsRPathInfo rp[2]; { // Parse the ELF binary. @@ -2622,6 +2623,7 @@ bool cmSystemTools::ChangeRPath(std::string const& file, // If it contains the new rpath instead then it is okay. if(cmSystemToolsFindRPath(se[i]->Value, newRPath) != std::string::npos) { + remove_rpath = false; continue; } if(emsg) @@ -2642,13 +2644,30 @@ bool cmSystemTools::ChangeRPath(std::string const& file, rp[rp_count].Size = se[i]->Size; rp[rp_count].Name = se_name[i]; + std::string::size_type prefix_len = pos; + + // If oldRPath was at the end of the file's RPath, and newRPath is empty, + // we should remove the unnecessary ':' at the end. + if (newRPath.empty() && + pos > 0 && + se[i]->Value[pos - 1] == ':' && + pos + oldRPath.length() == se[i]->Value.length()) + { + prefix_len--; + } + // Construct the new value which preserves the part of the path // not being changed. - rp[rp_count].Value = se[i]->Value.substr(0, pos); + rp[rp_count].Value = se[i]->Value.substr(0, prefix_len); rp[rp_count].Value += newRPath; rp[rp_count].Value += se[i]->Value.substr(pos+oldRPath.length(), oldRPath.npos); + if (!rp[rp_count].Value.empty()) + { + remove_rpath = false; + } + // Make sure there is enough room to store the new rpath and at // least one null terminator. if(rp[rp_count].Size < rp[rp_count].Value.length()+1) @@ -2673,6 +2692,12 @@ bool cmSystemTools::ChangeRPath(std::string const& file, return true; } + // If the resulting rpath is empty, just remove the entire entry instead. + if (remove_rpath) + { + return RemoveRPath(file, emsg, changed); + } + { // Open the file for update. cmsys::ofstream f(file.c_str(), ----------------------------------------------------------------------- Summary of changes: Source/cmInstallTargetGenerator.cxx | 16 ++++------------ Source/cmSystemTools.cxx | 27 ++++++++++++++++++++++++++- 2 files changed, 30 insertions(+), 13 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 14:53:21 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 14:53:21 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1985-ge37e3f1 Message-ID: <20160115195321.58EA3E3124@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 e37e3f18ca209a04568c1d40420fb385fff71aad (commit) via 012b6469f84e2b8cef1b457c1185ed0d97209a80 (commit) from 3f6e32535b336418d834e583f5731832c1b1dd85 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e37e3f18ca209a04568c1d40420fb385fff71aad commit e37e3f18ca209a04568c1d40420fb385fff71aad Merge: 3f6e325 012b646 Author: Brad King AuthorDate: Fri Jan 15 14:53:20 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 14:53:20 2016 -0500 Merge topic 'rpath-preserve-compiler-defined' into next 012b6469 fixup! install: Do not remove compiler-defined RPATH entries https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=012b6469f84e2b8cef1b457c1185ed0d97209a80 commit 012b6469f84e2b8cef1b457c1185ed0d97209a80 Author: Brad King AuthorDate: Fri Jan 15 14:53:12 2016 -0500 Commit: Brad King CommitDate: Fri Jan 15 14:53:12 2016 -0500 fixup! install: Do not remove compiler-defined RPATH entries diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 0994032..a89a6e0b 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -2695,7 +2695,7 @@ bool cmSystemTools::ChangeRPath(std::string const& file, // If the resulting rpath is empty, just remove the entire entry instead. if (remove_rpath) { - return RemoveRPath(file, emsg, changed); + return cmSystemTools::RemoveRPath(file, emsg, changed); } { ----------------------------------------------------------------------- Summary of changes: Source/cmSystemTools.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 14:53:41 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 14:53:41 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1987-ga10f081 Message-ID: <20160115195341.A93D7E276A@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 a10f0819c3ddff6527b8ff2524a66079a245468e (commit) via 3ec9226779776811240bde88a3f173c29aa935b5 (commit) from e37e3f18ca209a04568c1d40420fb385fff71aad (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a10f0819c3ddff6527b8ff2524a66079a245468e commit a10f0819c3ddff6527b8ff2524a66079a245468e Merge: e37e3f1 3ec9226 Author: Brad King AuthorDate: Fri Jan 15 14:53:41 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 14:53:41 2016 -0500 Merge topic 'rpath-preserve-compiler-defined' into next 3ec92267 install: Do not remove compiler-defined RPATH entries https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3ec9226779776811240bde88a3f173c29aa935b5 commit 3ec9226779776811240bde88a3f173c29aa935b5 Author: Lior Goldberg AuthorDate: Fri Dec 25 15:08:51 2015 +0200 Commit: Brad King CommitDate: Fri Jan 15 14:53:24 2016 -0500 install: Do not remove compiler-defined RPATH entries Some compilers may add their own RPATH entries when invoking the linker. For example, a GCC installation may contain the following definition in the specs file: *link_libgcc: %D -rpath <> In this case binaries may contain RPATH entries that CMake did not add. When we update the RPATH on installation we must preserve these entries even if CMake thinks the INSTALL_RPATH value should be empty. Fix this by always using file(RPATH_CHANGE) and teach it to behave as file(RPATH_REMOVE) if the actual RPATH in the file is empty after replacing the build-tree RPATH with the install-tree RPATH. This will preserve any compiler-added RPATH value instead of removing it. diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx index 1158a27..5e88fa2 100644 --- a/Source/cmInstallTargetGenerator.cxx +++ b/Source/cmInstallTargetGenerator.cxx @@ -791,18 +791,10 @@ cmInstallTargetGenerator } // Write a rule to run chrpath to set the install-tree RPATH - if(newRpath.empty()) - { - os << indent << "file(RPATH_REMOVE\n" - << indent << " FILE \"" << toDestDirPath << "\")\n"; - } - else - { - os << indent << "file(RPATH_CHANGE\n" - << indent << " FILE \"" << toDestDirPath << "\"\n" - << indent << " OLD_RPATH \"" << oldRpath << "\"\n" - << indent << " NEW_RPATH \"" << newRpath << "\")\n"; - } + os << indent << "file(RPATH_CHANGE\n" + << indent << " FILE \"" << toDestDirPath << "\"\n" + << indent << " OLD_RPATH \"" << oldRpath << "\"\n" + << indent << " NEW_RPATH \"" << newRpath << "\")\n"; } } diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 008272c..a89a6e0b 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -2565,6 +2565,7 @@ bool cmSystemTools::ChangeRPath(std::string const& file, *changed = false; } int rp_count = 0; + bool remove_rpath = true; cmSystemToolsRPathInfo rp[2]; { // Parse the ELF binary. @@ -2622,6 +2623,7 @@ bool cmSystemTools::ChangeRPath(std::string const& file, // If it contains the new rpath instead then it is okay. if(cmSystemToolsFindRPath(se[i]->Value, newRPath) != std::string::npos) { + remove_rpath = false; continue; } if(emsg) @@ -2642,13 +2644,30 @@ bool cmSystemTools::ChangeRPath(std::string const& file, rp[rp_count].Size = se[i]->Size; rp[rp_count].Name = se_name[i]; + std::string::size_type prefix_len = pos; + + // If oldRPath was at the end of the file's RPath, and newRPath is empty, + // we should remove the unnecessary ':' at the end. + if (newRPath.empty() && + pos > 0 && + se[i]->Value[pos - 1] == ':' && + pos + oldRPath.length() == se[i]->Value.length()) + { + prefix_len--; + } + // Construct the new value which preserves the part of the path // not being changed. - rp[rp_count].Value = se[i]->Value.substr(0, pos); + rp[rp_count].Value = se[i]->Value.substr(0, prefix_len); rp[rp_count].Value += newRPath; rp[rp_count].Value += se[i]->Value.substr(pos+oldRPath.length(), oldRPath.npos); + if (!rp[rp_count].Value.empty()) + { + remove_rpath = false; + } + // Make sure there is enough room to store the new rpath and at // least one null terminator. if(rp[rp_count].Size < rp[rp_count].Value.length()+1) @@ -2673,6 +2692,12 @@ bool cmSystemTools::ChangeRPath(std::string const& file, return true; } + // If the resulting rpath is empty, just remove the entire entry instead. + if (remove_rpath) + { + return cmSystemTools::RemoveRPath(file, emsg, changed); + } + { // Open the file for update. cmsys::ofstream f(file.c_str(), ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 15:05:08 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 15:05:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1989-g32e0619 Message-ID: <20160115200508.E349EE3383@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 32e061936368819a8dc60cac90e4997d60a0a9aa (commit) via 6e92f7b2de3d6a25e4e77e274de110a2974c74ca (commit) from a10f0819c3ddff6527b8ff2524a66079a245468e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=32e061936368819a8dc60cac90e4997d60a0a9aa commit 32e061936368819a8dc60cac90e4997d60a0a9aa Merge: a10f081 6e92f7b Author: Brad King AuthorDate: Fri Jan 15 15:05:07 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 15:05:07 2016 -0500 Merge topic 'doc-export-compile-commands' into next 6e92f7b2 Help: Document the CMAKE_EXPORT_COMPILE_COMMANDS variable https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6e92f7b2de3d6a25e4e77e274de110a2974c74ca commit 6e92f7b2de3d6a25e4e77e274de110a2974c74ca Author: Sebastian Schuberth AuthorDate: Fri Jan 15 15:08:45 2016 +0100 Commit: Brad King CommitDate: Fri Jan 15 15:04:33 2016 -0500 Help: Document the CMAKE_EXPORT_COMPILE_COMMANDS variable diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index 3f49572..15eaece 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -118,6 +118,7 @@ Variables that Change Behavior /variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName /variable/CMAKE_ERROR_DEPRECATED /variable/CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION + /variable/CMAKE_EXPORT_COMPILE_COMMANDS /variable/CMAKE_EXPORT_NO_PACKAGE_REGISTRY /variable/CMAKE_SYSROOT /variable/CMAKE_FIND_APPBUNDLE diff --git a/Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst b/Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst new file mode 100644 index 0000000..8776279 --- /dev/null +++ b/Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst @@ -0,0 +1,30 @@ +CMAKE_EXPORT_COMPILE_COMMANDS +----------------------------- + +Enable/Disable output of compile commands during generation. + +If enabled, generates a ``compile_commands.json`` file containing the exact +compiler calls for all translation units of the project in machine-readable +form. The format of the JSON file looks like: + +.. code-block:: javascript + + [ + { + "directory": "/home/user/development/project", + "command": "/usr/bin/c++ ... -c ../foo/foo.cc", + "file": "../foo/foo.cc" + }, + + ... + + { + "directory": "/home/user/development/project", + "command": "/usr/bin/c++ ... -c ../foo/bar.cc", + "file": "../foo/bar.cc" + } + ] + +.. note:: + This option is implemented only by :ref:`Makefile Generators` + and the :generator:`Ninja`. It is ignored on other generators. ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-variables.7.rst | 1 + Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst | 30 +++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 15 15:13:51 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 15 Jan 2016 15:13:51 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-1991-gba89125 Message-ID: <20160115201351.739C2E29C1@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 ba8912559febcc1614558d2fb08ec802aa6602f4 (commit) via 8979a1070097fde3ca0ab45bdd6580b7acd07ca4 (commit) from 32e061936368819a8dc60cac90e4997d60a0a9aa (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ba8912559febcc1614558d2fb08ec802aa6602f4 commit ba8912559febcc1614558d2fb08ec802aa6602f4 Merge: 32e0619 8979a10 Author: Brad King AuthorDate: Fri Jan 15 15:13:50 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 15 15:13:50 2016 -0500 Merge topic 'FindPkgConfig-fix-restore' into next 8979a107 FindPkgConfig: Fix restoration of PKG_CONFIG_PATH in environment https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8979a1070097fde3ca0ab45bdd6580b7acd07ca4 commit 8979a1070097fde3ca0ab45bdd6580b7acd07ca4 Author: Rob Gowin AuthorDate: Fri Jan 15 11:52:00 2016 -0600 Commit: Brad King CommitDate: Fri Jan 15 15:12:34 2016 -0500 FindPkgConfig: Fix restoration of PKG_CONFIG_PATH in environment The original value is saved in `_pkg_config_path_old`. Fix this typo left by commit v3.1.0-rc1~763^2 (FindPkgConfig: Extend PKG_CONFIG_PATH using CMake variables, 2014-03-06). diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake index eba6953..f24d2da 100644 --- a/Modules/FindPkgConfig.cmake +++ b/Modules/FindPkgConfig.cmake @@ -401,7 +401,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma if(NOT "${_extra_paths}" STREQUAL "") # Restore the environment variable - set(ENV{PKG_CONFIG_PATH} ${_pkgconfig_path}) + set(ENV{PKG_CONFIG_PATH} ${_pkgconfig_path_old}) endif() unset(_extra_paths) ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From kwrobot at kitware.com Sat Jan 16 00:01:12 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sat, 16 Jan 2016 00:01:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-848-g66942a7 Message-ID: <20160116050112.85561E2FDD@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 66942a764cd7692921080247e184b26d43140e54 (commit) from b8d002af1aeefb435a9560b056f081e5d8dff734 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=66942a764cd7692921080247e184b26d43140e54 commit 66942a764cd7692921080247e184b26d43140e54 Author: Kitware Robot AuthorDate: Sat Jan 16 00:01:07 2016 -0500 Commit: Kitware Robot CommitDate: Sat Jan 16 00:01:07 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 17ed248..39c0347 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 4) -set(CMake_VERSION_PATCH 20160115) +set(CMake_VERSION_PATCH 20160116) #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 Sun Jan 17 00:01:09 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 17 Jan 2016 00:01:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-849-g27410a9 Message-ID: <20160117050109.9348AE30AA@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 27410a9c62f883f3bada885b0ef6cdb343ea40b5 (commit) from 66942a764cd7692921080247e184b26d43140e54 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=27410a9c62f883f3bada885b0ef6cdb343ea40b5 commit 27410a9c62f883f3bada885b0ef6cdb343ea40b5 Author: Kitware Robot AuthorDate: Sun Jan 17 00:01:07 2016 -0500 Commit: Kitware Robot CommitDate: Sun Jan 17 00:01:07 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 39c0347..7e895f3 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 4) -set(CMake_VERSION_PATCH 20160116) +set(CMake_VERSION_PATCH 20160117) #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 Jan 18 00:01:10 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Mon, 18 Jan 2016 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-850-g03c0303 Message-ID: <20160118050110.2146FE30DA@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 03c0303d2e4bc07b9c5df1ecdbf89da6e36259d9 (commit) from 27410a9c62f883f3bada885b0ef6cdb343ea40b5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=03c0303d2e4bc07b9c5df1ecdbf89da6e36259d9 commit 03c0303d2e4bc07b9c5df1ecdbf89da6e36259d9 Author: Kitware Robot AuthorDate: Mon Jan 18 00:01:06 2016 -0500 Commit: Kitware Robot CommitDate: Mon Jan 18 00:01:06 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 7e895f3..cb13018 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 4) -set(CMake_VERSION_PATCH 20160117) +set(CMake_VERSION_PATCH 20160118) #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 Tue Jan 19 00:01:11 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Tue, 19 Jan 2016 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-851-g5079cc1 Message-ID: <20160119050111.6C0B7E333E@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 5079cc1243e3ffaea353c88a97b7d605c0807667 (commit) from 03c0303d2e4bc07b9c5df1ecdbf89da6e36259d9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5079cc1243e3ffaea353c88a97b7d605c0807667 commit 5079cc1243e3ffaea353c88a97b7d605c0807667 Author: Kitware Robot AuthorDate: Tue Jan 19 00:01:07 2016 -0500 Commit: Kitware Robot CommitDate: Tue Jan 19 00:01:07 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index cb13018..b38f6eb 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 4) -set(CMake_VERSION_PATCH 20160118) +set(CMake_VERSION_PATCH 20160119) #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 Jan 19 09:35:32 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:32 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-853-g2a73530 Message-ID: <20160119143532.7DBD8E3836@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 2a73530be91cd39c8aa534c9b924f16e79034bd2 (commit) via 09b2f1c3f5819a5a3ec03069e7c2811172ac3591 (commit) from 5079cc1243e3ffaea353c88a97b7d605c0807667 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2a73530be91cd39c8aa534c9b924f16e79034bd2 commit 2a73530be91cd39c8aa534c9b924f16e79034bd2 Merge: 5079cc1 09b2f1c Author: Brad King AuthorDate: Tue Jan 19 09:35:30 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:30 2016 -0500 Merge topic 'windows-program-files' 09b2f1c3 Windows: Find Program Files directories more robustly from environment ----------------------------------------------------------------------- Summary of changes: Modules/Platform/WindowsPaths.cmake | 52 +++++++++++++---------------------- 1 file changed, 19 insertions(+), 33 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:35:34 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-855-gcaf4985 Message-ID: <20160119143535.147D0E27AB@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 caf49853463a1ae7dec830cf82737c63b9625c3b (commit) via 3ec9226779776811240bde88a3f173c29aa935b5 (commit) from 2a73530be91cd39c8aa534c9b924f16e79034bd2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=caf49853463a1ae7dec830cf82737c63b9625c3b commit caf49853463a1ae7dec830cf82737c63b9625c3b Merge: 2a73530 3ec9226 Author: Brad King AuthorDate: Tue Jan 19 09:35:33 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:33 2016 -0500 Merge topic 'rpath-preserve-compiler-defined' 3ec92267 install: Do not remove compiler-defined RPATH entries ----------------------------------------------------------------------- Summary of changes: Source/cmInstallTargetGenerator.cxx | 16 ++++------------ Source/cmSystemTools.cxx | 27 ++++++++++++++++++++++++++- 2 files changed, 30 insertions(+), 13 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:35:37 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:37 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-857-g790959a Message-ID: <20160119143537.7C865E383E@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 790959aa9df923ae78ab5cb3c347a4413418273d (commit) via 6ccc307053f03c4c48a2cb9d5795f91d341a5c39 (commit) from caf49853463a1ae7dec830cf82737c63b9625c3b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=790959aa9df923ae78ab5cb3c347a4413418273d commit 790959aa9df923ae78ab5cb3c347a4413418273d Merge: caf4985 6ccc307 Author: Brad King AuthorDate: Tue Jan 19 09:35:35 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:35 2016 -0500 Merge topic 'FindCUDA-verbatim' 6ccc3070 FindCUDA: Support special characters in path (#15919) ----------------------------------------------------------------------- Summary of changes: Modules/FindCUDA.cmake | 3 +++ 1 file changed, 3 insertions(+) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:35:40 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:40 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-859-gceeea23 Message-ID: <20160119143540.10FA9E3845@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 ceeea23323837bd3cd51f35dd339d4c6f9414c78 (commit) via 6e92f7b2de3d6a25e4e77e274de110a2974c74ca (commit) from 790959aa9df923ae78ab5cb3c347a4413418273d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ceeea23323837bd3cd51f35dd339d4c6f9414c78 commit ceeea23323837bd3cd51f35dd339d4c6f9414c78 Merge: 790959a 6e92f7b Author: Brad King AuthorDate: Tue Jan 19 09:35:38 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:38 2016 -0500 Merge topic 'doc-export-compile-commands' 6e92f7b2 Help: Document the CMAKE_EXPORT_COMPILE_COMMANDS variable ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-variables.7.rst | 1 + Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst | 30 +++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 Help/variable/CMAKE_EXPORT_COMPILE_COMMANDS.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:35:42 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-861-g65146af Message-ID: <20160119143542.BC8D6E3836@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 65146afc4e6b7fd9394e475e7d5e5ef9d0f10401 (commit) via 83d633919a75bde05acdf642ff79c5b310fce824 (commit) from ceeea23323837bd3cd51f35dd339d4c6f9414c78 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=65146afc4e6b7fd9394e475e7d5e5ef9d0f10401 commit 65146afc4e6b7fd9394e475e7d5e5ef9d0f10401 Merge: ceeea23 83d6339 Author: Brad King AuthorDate: Tue Jan 19 09:35:40 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:40 2016 -0500 Merge topic 'ExternalProject-git-clone-o' 83d63391 ExternalProject: Add option to set `git clone -o` argument ----------------------------------------------------------------------- Summary of changes: Help/release/dev/ExternalProject-git-clone-o.rst | 5 +++++ Modules/ExternalProject.cmake | 23 ++++++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 Help/release/dev/ExternalProject-git-clone-o.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:35:45 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:45 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-863-gf8f5315 Message-ID: <20160119143545.3AB1BE383E@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 f8f531584716e732a8f0da44e285e996cb172574 (commit) via 8979a1070097fde3ca0ab45bdd6580b7acd07ca4 (commit) from 65146afc4e6b7fd9394e475e7d5e5ef9d0f10401 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f8f531584716e732a8f0da44e285e996cb172574 commit f8f531584716e732a8f0da44e285e996cb172574 Merge: 65146af 8979a10 Author: Brad King AuthorDate: Tue Jan 19 09:35:43 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:43 2016 -0500 Merge topic 'FindPkgConfig-fix-restore' 8979a107 FindPkgConfig: Fix restoration of PKG_CONFIG_PATH in environment ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:35:47 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:35:47 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-867-g249aac7 Message-ID: <20160119143547.BB15AE383B@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 249aac71d0b0022031d16963f3b46f9860919104 (commit) via aea1b03617bed037bbd12af36d7ef92feff0ba74 (commit) via e5cbec14a5aec9203bd0e29fa0172fa00c97e521 (commit) via 0ca122fcb3df3331a6daaeec090bd967daa0f2b9 (commit) from f8f531584716e732a8f0da44e285e996cb172574 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=249aac71d0b0022031d16963f3b46f9860919104 commit 249aac71d0b0022031d16963f3b46f9860919104 Merge: f8f5315 aea1b03 Author: Brad King AuthorDate: Tue Jan 19 09:35:46 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:35:46 2016 -0500 Merge topic 'export-static-private-depend' aea1b036 Fix export of STATIC library PRIVATE dependencies with CMP0022 NEW e5cbec14 Tests: Use CMP0022 NEW behavior in some ExportImport cases 0ca122fc Tests: Isolate policy changes in ExportImport test ----------------------------------------------------------------------- Summary of changes: Source/cmTargetLinkLibrariesCommand.cxx | 7 +++++-- Tests/ExportImport/Export/CMakeLists.txt | 16 ++++++++++++++-- Tests/ExportImport/Export/testLibDepends.c | 7 ++++++- .../ExportImport/Export/testStaticLibRequiredPrivate.c | 1 + 4 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 Tests/ExportImport/Export/testStaticLibRequiredPrivate.c hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 09:36:07 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:36:07 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2003-gd78f9e3 Message-ID: <20160119143607.61864E384A@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 d78f9e3595c1b901670e9d57c9620e792c797470 (commit) via 249aac71d0b0022031d16963f3b46f9860919104 (commit) via f8f531584716e732a8f0da44e285e996cb172574 (commit) via 65146afc4e6b7fd9394e475e7d5e5ef9d0f10401 (commit) via ceeea23323837bd3cd51f35dd339d4c6f9414c78 (commit) via 790959aa9df923ae78ab5cb3c347a4413418273d (commit) via caf49853463a1ae7dec830cf82737c63b9625c3b (commit) via 2a73530be91cd39c8aa534c9b924f16e79034bd2 (commit) via 5079cc1243e3ffaea353c88a97b7d605c0807667 (commit) via 03c0303d2e4bc07b9c5df1ecdbf89da6e36259d9 (commit) via 27410a9c62f883f3bada885b0ef6cdb343ea40b5 (commit) via 66942a764cd7692921080247e184b26d43140e54 (commit) from ba8912559febcc1614558d2fb08ec802aa6602f4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d78f9e3595c1b901670e9d57c9620e792c797470 commit d78f9e3595c1b901670e9d57c9620e792c797470 Merge: ba89125 249aac7 Author: Brad King AuthorDate: Tue Jan 19 09:35:59 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 09:35:59 2016 -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 Jan 19 09:39:40 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 09:39:40 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2005-g29b8a5b Message-ID: <20160119143940.34704E1ECA@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 29b8a5bbf4460d565822bd6e46a8ea08d9ffb166 (commit) via 53511936e43c14f362b1e1ba069a77f5ba251ccc (commit) from d78f9e3595c1b901670e9d57c9620e792c797470 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=29b8a5bbf4460d565822bd6e46a8ea08d9ffb166 commit 29b8a5bbf4460d565822bd6e46a8ea08d9ffb166 Merge: d78f9e3 5351193 Author: Brad King AuthorDate: Tue Jan 19 09:39:39 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 09:39:39 2016 -0500 Merge topic 'FindPkgConfig-protect-semicolons' into next 53511936 FindPkgConfig: Quote ${_pkgconfig_path} to protect semicolons on Windows https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=53511936e43c14f362b1e1ba069a77f5ba251ccc commit 53511936e43c14f362b1e1ba069a77f5ba251ccc Author: Rob Gowin AuthorDate: Fri Jan 15 18:43:53 2016 -0600 Commit: Brad King CommitDate: Tue Jan 19 09:39:04 2016 -0500 FindPkgConfig: Quote ${_pkgconfig_path} to protect semicolons on Windows diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake index f24d2da..177e7b8 100644 --- a/Modules/FindPkgConfig.cmake +++ b/Modules/FindPkgConfig.cmake @@ -238,8 +238,8 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma if(NOT "${_extra_paths}" STREQUAL "") # Save the PKG_CONFIG_PATH environment variable, and add paths # from the CMAKE_PREFIX_PATH variables - set(_pkgconfig_path_old $ENV{PKG_CONFIG_PATH}) - set(_pkgconfig_path ${_pkgconfig_path_old}) + set(_pkgconfig_path_old "$ENV{PKG_CONFIG_PATH}") + set(_pkgconfig_path "${_pkgconfig_path_old}") if(NOT "${_pkgconfig_path}" STREQUAL "") file(TO_CMAKE_PATH "${_pkgconfig_path}" _pkgconfig_path) endif() @@ -285,7 +285,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma string(REPLACE ";" ":" _pkgconfig_path "${_pkgconfig_path}") string(REPLACE "\\ " " " _pkgconfig_path "${_pkgconfig_path}") endif() - set(ENV{PKG_CONFIG_PATH} ${_pkgconfig_path}) + set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path}") endif() # Unset variables @@ -401,7 +401,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma if(NOT "${_extra_paths}" STREQUAL "") # Restore the environment variable - set(ENV{PKG_CONFIG_PATH} ${_pkgconfig_path_old}) + set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path_old}") endif() unset(_extra_paths) ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 10:20:16 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 10:20:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2007-g5c0d5f0 Message-ID: <20160119152016.A16BBE323D@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 5c0d5f06d4e3a021abf17b2469ef7f7e0103b2fd (commit) via 77cd74a3ea964fa390d85c371902387e9ffc4a92 (commit) from 29b8a5bbf4460d565822bd6e46a8ea08d9ffb166 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5c0d5f06d4e3a021abf17b2469ef7f7e0103b2fd commit 5c0d5f06d4e3a021abf17b2469ef7f7e0103b2fd Merge: 29b8a5b 77cd74a Author: Brad King AuthorDate: Tue Jan 19 10:20:15 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 10:20:15 2016 -0500 Merge topic 'cache-parse-error-line-number' into next 77cd74a3 Print line number of cache parse errors (#11109) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=77cd74a3ea964fa390d85c371902387e9ffc4a92 commit 77cd74a3ea964fa390d85c371902387e9ffc4a92 Author: Ashley Whetter AuthorDate: Sun Jan 17 22:09:30 2016 +0000 Commit: Brad King CommitDate: Tue Jan 19 10:19:42 2016 -0500 Print line number of cache parse errors (#11109) Track the line number while parsing `CMakeCache.txt` files and include it in a parse failure error message. diff --git a/Source/cmCacheManager.cxx b/Source/cmCacheManager.cxx index ce8af55..7466c29 100644 --- a/Source/cmCacheManager.cxx +++ b/Source/cmCacheManager.cxx @@ -64,12 +64,14 @@ bool cmCacheManager::LoadCache(const std::string& path, const char *realbuffer; std::string buffer; std::string entryKey; + unsigned int lineno = 0; while(fin) { // Format is key:type=value std::string helpString; CacheEntry e; cmSystemTools::GetLineFromStream(fin, buffer); + lineno++; realbuffer = buffer.c_str(); while(*realbuffer != '0' && (*realbuffer == ' ' || @@ -77,6 +79,7 @@ bool cmCacheManager::LoadCache(const std::string& path, *realbuffer == '\r' || *realbuffer == '\n')) { + if (*realbuffer == '\n') lineno++; realbuffer++; } // skip blank lines and comment lines @@ -96,6 +99,7 @@ bool cmCacheManager::LoadCache(const std::string& path, helpString += &realbuffer[2]; } cmSystemTools::GetLineFromStream(fin, buffer); + lineno++; realbuffer = buffer.c_str(); if(!fin) { @@ -138,8 +142,10 @@ bool cmCacheManager::LoadCache(const std::string& path, } else { - cmSystemTools::Error("Parse error in cache file ", cacheFile.c_str(), - ". Offending entry: ", realbuffer); + std::ostringstream error; + error << "Parse error in cache file " << cacheFile; + error << " on line " << lineno << ". Offending entry: " << realbuffer; + cmSystemTools::Error(error.str().c_str()); } } this->CacheMajorVersion = 0; diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake index e77ba1f..8068973 100644 --- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake +++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake @@ -33,6 +33,11 @@ run_cmake_command(build-bad-dir run_cmake_command(build-bad-generator ${CMAKE_COMMAND} --build ${RunCMake_SOURCE_DIR}/cache-bad-generator) +run_cmake_command(cache-bad-entry + ${CMAKE_COMMAND} --build ${RunCMake_SOURCE_DIR}/cache-bad-entry/) +run_cmake_command(cache-empty-entry + ${CMAKE_COMMAND} --build ${RunCMake_SOURCE_DIR}/cache-empty-entry/) + function(run_BuildDir) # Use a single build tree for a few tests without cleaning. set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/BuildDir-build) diff --git a/Tests/RunCMake/CommandLine/cache-bad-entry-result.txt b/Tests/RunCMake/CommandLine/cache-bad-entry-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CommandLine/cache-bad-entry-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt b/Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt new file mode 100644 index 0000000..150d2ca --- /dev/null +++ b/Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt @@ -0,0 +1 @@ +^CMake Error: Parse error in cache file .*/Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt on line 7. Offending entry: BAD ENTRY.* diff --git a/Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt b/Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt new file mode 100644 index 0000000..75cd7c2 --- /dev/null +++ b/Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt @@ -0,0 +1,10 @@ +# This is a comment + +// That was an empty line. This isn't. +EMPTY_LINE:BOOL=FALSE + +// Uhoh! Here it comes +BAD ENTRY + +// This is fine +GOOD_ENTRY:BOOL=TRUE diff --git a/Tests/RunCMake/CommandLine/cache-empty-entry-result.txt b/Tests/RunCMake/CommandLine/cache-empty-entry-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CommandLine/cache-empty-entry-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt b/Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt new file mode 100644 index 0000000..54f4452 --- /dev/null +++ b/Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt @@ -0,0 +1 @@ +^CMake Error: Parse error in cache file .*/Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt on line 5. Offending entry:.* diff --git a/Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt b/Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt new file mode 100644 index 0000000..44da1c9 --- /dev/null +++ b/Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt @@ -0,0 +1,7 @@ +// This is valid +VALID:BOOL=TRUE + +// This isn't + +// One final entry +FINAL:BOOL=TRUE ----------------------------------------------------------------------- Summary of changes: Source/cmCacheManager.cxx | 10 ++++++++-- Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 5 +++++ .../cache-bad-entry-result.txt} | 0 Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt | 1 + Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt | 10 ++++++++++ .../cache-empty-entry-result.txt} | 0 Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt | 1 + Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt | 7 +++++++ 8 files changed, 32 insertions(+), 2 deletions(-) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/cache-bad-entry-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/cache-empty-entry-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 10:38:06 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 10:38:06 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2009-gab20512 Message-ID: <20160119153806.97623E388F@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 ab20512b3440a17f47ea559d2df200b1bfd8a13e (commit) via 18c3714f4f4cf35f2b040d887850cb3607345e5d (commit) from 5c0d5f06d4e3a021abf17b2469ef7f7e0103b2fd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ab20512b3440a17f47ea559d2df200b1bfd8a13e commit ab20512b3440a17f47ea559d2df200b1bfd8a13e Merge: 5c0d5f0 18c3714 Author: Brad King AuthorDate: Tue Jan 19 10:38:05 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 10:38:05 2016 -0500 Merge topic 'java-updates' into next 18c3714f UseJava: Fix create_javah CLASSPATH handling on Windows https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=18c3714f4f4cf35f2b040d887850cb3607345e5d commit 18c3714f4f4cf35f2b040d887850cb3607345e5d Author: Marc Chevrier AuthorDate: Tue Jan 19 09:52:04 2016 +0100 Commit: Brad King CommitDate: Tue Jan 19 10:36:11 2016 -0500 UseJava: Fix create_javah CLASSPATH handling on Windows Preserve semicolons in the value. diff --git a/Modules/UseJava.cmake b/Modules/UseJava.cmake index 6146d78..adaba02 100644 --- a/Modules/UseJava.cmake +++ b/Modules/UseJava.cmake @@ -1212,7 +1212,7 @@ function (create_javah) set (_output_files) if (WIN32 AND NOT CYGWIN AND CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") - set(_classpath_sep ";") + set(_classpath_sep "$") else () set(_classpath_sep ":") endif() @@ -1242,7 +1242,7 @@ function (create_javah) endif() endforeach() string (REPLACE ";" "${_classpath_sep}" _classpath "${_classpath}") - list (APPEND _javah_options -classpath ${_classpath}) + list (APPEND _javah_options -classpath "${_classpath}") endif() if (_create_javah_OUTPUT_DIR) diff --git a/Tests/JavaJavah/C.cpp b/Tests/JavaJavah/C.cpp new file mode 100644 index 0000000..ec75f42 --- /dev/null +++ b/Tests/JavaJavah/C.cpp @@ -0,0 +1,10 @@ + +#include +#include + +#include "C.h" + +JNIEXPORT void JNICALL Java_C_printName(JNIEnv *, jobject) +{ + printf("C\n"); +} diff --git a/Tests/JavaJavah/C.java b/Tests/JavaJavah/C.java new file mode 100644 index 0000000..54b1be2 --- /dev/null +++ b/Tests/JavaJavah/C.java @@ -0,0 +1,19 @@ +class C +{ + public C() + { + } + + public native void printName(); + + static { + try { + + System.loadLibrary("B"); + + } catch (UnsatisfiedLinkError e) { + System.err.println("Native code library failed to load.\n" + e); + System.exit(1); + } + } +} diff --git a/Tests/JavaJavah/CMakeLists.txt b/Tests/JavaJavah/CMakeLists.txt index 83b0ad0..071bf20 100644 --- a/Tests/JavaJavah/CMakeLists.txt +++ b/Tests/JavaJavah/CMakeLists.txt @@ -9,10 +9,13 @@ include (UseJava) # JNI support find_package(JNI) -add_jar(hello3 B.java HelloWorld2.java) -create_javah(TARGET B_javah CLASSES B CLASSPATH hello3) +add_jar(B1 B.java) +add_jar(C1 C.java) +create_javah(TARGET B_javah CLASSES B C CLASSPATH B1 C1) -add_library(B SHARED B.cpp) +add_jar(hello3 HelloWorld2.java) + +add_library(B SHARED B.cpp C.cpp) add_dependencies(B B_javah) target_include_directories(B PRIVATE ${CMAKE_CURRENT_BINARY_DIR} diff --git a/Tests/JavaJavah/HelloWorld2.java b/Tests/JavaJavah/HelloWorld2.java index faf7277..5ff710f 100644 --- a/Tests/JavaJavah/HelloWorld2.java +++ b/Tests/JavaJavah/HelloWorld2.java @@ -5,6 +5,11 @@ class HelloWorld2 B b; b = new B(); b.printName(); + + C c; + c = new C(); + c.printName(); + System.out.println("Hello World!"); } } ----------------------------------------------------------------------- Summary of changes: Modules/UseJava.cmake | 4 ++-- Tests/JavaJavah/C.cpp | 10 ++++++++++ Tests/JavaJavah/{B.java => C.java} | 4 ++-- Tests/JavaJavah/CMakeLists.txt | 9 ++++++--- Tests/JavaJavah/HelloWorld2.java | 5 +++++ 5 files changed, 25 insertions(+), 7 deletions(-) create mode 100644 Tests/JavaJavah/C.cpp copy Tests/JavaJavah/{B.java => C.java} (93%) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 10:46:57 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 10:46:57 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-869-ge4a135d Message-ID: <20160119154657.2ED9FE3246@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 e4a135dc446475b01a2c4d60dac0d8c5c8078590 (commit) via 8ce5ff8d9e411d7d27176881b98bf733da90791f (commit) from 249aac71d0b0022031d16963f3b46f9860919104 (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 Jan 19 10:46:57 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 10:46:57 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2012-g7ebea33a Message-ID: <20160119154657.59B48E325F@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 7ebea33aa830e776fad129f2b238d0777abd626a (commit) via e4a135dc446475b01a2c4d60dac0d8c5c8078590 (commit) via 8ce5ff8d9e411d7d27176881b98bf733da90791f (commit) from ab20512b3440a17f47ea559d2df200b1bfd8a13e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7ebea33aa830e776fad129f2b238d0777abd626a commit 7ebea33aa830e776fad129f2b238d0777abd626a Merge: ab20512 e4a135d Author: Brad King AuthorDate: Tue Jan 19 10:46:47 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 10:46:47 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 10:46:57 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 10:46:57 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.4.1-12-g8ce5ff8 Message-ID: <20160119154657.6B337E3260@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 8ce5ff8d9e411d7d27176881b98bf733da90791f (commit) via a57caf7eecdfe61e4ac5f63b145fc9269610f3f0 (commit) via ad594de8cc9c4063830df58453b0679c209ff4d8 (commit) via c173e37fa32b9d212cc6305f5e6dc881ba34e140 (commit) from e1f9d3c0a01fa62eaf933142cb07308eba57acd9 (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/cmGlobalVisualStudio14Generator.cxx | 42 +++++++++++++++++----------- Source/cmSystemTools.cxx | 8 ++++++ Source/cmSystemTools.h | 2 ++ 3 files changed, 35 insertions(+), 17 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 10:49:00 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 10:49:00 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2015-g6ed6ba6 Message-ID: <20160119154900.9E9B4E2CF2@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 6ed6ba600f7852c34d917dd8fcdff14992201352 (commit) via be0031e0720e4e1a6ac7d2a8f77b27c7f6ab292a (commit) via 6506dcaa20a7d17737517dbcba6102be564d8d66 (commit) from 7ebea33aa830e776fad129f2b238d0777abd626a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6ed6ba600f7852c34d917dd8fcdff14992201352 commit 6ed6ba600f7852c34d917dd8fcdff14992201352 Merge: 7ebea33a be0031e Author: Brad King AuthorDate: Tue Jan 19 10:48:59 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 10:48:59 2016 -0500 Merge topic 'test-release' into next be0031e0 Merge branch 'release' into test-release 6506dcaa CMake 3.4.2 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=be0031e0720e4e1a6ac7d2a8f77b27c7f6ab292a commit be0031e0720e4e1a6ac7d2a8f77b27c7f6ab292a Merge: e4a135d 6506dca Author: Brad King AuthorDate: Tue Jan 19 10:48:46 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 10:48:46 2016 -0500 Merge branch 'release' into test-release https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6506dcaa20a7d17737517dbcba6102be564d8d66 commit 6506dcaa20a7d17737517dbcba6102be564d8d66 Author: Brad King AuthorDate: Tue Jan 19 10:47:26 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 10:47:26 2016 -0500 CMake 3.4.2 diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 5717d37..4b3e7f7 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 4) -set(CMake_VERSION_PATCH 1) +set(CMake_VERSION_PATCH 2) #set(CMake_VERSION_RC 0) ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From rleigh at codelibre.net Tue Jan 19 10:57:04 2016 From: rleigh at codelibre.net (Roger Leigh) Date: Tue, 19 Jan 2016 10:57:04 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2017-g867a79a Message-ID: <20160119155704.4ADFEE35A9@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 867a79a332bd3bf9c48e3a713962ead9d96d04c2 (commit) via 6100263329ac590e489f9454840be8ee71ef02fb (commit) from 6ed6ba600f7852c34d917dd8fcdff14992201352 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=867a79a332bd3bf9c48e3a713962ead9d96d04c2 commit 867a79a332bd3bf9c48e3a713962ead9d96d04c2 Merge: 6ed6ba6 6100263 Author: Roger Leigh AuthorDate: Tue Jan 19 10:57:03 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 10:57:03 2016 -0500 Merge topic 'xalanc' into next 61002633 FindXalanC: New module to find the Apache Xalan-C++ library https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6100263329ac590e489f9454840be8ee71ef02fb commit 6100263329ac590e489f9454840be8ee71ef02fb Author: Roger Leigh AuthorDate: Tue Jan 19 13:32:38 2016 +0000 Commit: Roger Leigh CommitDate: Tue Jan 19 15:53:04 2016 +0000 FindXalanC: New module to find the Apache Xalan-C++ library diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake new file mode 100644 index 0000000..7599bd4 --- /dev/null +++ b/Modules/FindXalanC.cmake @@ -0,0 +1,150 @@ +#.rst: +# FindXalanC +# ----------- +# +# Find the Apache Xalan-C++ XSL transform processor headers and libraries. +# +# Imported targets +# ^^^^^^^^^^^^^^^^ +# +# This module defines the following :prop_tgt:`IMPORTED` targets: +# +# ``XalanC::XalanC`` +# The Xalan-C++ ``xalan-c`` library, if found. +# +# Result variables +# ^^^^^^^^^^^^^^^^ +# +# This module will set the following variables in your project: +# +# ``XalanC_FOUND`` +# true if the Xalan headers and libraries were found +# ``XalanC_VERSION`` +# Xalan release version +# ``XalanC_INCLUDE_DIRS`` +# the directory containing the Xalan headers; note +# ``XercesC_INCLUDE_DIRS`` is also required +# ``XalanC_LIBRARIES`` +# Xalan libraries to be linked; note ``XercesC_LIBRARIES`` is also +# required +# +# Cache variables +# ^^^^^^^^^^^^^^^ +# +# The following cache variables may also be set: +# +# ``XalanC_INCLUDE_DIR`` +# the directory containing the Xalan headers +# ``XalanC_LIBRARY`` +# the Xalan library + +# Written by Roger Leigh + +#============================================================================= +# Copyright 2016 University of Dundee +# +# 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.) + +function(_XalanC_GET_VERSION version_hdr) + file(STRINGS ${version_hdr} _contents REGEX "^[ \t]*#define XALAN_VERSION_.*") + if(_contents) + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" XalanC_MAJOR "${_contents}") + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_MINOR[ \t]+([0-9]+).*" "\\1" XalanC_MINOR "${_contents}") + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_REVISION[ \t]+([0-9]+).*" "\\1" XalanC_PATCH "${_contents}") + + if(NOT XalanC_MAJOR MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_MAJOR!") + endif() + if(NOT XalanC_MINOR MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_MINOR!") + endif() + if(NOT XalanC_PATCH MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_REVISION!") + endif() + + set(XalanC_VERSION "${XalanC_MAJOR}.${XalanC_MINOR}.${XalanC_PATCH}" PARENT_SCOPE) + else() + message(FATAL_ERROR "Include file ${version_hdr} does not exist or does not contain expected version information") + endif() +endfunction() + +# Find include directory +find_path(XalanC_INCLUDE_DIR + NAMES "xalanc/XalanTransformer/XalanTransformer.hpp" + DOC "Xalan-C++ include directory") +mark_as_advanced(XalanC_INCLUDE_DIR) + +if(XalanC_INCLUDE_DIR) + _XalanC_GET_VERSION("${XalanC_INCLUDE_DIR}/xalanc/Include/XalanVersion.hpp") +endif() + +if(NOT XalanC_LIBRARY) + # Find all XalanC libraries + find_library(XalanC_LIBRARY_RELEASE + NAMES "Xalan-C" "xalan-c" + "Xalan-C_${XalanC_MAJOR}" + "Xalan-C_${XalanC_MAJOR}_${XalanC_MINOR}" + DOC "Xalan-C++ libraries (release)") + find_library(XalanC_LIBRARY_DEBUG + NAMES "Xalan-CD" "xalan-cd" + "Xalan-C_${XalanC_MAJOR}D" + "Xalan-C_${XalanC_MAJOR}_${XalanC_MINOR}D" + DOC "Xalan-C++ libraries (debug)") + include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake) + select_library_configurations(XalanC) + mark_as_advanced(XalanC_LIBRARY_RELEASE XalanC_LIBRARY_DEBUG) +endif() + +find_package(XercesC 3.0.0 REQUIRED) + +include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC + FOUND_VAR XalanC_FOUND + REQUIRED_VARS XalanC_LIBRARY + XalanC_INCLUDE_DIR + XalanC_VERSION + XercesC_FOUND + VERSION_VAR XalanC_VERSION + FAIL_MESSAGE "Failed to find XalanC") + +if(XalanC_FOUND) + set(XalanC_INCLUDE_DIRS "${XalanC_INCLUDE_DIR}") + set(XalanC_LIBRARIES "${XalanC_LIBRARY}") + + # For header-only libraries + if(NOT TARGET XalanC::XalanC) + add_library(XalanC::XalanC UNKNOWN IMPORTED) + if(XalanC_INCLUDE_DIRS) + set_target_properties(XalanC::XalanC PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${XalanC_INCLUDE_DIRS}") + endif() + if(EXISTS "${XalanC_LIBRARY}") + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${XalanC_LIBRARY}") + endif() + if(EXISTS "${XalanC_LIBRARY_DEBUG}") + set_property(TARGET XalanC::XalanC APPEND PROPERTY + IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "CXX" + IMPORTED_LOCATION_DEBUG "${XalanC_LIBRARY_DEBUG}") + endif() + if(EXISTS "${XalanC_LIBRARY_RELEASE}") + set_property(TARGET XalanC::XalanC APPEND PROPERTY + IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" + IMPORTED_LOCATION_RELEASE "${XalanC_LIBRARY_RELEASE}") + endif() + set_target_properties(XalanC::XalanC PROPERTIES INTERFACE_LINK_LIBRARIES XercesC::XercesC) + endif() +endif() diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 043b757..240144f 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1379,6 +1379,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindTIFF) endif() + if(CMake_TEST_FindXalanC) + add_subdirectory(FindXalanC) + endif() + if(CMake_TEST_FindXercesC) add_subdirectory(FindXercesC) endif() diff --git a/Tests/FindXalanC/CMakeLists.txt b/Tests/FindXalanC/CMakeLists.txt new file mode 100644 index 0000000..7872929 --- /dev/null +++ b/Tests/FindXalanC/CMakeLists.txt @@ -0,0 +1,10 @@ +add_test(NAME FindXalanC.Test COMMAND + ${CMAKE_CTEST_COMMAND} -C $ + --build-and-test + "${CMake_SOURCE_DIR}/Tests/FindXalanC/Test" + "${CMake_BINARY_DIR}/Tests/FindXalanC/Test" + ${build_generator_args} + --build-project TestFindXalanC + --build-options ${build_options} + --test-command ${CMAKE_CTEST_COMMAND} -V -C $ + ) diff --git a/Tests/FindXalanC/Test/CMakeLists.txt b/Tests/FindXalanC/Test/CMakeLists.txt new file mode 100644 index 0000000..56f6f48 --- /dev/null +++ b/Tests/FindXalanC/Test/CMakeLists.txt @@ -0,0 +1,17 @@ +cmake_minimum_required(VERSION 3.1) +project(TestFindXalanC CXX) +include(CTest) + +# CMake does not actually provide FindXalanC publicly. +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/Modules) + +find_package(XalanC REQUIRED) + +add_executable(test_xalanc_tgt main.cxx) +target_link_libraries(test_xalanc_tgt XalanC::XalanC) +add_test(NAME test_xalanc_tgt COMMAND test_xalanc_tgt) + +add_executable(test_xalanc_var main.cxx) +target_include_directories(test_xalanc_var PRIVATE ${XalanC_INCLUDE_DIRS} ${XercesC_INCLUDE_DIRS}) +target_link_libraries(test_xalanc_var PRIVATE ${XalanC_LIBRARIES} ${XercesC_LIBRARIES}) +add_test(NAME test_xalanc_var COMMAND test_xalanc_var) diff --git a/Tests/FindXalanC/Test/main.cxx b/Tests/FindXalanC/Test/main.cxx new file mode 100644 index 0000000..3b4a2df --- /dev/null +++ b/Tests/FindXalanC/Test/main.cxx @@ -0,0 +1,10 @@ +#include +#include + +int main() +{ + xercesc::XMLPlatformUtils::Initialize(); + xalanc::XalanTransformer::initialize(); + xalanc::XalanTransformer::terminate(); + xercesc::XMLPlatformUtils::Terminate(); +} ----------------------------------------------------------------------- Summary of changes: Modules/FindXalanC.cmake | 150 +++++++++++++++++++++++ Tests/CMakeLists.txt | 4 + Tests/{FindBoost => FindXalanC}/CMakeLists.txt | 8 +- Tests/FindXalanC/Test/CMakeLists.txt | 17 +++ Tests/{FindXercesC => FindXalanC}/Test/main.cxx | 3 + 5 files changed, 178 insertions(+), 4 deletions(-) create mode 100644 Modules/FindXalanC.cmake copy Tests/{FindBoost => FindXalanC}/CMakeLists.txt (54%) create mode 100644 Tests/FindXalanC/Test/CMakeLists.txt copy Tests/{FindXercesC => FindXalanC}/Test/main.cxx (50%) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 11:16:41 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 11:16:41 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2019-gf1bbd97 Message-ID: <20160119161641.98441E31BA@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 f1bbd9719009f15afdbcf2a62c10c7779d5c1ace (commit) via 9696b5a2b71ca240b36a5ed7a7054b6bea677785 (commit) from 867a79a332bd3bf9c48e3a713962ead9d96d04c2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f1bbd9719009f15afdbcf2a62c10c7779d5c1ace commit f1bbd9719009f15afdbcf2a62c10c7779d5c1ace Merge: 867a79a 9696b5a Author: Brad King AuthorDate: Tue Jan 19 11:16:40 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 11:16:40 2016 -0500 Merge topic 'xalanc' into next 9696b5a2 fixup! FindXalanC: New module to find the Apache Xalan-C++ library https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9696b5a2b71ca240b36a5ed7a7054b6bea677785 commit 9696b5a2b71ca240b36a5ed7a7054b6bea677785 Author: Brad King AuthorDate: Tue Jan 19 11:13:09 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 11:14:37 2016 -0500 fixup! FindXalanC: New module to find the Apache Xalan-C++ library diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst index c9219d5..10f05df 100644 --- a/Help/manual/cmake-modules.7.rst +++ b/Help/manual/cmake-modules.7.rst @@ -213,6 +213,7 @@ All Modules /module/FindwxWidgets /module/FindwxWindows /module/FindXCTest + /module/FindXalanC /module/FindXercesC /module/FindX11 /module/FindXMLRPC diff --git a/Help/module/FindXalanC.rst b/Help/module/FindXalanC.rst new file mode 100644 index 0000000..b99d212 --- /dev/null +++ b/Help/module/FindXalanC.rst @@ -0,0 +1 @@ +.. cmake-module:: ../../Modules/FindXalanC.cmake ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-modules.7.rst | 1 + Help/module/FindXalanC.rst | 1 + 2 files changed, 2 insertions(+) create mode 100644 Help/module/FindXalanC.rst hooks/post-receive -- CMake From rleigh at codelibre.net Tue Jan 19 11:38:02 2016 From: rleigh at codelibre.net (Roger Leigh) Date: Tue, 19 Jan 2016 11:38:02 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2021-g4af8e76 Message-ID: <20160119163802.82497E3855@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 4af8e762a976e3602c477d05275db3f7156e7a5f (commit) via a11c0e7716d57fa7042632868d808b35d9372bb2 (commit) from f1bbd9719009f15afdbcf2a62c10c7779d5c1ace (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4af8e762a976e3602c477d05275db3f7156e7a5f commit 4af8e762a976e3602c477d05275db3f7156e7a5f Merge: f1bbd97 a11c0e7 Author: Roger Leigh AuthorDate: Tue Jan 19 11:38:01 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 11:38:01 2016 -0500 Merge topic 'xalanc' into next a11c0e77 FindXalanC: Correct versioning for Windows DLLs https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a11c0e7716d57fa7042632868d808b35d9372bb2 commit a11c0e7716d57fa7042632868d808b35d9372bb2 Author: Roger Leigh AuthorDate: Tue Jan 19 16:34:59 2016 +0000 Commit: Roger Leigh CommitDate: Tue Jan 19 16:37:39 2016 +0000 FindXalanC: Correct versioning for Windows DLLs diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake index 7599bd4..58a68d8 100644 --- a/Modules/FindXalanC.cmake +++ b/Modules/FindXalanC.cmake @@ -71,6 +71,9 @@ function(_XalanC_GET_VERSION version_hdr) endif() set(XalanC_VERSION "${XalanC_MAJOR}.${XalanC_MINOR}.${XalanC_PATCH}" PARENT_SCOPE) + set(XalanC_VERSION_MAJOR "${XalanC_MAJOR}" PARENT_SCOPE) + set(XalanC_VERSION_MINOR "${XalanC_MINOR}" PARENT_SCOPE) + set(XalanC_VERSION_PATCH "${XalanC_PATCH}" PARENT_SCOPE) else() message(FATAL_ERROR "Include file ${version_hdr} does not exist or does not contain expected version information") endif() @@ -90,19 +93,23 @@ if(NOT XalanC_LIBRARY) # Find all XalanC libraries find_library(XalanC_LIBRARY_RELEASE NAMES "Xalan-C" "xalan-c" - "Xalan-C_${XalanC_MAJOR}" - "Xalan-C_${XalanC_MAJOR}_${XalanC_MINOR}" + "Xalan-C_${XalanC_VERSION_MAJOR}" + "Xalan-C_${XalanC_VERSION_MAJOR}_${XalanC_VERSION_MINOR}" DOC "Xalan-C++ libraries (release)") find_library(XalanC_LIBRARY_DEBUG NAMES "Xalan-CD" "xalan-cd" - "Xalan-C_${XalanC_MAJOR}D" - "Xalan-C_${XalanC_MAJOR}_${XalanC_MINOR}D" + "Xalan-C_${XalanC_VERSION_MAJOR}D" + "Xalan-C_${XalanC_VERSION_MAJOR}_${XalanC_VERSION_MINOR}D" DOC "Xalan-C++ libraries (debug)") include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake) select_library_configurations(XalanC) mark_as_advanced(XalanC_LIBRARY_RELEASE XalanC_LIBRARY_DEBUG) endif() +unset(XalanC_VERSION_MAJOR) +unset(XalanC_VERSION_MINOR) +unset(XalanC_VERSION_PATCH) + find_package(XercesC 3.0.0 REQUIRED) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) ----------------------------------------------------------------------- Summary of changes: Modules/FindXalanC.cmake | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) hooks/post-receive -- CMake From rleigh at codelibre.net Tue Jan 19 12:01:04 2016 From: rleigh at codelibre.net (Roger Leigh) Date: Tue, 19 Jan 2016 12:01:04 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2025-g9641548 Message-ID: <20160119170104.0FBBFE3606@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 9641548007af875da7a25525037cae7447ae07dd (commit) via a7940807d7ab684f201271441afa29095378b1c9 (commit) via ca1e830693328c4162294b215bfd3d18c7860702 (commit) via 639104a6fedd90748151655d3cbfe36c2d1fa6f5 (commit) from 4af8e762a976e3602c477d05275db3f7156e7a5f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9641548007af875da7a25525037cae7447ae07dd commit 9641548007af875da7a25525037cae7447ae07dd Merge: 4af8e76 a794080 Author: Roger Leigh AuthorDate: Tue Jan 19 12:01:03 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 12:01:03 2016 -0500 Merge topic 'xalanc' into next a7940807 Help: Document new FindXalanC module ca1e8306 FindXercesC: Don't require a specific Xerces-C version 639104a6 FindXercesC: XalanC_INCLUDE_DIRS and XalanC_LIBRARIES include dependencies https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a7940807d7ab684f201271441afa29095378b1c9 commit a7940807d7ab684f201271441afa29095378b1c9 Author: Roger Leigh AuthorDate: Tue Jan 19 17:00:18 2016 +0000 Commit: Roger Leigh CommitDate: Tue Jan 19 17:00:18 2016 +0000 Help: Document new FindXalanC module diff --git a/Help/release/dev/FindXalanC.rst b/Help/release/dev/FindXalanC.rst new file mode 100644 index 0000000..1617253 --- /dev/null +++ b/Help/release/dev/FindXalanC.rst @@ -0,0 +1,5 @@ +FindXalanC +---------- + +* A new module to find the Apache Xalan-C++ XSL transform processing + library. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ca1e830693328c4162294b215bfd3d18c7860702 commit ca1e830693328c4162294b215bfd3d18c7860702 Author: Roger Leigh AuthorDate: Tue Jan 19 16:59:35 2016 +0000 Commit: Roger Leigh CommitDate: Tue Jan 19 16:59:35 2016 +0000 FindXercesC: Don't require a specific Xerces-C version diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake index 6a9f114..99b31d1 100644 --- a/Modules/FindXalanC.cmake +++ b/Modules/FindXalanC.cmake @@ -110,7 +110,7 @@ unset(XalanC_VERSION_MAJOR) unset(XalanC_VERSION_MINOR) unset(XalanC_VERSION_PATCH) -find_package(XercesC 3.0.0 REQUIRED) +find_package(XercesC REQUIRED) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=639104a6fedd90748151655d3cbfe36c2d1fa6f5 commit 639104a6fedd90748151655d3cbfe36c2d1fa6f5 Author: Roger Leigh AuthorDate: Tue Jan 19 16:59:14 2016 +0000 Commit: Roger Leigh CommitDate: Tue Jan 19 16:59:14 2016 +0000 FindXercesC: XalanC_INCLUDE_DIRS and XalanC_LIBRARIES include dependencies diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake index 58a68d8..6a9f114 100644 --- a/Modules/FindXalanC.cmake +++ b/Modules/FindXalanC.cmake @@ -123,8 +123,8 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC FAIL_MESSAGE "Failed to find XalanC") if(XalanC_FOUND) - set(XalanC_INCLUDE_DIRS "${XalanC_INCLUDE_DIR}") - set(XalanC_LIBRARIES "${XalanC_LIBRARY}") + set(XalanC_INCLUDE_DIRS "${XalanC_INCLUDE_DIR}" ${XercesC_INCLUDE_DIRS}) + set(XalanC_LIBRARIES "${XalanC_LIBRARY}" ${XercesC_LIBRARIES}) # For header-only libraries if(NOT TARGET XalanC::XalanC) diff --git a/Tests/FindXalanC/Test/CMakeLists.txt b/Tests/FindXalanC/Test/CMakeLists.txt index 56f6f48..b445e0e 100644 --- a/Tests/FindXalanC/Test/CMakeLists.txt +++ b/Tests/FindXalanC/Test/CMakeLists.txt @@ -12,6 +12,6 @@ target_link_libraries(test_xalanc_tgt XalanC::XalanC) add_test(NAME test_xalanc_tgt COMMAND test_xalanc_tgt) add_executable(test_xalanc_var main.cxx) -target_include_directories(test_xalanc_var PRIVATE ${XalanC_INCLUDE_DIRS} ${XercesC_INCLUDE_DIRS}) -target_link_libraries(test_xalanc_var PRIVATE ${XalanC_LIBRARIES} ${XercesC_LIBRARIES}) +target_include_directories(test_xalanc_var PRIVATE ${XalanC_INCLUDE_DIRS}) +target_link_libraries(test_xalanc_var PRIVATE ${XalanC_LIBRARIES}) add_test(NAME test_xalanc_var COMMAND test_xalanc_var) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindXalanC.rst | 5 +++++ Modules/FindXalanC.cmake | 6 +++--- Tests/FindXalanC/Test/CMakeLists.txt | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 Help/release/dev/FindXalanC.rst hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 14:41:24 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 14:41:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.1-871-gc13ed96 Message-ID: <20160119194124.81AB6E2505@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 c13ed964012bcdf3765ada195db66930d6a0fcf9 (commit) via 6506dcaa20a7d17737517dbcba6102be564d8d66 (commit) from e4a135dc446475b01a2c4d60dac0d8c5c8078590 (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 Jan 19 14:41:24 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 14:41:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2027-g078e8a2 Message-ID: <20160119194124.AE930E259B@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 078e8a2dcbe4e64ad63bdd04c60aba75bdd8b734 (commit) via c13ed964012bcdf3765ada195db66930d6a0fcf9 (commit) from 9641548007af875da7a25525037cae7447ae07dd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=078e8a2dcbe4e64ad63bdd04c60aba75bdd8b734 commit 078e8a2dcbe4e64ad63bdd04c60aba75bdd8b734 Merge: 9641548 c13ed96 Author: Brad King AuthorDate: Tue Jan 19 14:41:11 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 14:41:11 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 14:41:24 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 14:41:24 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.4.1-13-g6506dca Message-ID: <20160119194124.BF247E259B@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 6506dcaa20a7d17737517dbcba6102be564d8d66 (commit) from 8ce5ff8d9e411d7d27176881b98bf733da90791f (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 Tue Jan 19 14:57:18 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 14:57:18 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.1-2029-g2610a2b Message-ID: <20160119195718.3D3F6E348E@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 2610a2b988323fa4653fb602935c3a6079d8b68a (commit) via 9451ea5a6a55f0e46ad68cd622e05a130ca0988f (commit) from 078e8a2dcbe4e64ad63bdd04c60aba75bdd8b734 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2610a2b988323fa4653fb602935c3a6079d8b68a commit 2610a2b988323fa4653fb602935c3a6079d8b68a Merge: 078e8a2 9451ea5 Author: Brad King AuthorDate: Tue Jan 19 14:57:16 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 14:57:16 2016 -0500 Merge topic 'FindPNG-imported-targets' into next 9451ea5a FindPNG: Create an imported PNG::PNG target (#15911) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9451ea5a6a55f0e46ad68cd622e05a130ca0988f commit 9451ea5a6a55f0e46ad68cd622e05a130ca0988f Author: Sam Thursfield AuthorDate: Tue Jan 19 17:43:05 2016 +0000 Commit: Brad King CommitDate: Tue Jan 19 14:56:23 2016 -0500 FindPNG: Create an imported PNG::PNG target (#15911) Imported targets are now the recommended way of dealing with external library dependencies. Add one for FindPNG and update documentation accordingly. Also add a test case activated by CMake_TEST_FindPNG. diff --git a/Help/release/dev/FindPNG-imported-targets.rst b/Help/release/dev/FindPNG-imported-targets.rst new file mode 100644 index 0000000..e0d0ab1 --- /dev/null +++ b/Help/release/dev/FindPNG-imported-targets.rst @@ -0,0 +1,4 @@ +FindPNG-imported-targets +------------------------ + +* The :module:`FindPNG` module now provides imported targets. diff --git a/Modules/FindPNG.cmake b/Modules/FindPNG.cmake index 7cf3f22..4eb3b86 100644 --- a/Modules/FindPNG.cmake +++ b/Modules/FindPNG.cmake @@ -2,13 +2,20 @@ # FindPNG # ------- # -# Find the native PNG includes and library +# Find libpng, the official reference library for the PNG image format. # +# Imported targets +# ^^^^^^^^^^^^^^^^ # +# This module defines the following :prop_tgt:`IMPORTED` target: # -# This module searches libpng, the library for working with PNG images. +# ``PNG::PNG`` +# The libpng library, if found. # -# It defines the following variables +# Result variables +# ^^^^^^^^^^^^^^^^ +# +# This module will set the following variables in your project: # # ``PNG_INCLUDE_DIRS`` # where to find png.h, etc. @@ -22,19 +29,22 @@ # ``PNG_VERSION_STRING`` # the version of the PNG library found (since CMake 2.8.8) # -# Also defined, but not for general use are +# Obsolete variables +# ^^^^^^^^^^^^^^^^^^ +# +# The following variables may also be set, for backwards compatibility: # # ``PNG_LIBRARY`` # where to find the PNG library. -# -# For backward compatiblity the variable PNG_INCLUDE_DIR is also set. -# It has the same value as PNG_INCLUDE_DIRS. +# ``PNG_INCLUDE_DIR`` +# where to find the PNG headers (same as PNG_INCLUDE_DIRS) # # Since PNG depends on the ZLib compression library, none of the above # will be defined unless ZLib can be found. #============================================================================= # Copyright 2002-2009 Kitware, Inc. +# Copyright 2016 Raumfeld # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -105,6 +115,32 @@ if(ZLIB_FOUND) endif() endif () + if(NOT TARGET PNG::PNG) + add_library(PNG::PNG UNKNOWN IMPORTED) + set_target_properties(PNG::PNG PROPERTIES + INTERFACE_COMPILE_DEFINITIONS "${PNG_DEFINITIONS}" + INTERFACE_INCLUDE_DIRECTORIES "${PNG_INCLUDE_DIRS}" + INTERFACE_LIBRARIES "${PNG_LIBRARIES}") + if(EXISTS "${PNG_LIBRARY}") + set_target_properties(PNG::PNG PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "C" + IMPORTED_LOCATION "${PNG_LIBRARY}") + endif() + if(EXISTS "${PNG_LIBRARY_DEBUG}") + set_property(TARGET PNG::PNG APPEND PROPERTY + IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(PNG::PNG PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C" + IMPORTED_LOCATION_DEBUG "${PNG_LIBRARY_DEBUG}") + endif() + if(EXISTS "${PNG_LIBRARY_RELEASE}") + set_property(TARGET PNG::PNG APPEND PROPERTY + IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(PNG::PNG PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C" + IMPORTED_LOCATION_RELEASE "${PNG_LIBRARY_RELEASE}") + endif() + endif() endif () if (PNG_PNG_INCLUDE_DIR AND EXISTS "${PNG_PNG_INCLUDE_DIR}/png.h") diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 043b757..3cca77b 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1375,6 +1375,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindOpenSSL) endif() + if(CMake_TEST_FindPNG) + add_subdirectory(FindPNG) + endif() + if(CMake_TEST_FindTIFF) add_subdirectory(FindTIFF) endif() diff --git a/Tests/FindPNG/CMakeLists.txt b/Tests/FindPNG/CMakeLists.txt new file mode 100644 index 0000000..c665b67 --- /dev/null +++ b/Tests/FindPNG/CMakeLists.txt @@ -0,0 +1,10 @@ +add_test(NAME FindPNG.Test COMMAND + ${CMAKE_CTEST_COMMAND} -C $ + --build-and-test + "${CMake_SOURCE_DIR}/Tests/FindPNG/Test" + "${CMake_BINARY_DIR}/Tests/FindPNG/Test" + ${build_generator_args} + --build-project TestFindPNG + --build-options ${build_options} + --test-command ${CMAKE_CTEST_COMMAND} -V -C $ + ) diff --git a/Tests/FindPNG/Test/CMakeLists.txt b/Tests/FindPNG/Test/CMakeLists.txt new file mode 100644 index 0000000..ad50011 --- /dev/null +++ b/Tests/FindPNG/Test/CMakeLists.txt @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 3.4) +project(TestFindPNG C) +include(CTest) + +find_package(PNG REQUIRED) + +add_definitions(-DCMAKE_EXPECTED_PNG_VERSION="${PNG_VERSION_STRING}") + +add_executable(test_tgt main.c) +target_link_libraries(test_tgt PNG::PNG) +add_test(NAME test_tgt COMMAND test_tgt) + +add_executable(test_var main.c) +target_include_directories(test_var PRIVATE ${PNG_INCLUDE_DIRS}) +target_link_libraries(test_var PRIVATE ${PNG_LIBRARIES}) +add_test(NAME test_var COMMAND test_var) diff --git a/Tests/FindPNG/Test/main.c b/Tests/FindPNG/Test/main.c new file mode 100644 index 0000000..27e1478 --- /dev/null +++ b/Tests/FindPNG/Test/main.c @@ -0,0 +1,20 @@ +#include +#include +#include + +int main() +{ + png_uint_32 png_version; + char png_version_string[16]; + + png_version = png_access_version_number (); + + snprintf (png_version_string, 16, "%i.%i.%i", + png_version / 10000, + (png_version % 10000) / 100, + png_version % 100); + + assert (strcmp(png_version_string, CMAKE_EXPECTED_PNG_VERSION) == 0); + + return 0; +} ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindPNG-imported-targets.rst | 4 ++ Modules/FindPNG.cmake | 50 +++++++++++++++++++++---- Tests/CMakeLists.txt | 4 ++ Tests/{FindTIFF => FindPNG}/CMakeLists.txt | 8 ++-- Tests/FindPNG/Test/CMakeLists.txt | 16 ++++++++ Tests/FindPNG/Test/main.c | 20 ++++++++++ 6 files changed, 91 insertions(+), 11 deletions(-) create mode 100644 Help/release/dev/FindPNG-imported-targets.rst copy Tests/{FindTIFF => FindPNG}/CMakeLists.txt (55%) create mode 100644 Tests/FindPNG/Test/CMakeLists.txt create mode 100644 Tests/FindPNG/Test/main.c hooks/post-receive -- CMake From robert.maynard at kitware.com Tue Jan 19 15:06:57 2016 From: robert.maynard at kitware.com (Robert Maynard) Date: Tue, 19 Jan 2016 15:06:57 -0500 (EST) Subject: [Cmake-commits] CMake annotated tag, v3.4.2, created. v3.4.2 Message-ID: <20160119200657.500BBE3674@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.4.2 has been created at e7153bdf97a402eb9b74b3811487b6299c3c441b (tag) tagging 6506dcaa20a7d17737517dbcba6102be564d8d66 (commit) replaces v3.4.1 tagged by Brad King on Tue Jan 19 14:43:06 2016 -0500 - Log ----------------------------------------------------------------- CMake 3.4.2 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJWnpHKAAoJEC0s7xA0khaE+tYP/RCJIuPQx57adtYlXen+mfq3 ssnRLxjNsAeG6J0YvvzWk9NtEsCIDzwI46lbqnAh2rRsbffmezlny9aKu8ctnHyD vthB+YakSI8uKod+BItmwyDbrQDzlgw6nsC3hafGwotuZsNFKWjHMrkO9rNM+YSq eLweIR1ecbZxQYWXw1kLtZXID4bhCmFdn6lCweFt4Fy+Rr+AOGK/utfvGnwBSmPP xG8wwYNfEUBPhWgfS7OtnV9lyPMHQigJ0g6q/1Hlxz0IHTj2XZS6kLrx3Yybr4RV 0K/ZR+FzLPnGiukGH/IVz1DyPC4RXdZ78z5o7uteGmKiC+DORw+/vwQQ94lVI0g+ kzI56gbUYjLp8pTOok0R4lo9RxWfi8MUI2CCEiaWH24859GbFhDYgTmiGKLP9wtA diYhYIxQqd+7ST6TjbOSg6QORVaze+s+Rf+cj0ZmhZfwrHaIWQtVZ8++ArlJrmOj Ah4utwaF1km7Pj240RNJm6RuzZ4Yzspk60hWmkDrijnr4tXuJv9ZyuN5LaKT41wP wddwqgRvept1EaOGmL7TNvp5RpS8/TxLVQq4H7YtJUFptnaTzetIlddnkFMRQHWe yTKssJc/LWmJjs+Cl1q6quIjz6ze3eWfLST2pymzd9kuxl18/SQexJQwFn2EmKCX 85OshBbkaY59U9jgLGNp =kQq7 -----END PGP SIGNATURE----- Brad King (11): Merge branch 'fix-java-idlj-jarsigner-typos' into release Merge branch 'fix-CMP0065-NEW-AIX-HP' into release CMakeDetermineCompilerId: Fix VS Itanium platform name (#15889) Merge branch 'vs-compiler-id-itanium' into release VS: Do not select a partial Windows 10 SDK folder (#15831) VS: Fix VS 2015 .vcxproj file value for GenerateDebugInformation (#15894) Merge branch 'vs14-debug-enum' into release cmSystemTools: Add VersionCompareEqual helper VS: Fix Windows 10 SDK version selection (#15831) Merge branch 'vs-win10-sdk' into release CMake 3.4.2 Marc Chevrier (2): FindJava: Fix typos in IdlJ and JarSigner component implementation AIX,HP-UX: Fix RPATH handling when CMP0065 is set to NEW ----------------------------------------------------------------------- hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 16:02:18 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 16:02:18 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2023-g683f5b1 Message-ID: <20160119210218.2D125E379D@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 683f5b178974acfe2d387e2ab0a4040ed023b51e (commit) via 1040e690c6c99979f8edf2a121de6d835be96dbe (commit) via ce3b713baa1c899ae7739c192040e24445368a0a (commit) via dc039cc02c857b2c418481533a236dad6a586a7f (commit) via ffa2a8c967df09c4630e50e7c7339e36b027ecaf (commit) via 92e9bb21758f73266e1f805e366ce90d2cbd688d (commit) via fb1526f57fe4720aff596b312e6a767502b86e13 (commit) from 2610a2b988323fa4653fb602935c3a6079d8b68a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=683f5b178974acfe2d387e2ab0a4040ed023b51e commit 683f5b178974acfe2d387e2ab0a4040ed023b51e Merge: 2610a2b 1040e69 Author: Brad King AuthorDate: Tue Jan 19 16:02:17 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 16:02:17 2016 -0500 Merge topic 'cleanup-RunSingleCommand' into next 1040e690 cmSystemTools: Teach RunSingleCommand to merge child pipes when possible ce3b713b cmSystemTools: Simplify RunSingleCommand output string construction dc039cc0 cmSystemTools: Drop redundant condition in RunSingleCommand ffa2a8c9 cmSystemTools: Rename OUTPUT_NORMAL to OUTPUT_FORWARD to clarify its purpose 92e9bb21 cmcmd.cxx: Remove unused code in __run_iwyu implementation fb1526f5 cmake: Change `-E chdir` to pass through stdout/stderr directly https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1040e690c6c99979f8edf2a121de6d835be96dbe commit 1040e690c6c99979f8edf2a121de6d835be96dbe Author: Brad King AuthorDate: Thu Jan 14 16:11:23 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:55:05 2016 -0500 cmSystemTools: Teach RunSingleCommand to merge child pipes when possible Audit the code to make sure there are no callers that use OUTPUT_MERGE with separate capture strings. Then change RunSingleCommand to implement output merging by giving the child process a single pipe for both its stdout and stderr descriptors. This will more cleanly merge the content on atomic write boundaries in the child instead of on arbitrary buffering boundaries in the parent. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 3a730b2..3ba7287 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -17,6 +17,7 @@ #include #include #include +#include #ifdef __QNX__ # include /* for malloc/free on QNX */ #endif @@ -673,7 +674,16 @@ bool cmSystemTools::RunSingleCommand(std::vectorconst& command, { cmsysProcess_SetPipeShared(cp, cmsysProcess_Pipe_STDOUT, 1); cmsysProcess_SetPipeShared(cp, cmsysProcess_Pipe_STDERR, 1); + captureStdOut = 0; + captureStdErr = 0; } + else if (outputflag == OUTPUT_MERGE || + (captureStdErr && captureStdErr == captureStdOut)) + { + cmsysProcess_SetOption(cp, cmsysProcess_Option_MergeOutput, 1); + captureStdErr = 0; + } + assert(!captureStdErr || captureStdErr != captureStdOut); cmsysProcess_SetTimeout(cp, timeout); cmsysProcess_Execute(cp); @@ -699,38 +709,26 @@ bool cmSystemTools::RunSingleCommand(std::vectorconst& command, } } - if(pipe == cmsysProcess_Pipe_STDOUT || - (pipe == cmsysProcess_Pipe_STDERR && - captureStdOut == captureStdErr)) + if (pipe == cmsysProcess_Pipe_STDOUT) { - if (captureStdOut) + if (outputflag != OUTPUT_NONE) { - tempStdOut.insert(tempStdOut.end(), data, data+length); + cmSystemTools::Stdout(data, length); } - } - else if(pipe == cmsysProcess_Pipe_STDERR) - { - if (captureStdErr) + if (captureStdOut) { - tempStdErr.insert(tempStdErr.end(), data, data+length); + tempStdOut.insert(tempStdOut.end(), data, data+length); } } - if(outputflag != OUTPUT_NONE) + else if (pipe == cmsysProcess_Pipe_STDERR) { - if(outputflag == OUTPUT_MERGE) + if (outputflag != OUTPUT_NONE) { - cmSystemTools::Stdout(data, length); + cmSystemTools::Stderr(data, length); } - else + if (captureStdErr) { - if(pipe == cmsysProcess_Pipe_STDERR) - { - cmSystemTools::Stderr(data, length); - } - else if(pipe == cmsysProcess_Pipe_STDOUT) - { - cmSystemTools::Stdout(data, length); - } + tempStdErr.insert(tempStdErr.end(), data, data+length); } } } @@ -741,7 +739,7 @@ bool cmSystemTools::RunSingleCommand(std::vectorconst& command, { captureStdOut->assign(tempStdOut.begin(), tempStdOut.end()); } - if (captureStdErr && captureStdErr != captureStdOut) + if (captureStdErr) { captureStdErr->assign(tempStdErr.begin(), tempStdErr.end()); } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ce3b713baa1c899ae7739c192040e24445368a0a commit ce3b713baa1c899ae7739c192040e24445368a0a Author: Brad King AuthorDate: Thu Jan 14 16:11:00 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:51:00 2016 -0500 cmSystemTools: Simplify RunSingleCommand output string construction Assign to the result strings instead setting to empty and appending. The old approach was left from when we directly buffered output in the strings. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 2b0c2ed..3a730b2 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -660,14 +660,6 @@ bool cmSystemTools::RunSingleCommand(std::vectorconst& command, argv.push_back(a->c_str()); } argv.push_back(0); - if ( captureStdOut ) - { - *captureStdOut = ""; - } - if (captureStdErr && captureStdErr != captureStdOut) - { - *captureStdErr = ""; - } cmsysProcess* cp = cmsysProcess_New(); cmsysProcess_SetCommand(cp, &*argv.begin()); @@ -745,14 +737,13 @@ bool cmSystemTools::RunSingleCommand(std::vectorconst& command, } cmsysProcess_WaitForExit(cp, 0); - if ( captureStdOut && tempStdOut.begin() != tempStdOut.end()) + if (captureStdOut) { - captureStdOut->append(&*tempStdOut.begin(), tempStdOut.size()); + captureStdOut->assign(tempStdOut.begin(), tempStdOut.end()); } - if ( captureStdErr && captureStdErr != captureStdOut && - tempStdErr.begin() != tempStdErr.end()) + if (captureStdErr && captureStdErr != captureStdOut) { - captureStdErr->append(&*tempStdErr.begin(), tempStdErr.size()); + captureStdErr->assign(tempStdErr.begin(), tempStdErr.end()); } bool result = true; https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dc039cc02c857b2c418481533a236dad6a586a7f commit dc039cc02c857b2c418481533a236dad6a586a7f Author: Brad King AuthorDate: Thu Jan 14 16:14:25 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:49:48 2016 -0500 cmSystemTools: Drop redundant condition in RunSingleCommand The output processing loop is already guarded by a condition so we do not need to repeat the condition inside the loop. diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index a89a6e0b..2b0c2ed 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -696,19 +696,17 @@ bool cmSystemTools::RunSingleCommand(std::vectorconst& command, { while((pipe = cmsysProcess_WaitForData(cp, &data, &length, 0)) > 0) { - if(captureStdOut || captureStdErr || outputflag != OUTPUT_NONE) + // Translate NULL characters in the output into valid text. + // Visual Studio 7 puts these characters in the output of its + // build process. + for(int i=0; i < length; ++i) { - // Translate NULL characters in the output into valid text. - // Visual Studio 7 puts these characters in the output of its - // build process. - for(int i=0; i < length; ++i) + if(data[i] == '\0') { - if(data[i] == '\0') - { - data[i] = ' '; - } + data[i] = ' '; } } + if(pipe == cmsysProcess_Pipe_STDOUT || (pipe == cmsysProcess_Pipe_STDERR && captureStdOut == captureStdErr)) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ffa2a8c967df09c4630e50e7c7339e36b027ecaf commit ffa2a8c967df09c4630e50e7c7339e36b027ecaf Author: Brad King AuthorDate: Thu Jan 14 14:54:58 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:47:48 2016 -0500 cmSystemTools: Rename OUTPUT_NORMAL to OUTPUT_FORWARD to clarify its purpose The OUTPUT_NORMAL value is not really "normal" and has only one caller. Rename it to OUTPUT_FORWARD to clarify that we are explicitly forwarding the output. diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 2126c71..c50bf66 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -1850,7 +1850,7 @@ int cmGlobalGenerator::Build( !makeCommand.empty() && cmSystemTools::LowerCase( cmSystemTools::GetFilenameName(makeCommand[0])) == "vcexpress.exe") { - outputflag = cmSystemTools::OUTPUT_NORMAL; + outputflag = cmSystemTools::OUTPUT_FORWARD; } // should we do a clean first? diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index 9cafbec..f511ae4 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -203,7 +203,7 @@ public: * Output is controlled with outputflag. If outputflag is OUTPUT_NONE, no * user-viewable output from the program being run will be generated. * OUTPUT_MERGE is the legacy behaviour where stdout and stderr are merged - * into stdout. OUTPUT_NORMAL passes through the output to stdout/stderr as + * into stdout. OUTPUT_FORWARD copies the output to stdout/stderr as * it was received. OUTPUT_PASSTHROUGH passes through the original handles. * * If timeout is specified, the command will be terminated after @@ -223,7 +223,7 @@ public: { OUTPUT_NONE = 0, OUTPUT_MERGE, - OUTPUT_NORMAL, + OUTPUT_FORWARD, OUTPUT_PASSTHROUGH }; static bool RunSingleCommand(const char* command, https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=92e9bb21758f73266e1f805e366ce90d2cbd688d commit 92e9bb21758f73266e1f805e366ce90d2cbd688d Author: Brad King AuthorDate: Thu Jan 14 14:42:11 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:46:15 2016 -0500 cmcmd.cxx: Remove unused code in __run_iwyu implementation Do not try to capture stderr with OUTPUT_PASSTHROUGH. RunSingleCommand will never populate it. diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 7da81bb..8dd902b 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -361,11 +361,10 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) } // Now run the real compiler command and return its result value. - if(!cmSystemTools::RunSingleCommand(orig_cmd, 0, &stdErr, &ret, 0, + if(!cmSystemTools::RunSingleCommand(orig_cmd, 0, 0, &ret, 0, cmSystemTools::OUTPUT_PASSTHROUGH)) { - std::cerr << "Error running '" << orig_cmd[0] << "': " - << stdErr << "\n"; + std::cerr << "Error running '" << orig_cmd[0] << "'\n"; return 1; } return ret; https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fb1526f57fe4720aff596b312e6a767502b86e13 commit fb1526f57fe4720aff596b312e6a767502b86e13 Author: Brad King AuthorDate: Thu Jan 14 14:41:09 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:44:30 2016 -0500 cmake: Change `-E chdir` to pass through stdout/stderr directly Use OUTPUT_PASSTHROUGH instead of OUTPUT_NORMAL in order to avoid buffering the output just to re-print it. diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index fb7b1f5..7da81bb 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -621,7 +621,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) int retval = 0; int timeout = 0; if ( cmSystemTools::RunSingleCommand(command.c_str(), 0, 0, &retval, - directory.c_str(), cmSystemTools::OUTPUT_NORMAL, timeout) ) + directory.c_str(), cmSystemTools::OUTPUT_PASSTHROUGH, timeout) ) { return retval; } ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalGenerator.cxx | 2 +- Source/cmSystemTools.cxx | 75 +++++++++++++++++------------------------- Source/cmSystemTools.h | 4 +-- Source/cmcmd.cxx | 7 ++-- 4 files changed, 37 insertions(+), 51 deletions(-) hooks/post-receive -- CMake From clinton at elemtech.com Tue Jan 19 16:06:08 2016 From: clinton at elemtech.com (Clinton Stimpson) Date: Tue, 19 Jan 2016 16:06:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2025-gbde6c55 Message-ID: <20160119210608.4EC16E3838@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 bde6c5547e181b72aaefbaffff092bdd9a79ba01 (commit) via a15e375cddb415ebe89aa5896d783b821aca940c (commit) from 683f5b178974acfe2d387e2ab0a4040ed023b51e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bde6c5547e181b72aaefbaffff092bdd9a79ba01 commit bde6c5547e181b72aaefbaffff092bdd9a79ba01 Merge: 683f5b1 a15e375 Author: Clinton Stimpson AuthorDate: Tue Jan 19 16:06:07 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 16:06:07 2016 -0500 Merge topic 'mfc-utility-targets' into next a15e375c Fix MFC setting on utility targets (#15867) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a15e375cddb415ebe89aa5896d783b821aca940c commit a15e375cddb415ebe89aa5896d783b821aca940c Author: Clinton Stimpson AuthorDate: Tue Jan 19 14:01:08 2016 -0700 Commit: Clinton Stimpson CommitDate: Tue Jan 19 14:04:15 2016 -0700 Fix MFC setting on utility targets (#15867) Multi-byte MFC is deprecated, and some projects will not compile if MFC is enabled. diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 27ae685..09d4a90 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -762,13 +762,16 @@ void cmVisualStudio10TargetGenerator std::string mfcFlagValue = mfcFlag ? mfcFlag : "0"; std::string useOfMfcValue = "false"; - if(mfcFlagValue == "1") - { - useOfMfcValue = "Static"; - } - else if(mfcFlagValue == "2") + if(this->GeneratorTarget->GetType() <= cmState::OBJECT_LIBRARY) { - useOfMfcValue = "Dynamic"; + if(mfcFlagValue == "1") + { + useOfMfcValue = "Static"; + } + else if(mfcFlagValue == "2") + { + useOfMfcValue = "Dynamic"; + } } std::string mfcLine = ""; mfcLine += useOfMfcValue + "\n"; ----------------------------------------------------------------------- Summary of changes: Source/cmVisualStudio10TargetGenerator.cxx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 16:17:03 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 16:17:03 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2028-gd1a35c5 Message-ID: <20160119211705.EB76AE2E6E@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 d1a35c5c4f0a105e06039f9ca675c1452fbaf3ec (commit) via f565f9fa038d57958a4d34a6829d3ae175063704 (commit) via b95be1cf8bf2504b4a5d8c9667ea7e936e19a4f6 (commit) from bde6c5547e181b72aaefbaffff092bdd9a79ba01 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d1a35c5c4f0a105e06039f9ca675c1452fbaf3ec commit d1a35c5c4f0a105e06039f9ca675c1452fbaf3ec Merge: bde6c55 f565f9f Author: Brad King AuthorDate: Tue Jan 19 16:17:03 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 16:17:03 2016 -0500 Merge topic 'ExternalProject-ctest-config' into next f565f9fa ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators b95be1cf ExternalProject: Simplify `cmake --build` configuration passing https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f565f9fa038d57958a4d34a6829d3ae175063704 commit f565f9fa038d57958a4d34a6829d3ae175063704 Author: Brad King AuthorDate: Tue Jan 19 16:09:29 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 16:09:29 2016 -0500 ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators In multi-config generators we must tell `ctest` what configuration to test. Reported-by: Taylor Braun-Jones diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index f8ed0c8..200c488 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -1240,6 +1240,9 @@ function(_ep_get_build_command name step cmd_var) if("x${step}x" STREQUAL "xTESTx") string(REGEX REPLACE "^(.*/)cmake([^/]*)$" "\\1ctest\\2" cmd "${cmd}") set(args "") + if(CMAKE_CONFIGURATION_TYPES) + list(APPEND args -C $) + endif() endif() endif() else() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b95be1cf8bf2504b4a5d8c9667ea7e936e19a4f6 commit b95be1cf8bf2504b4a5d8c9667ea7e936e19a4f6 Author: Brad King AuthorDate: Tue Jan 19 16:07:28 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 16:09:23 2016 -0500 ExternalProject: Simplify `cmake --build` configuration passing Check CMAKE_CONFIGURATION_TYPES instead of CMAKE_CFG_INTDIR in order to recognize multi-config generators. Then use $ to pass the configuration value. diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 5c5c54a..f8ed0c8 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -1230,9 +1230,9 @@ function(_ep_get_build_command name step cmd_var) set(cmd "${CMAKE_COMMAND}") endif() set(args --build ".") - if (CMAKE_CFG_INTDIR AND NOT CMAKE_CFG_INTDIR STREQUAL ".") - list(APPEND args --config "${CMAKE_CFG_INTDIR}") - endif () + if(CMAKE_CONFIGURATION_TYPES) + list(APPEND args --config $) + endif() if(step STREQUAL "INSTALL") list(APPEND args --target install) endif() ----------------------------------------------------------------------- Summary of changes: Modules/ExternalProject.cmake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Tue Jan 19 16:18:44 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 19 Jan 2016 16:18:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2030-gf0f0470 Message-ID: <20160119211844.8D922E2F42@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 f0f0470cbf18cdea04873fd1ad67a6504f88a779 (commit) via 78ff8bba81c7fa4dec884c9b59e4058cc830e818 (commit) from d1a35c5c4f0a105e06039f9ca675c1452fbaf3ec (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f0f0470cbf18cdea04873fd1ad67a6504f88a779 commit f0f0470cbf18cdea04873fd1ad67a6504f88a779 Merge: d1a35c5 78ff8bb Author: Brad King AuthorDate: Tue Jan 19 16:18:43 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 16:18:43 2016 -0500 Merge topic 'xalanc' into next 78ff8bba FindXalanC: Do not require XercesC unconditionally https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=78ff8bba81c7fa4dec884c9b59e4058cc830e818 commit 78ff8bba81c7fa4dec884c9b59e4058cc830e818 Author: Brad King AuthorDate: Tue Jan 19 16:15:02 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 16:15:02 2016 -0500 FindXalanC: Do not require XercesC unconditionally diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake index 99b31d1..bdb823a 100644 --- a/Modules/FindXalanC.cmake +++ b/Modules/FindXalanC.cmake @@ -110,7 +110,7 @@ unset(XalanC_VERSION_MAJOR) unset(XalanC_VERSION_MINOR) unset(XalanC_VERSION_PATCH) -find_package(XercesC REQUIRED) +find_package(XercesC) # TODO: require if we are required include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC ----------------------------------------------------------------------- Summary of changes: Modules/FindXalanC.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From rleigh at codelibre.net Tue Jan 19 19:04:12 2016 From: rleigh at codelibre.net (Roger Leigh) Date: Tue, 19 Jan 2016 19:04:12 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2032-gda0dd89 Message-ID: <20160120000412.4A1A4E37B0@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 da0dd89221bbf9a46dd6065c18023b9f62f682a2 (commit) via 3b61ef9dd48eaaacc2fa5123974d9cb9f68ae96d (commit) from f0f0470cbf18cdea04873fd1ad67a6504f88a779 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da0dd89221bbf9a46dd6065c18023b9f62f682a2 commit da0dd89221bbf9a46dd6065c18023b9f62f682a2 Merge: f0f0470 3b61ef9 Author: Roger Leigh AuthorDate: Tue Jan 19 19:04:10 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 19 19:04:10 2016 -0500 Merge topic 'xalanc' into next 3b61ef9d FindXercesC: Pass REQUIRED flag to find_package conditionally https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3b61ef9dd48eaaacc2fa5123974d9cb9f68ae96d commit 3b61ef9dd48eaaacc2fa5123974d9cb9f68ae96d Author: Roger Leigh AuthorDate: Tue Jan 19 23:57:55 2016 +0000 Commit: Roger Leigh CommitDate: Wed Jan 20 00:00:44 2016 +0000 FindXercesC: Pass REQUIRED flag to find_package conditionally diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake index bdb823a..016b7aa 100644 --- a/Modules/FindXalanC.cmake +++ b/Modules/FindXalanC.cmake @@ -110,7 +110,12 @@ unset(XalanC_VERSION_MAJOR) unset(XalanC_VERSION_MINOR) unset(XalanC_VERSION_PATCH) -find_package(XercesC) # TODO: require if we are required +unset(XalanC_XERCESC_REQUIRED) +if(XalanC_FIND_REQUIRED) + set(XalanC_XERCESC_REQUIRED REQUIRED) +endif() +find_package(XercesC ${XalanC_XERCESC_REQUIRED}) +unset(XalanC_XERCESC_REQUIRED) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC ----------------------------------------------------------------------- Summary of changes: Modules/FindXalanC.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) hooks/post-receive -- CMake From kwrobot at kitware.com Wed Jan 20 00:01:15 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Wed, 20 Jan 2016 00:01:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-859-g15fe480 Message-ID: <20160120050115.97E9FE3631@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 15fe480bf06f5ab5aae5641d2ebe6ca368099450 (commit) from c13ed964012bcdf3765ada195db66930d6a0fcf9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=15fe480bf06f5ab5aae5641d2ebe6ca368099450 commit 15fe480bf06f5ab5aae5641d2ebe6ca368099450 Author: Kitware Robot AuthorDate: Wed Jan 20 00:01:12 2016 -0500 Commit: Kitware Robot CommitDate: Wed Jan 20 00:01:12 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index b38f6eb..1c3bcf7 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 4) -set(CMake_VERSION_PATCH 20160119) +set(CMake_VERSION_PATCH 20160120) #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 Jan 20 08:33:31 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:33:31 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-861-g211d097 Message-ID: <20160120133331.9A27FE38D3@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 211d097998da4b730213645af4767fc24015f397 (commit) via 53511936e43c14f362b1e1ba069a77f5ba251ccc (commit) from 15fe480bf06f5ab5aae5641d2ebe6ca368099450 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=211d097998da4b730213645af4767fc24015f397 commit 211d097998da4b730213645af4767fc24015f397 Merge: 15fe480 5351193 Author: Brad King AuthorDate: Wed Jan 20 08:33:27 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:33:27 2016 -0500 Merge topic 'FindPkgConfig-protect-semicolons' 53511936 FindPkgConfig: Quote ${_pkgconfig_path} to protect semicolons on Windows ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 08:33:34 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:33:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-863-g606ad17 Message-ID: <20160120133334.B106EE3819@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 606ad1764ee8aff62368878576ecec7dd8671bae (commit) via 18c3714f4f4cf35f2b040d887850cb3607345e5d (commit) from 211d097998da4b730213645af4767fc24015f397 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=606ad1764ee8aff62368878576ecec7dd8671bae commit 606ad1764ee8aff62368878576ecec7dd8671bae Merge: 211d097 18c3714 Author: Brad King AuthorDate: Wed Jan 20 08:33:32 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:33:32 2016 -0500 Merge topic 'java-updates' 18c3714f UseJava: Fix create_javah CLASSPATH handling on Windows ----------------------------------------------------------------------- Summary of changes: Modules/UseJava.cmake | 4 ++-- Tests/JavaJavah/C.cpp | 10 ++++++++++ Tests/JavaJavah/{B.java => C.java} | 4 ++-- Tests/JavaJavah/CMakeLists.txt | 9 ++++++--- Tests/JavaJavah/HelloWorld2.java | 5 +++++ 5 files changed, 25 insertions(+), 7 deletions(-) create mode 100644 Tests/JavaJavah/C.cpp copy Tests/JavaJavah/{B.java => C.java} (93%) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 08:33:37 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:33:37 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-865-g184be68 Message-ID: <20160120133337.97741E38DA@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 184be68580d19900b289bfc45d507980ea2bce8b (commit) via 77cd74a3ea964fa390d85c371902387e9ffc4a92 (commit) from 606ad1764ee8aff62368878576ecec7dd8671bae (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=184be68580d19900b289bfc45d507980ea2bce8b commit 184be68580d19900b289bfc45d507980ea2bce8b Merge: 606ad17 77cd74a Author: Brad King AuthorDate: Wed Jan 20 08:33:35 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:33:35 2016 -0500 Merge topic 'cache-parse-error-line-number' 77cd74a3 Print line number of cache parse errors (#11109) ----------------------------------------------------------------------- Summary of changes: Source/cmCacheManager.cxx | 10 ++++++++-- Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 5 +++++ .../cache-bad-entry-result.txt} | 0 Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt | 1 + Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt | 10 ++++++++++ .../cache-empty-entry-result.txt} | 0 Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt | 1 + Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt | 7 +++++++ 8 files changed, 32 insertions(+), 2 deletions(-) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/cache-bad-entry-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/cache-bad-entry-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/cache-bad-entry/CMakeCache.txt copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/cache-empty-entry-result.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/cache-empty-entry-stderr.txt create mode 100644 Tests/RunCMake/CommandLine/cache-empty-entry/CMakeCache.txt hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 08:33:40 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:33:40 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-867-gae5f30b Message-ID: <20160120133340.330B8E38DC@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 ae5f30b36a58bffbc0954906eb2e60961f57caca (commit) via a15e375cddb415ebe89aa5896d783b821aca940c (commit) from 184be68580d19900b289bfc45d507980ea2bce8b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae5f30b36a58bffbc0954906eb2e60961f57caca commit ae5f30b36a58bffbc0954906eb2e60961f57caca Merge: 184be68 a15e375 Author: Brad King AuthorDate: Wed Jan 20 08:33:38 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:33:38 2016 -0500 Merge topic 'mfc-utility-targets' a15e375c Fix MFC setting on utility targets (#15867) ----------------------------------------------------------------------- Summary of changes: Source/cmVisualStudio10TargetGenerator.cxx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 08:33:42 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:33:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-874-gd8bced8 Message-ID: <20160120133342.D8E4DE38DC@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 d8bced813cdd0c3eb7c2e3e150f513da04ded513 (commit) via 1040e690c6c99979f8edf2a121de6d835be96dbe (commit) via ce3b713baa1c899ae7739c192040e24445368a0a (commit) via dc039cc02c857b2c418481533a236dad6a586a7f (commit) via ffa2a8c967df09c4630e50e7c7339e36b027ecaf (commit) via 92e9bb21758f73266e1f805e366ce90d2cbd688d (commit) via fb1526f57fe4720aff596b312e6a767502b86e13 (commit) from ae5f30b36a58bffbc0954906eb2e60961f57caca (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d8bced813cdd0c3eb7c2e3e150f513da04ded513 commit d8bced813cdd0c3eb7c2e3e150f513da04ded513 Merge: ae5f30b 1040e69 Author: Brad King AuthorDate: Wed Jan 20 08:33:41 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:33:41 2016 -0500 Merge topic 'cleanup-RunSingleCommand' 1040e690 cmSystemTools: Teach RunSingleCommand to merge child pipes when possible ce3b713b cmSystemTools: Simplify RunSingleCommand output string construction dc039cc0 cmSystemTools: Drop redundant condition in RunSingleCommand ffa2a8c9 cmSystemTools: Rename OUTPUT_NORMAL to OUTPUT_FORWARD to clarify its purpose 92e9bb21 cmcmd.cxx: Remove unused code in __run_iwyu implementation fb1526f5 cmake: Change `-E chdir` to pass through stdout/stderr directly ----------------------------------------------------------------------- Summary of changes: Source/cmGlobalGenerator.cxx | 2 +- Source/cmSystemTools.cxx | 75 +++++++++++++++++------------------------- Source/cmSystemTools.h | 4 +-- Source/cmcmd.cxx | 7 ++-- 4 files changed, 37 insertions(+), 51 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 08:34:16 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:34:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2039-gf110ba3 Message-ID: <20160120133416.AD034E38EA@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 f110ba38bdf00a778c0388da5886f024ce078f47 (commit) via d8bced813cdd0c3eb7c2e3e150f513da04ded513 (commit) via ae5f30b36a58bffbc0954906eb2e60961f57caca (commit) via 184be68580d19900b289bfc45d507980ea2bce8b (commit) via 606ad1764ee8aff62368878576ecec7dd8671bae (commit) via 211d097998da4b730213645af4767fc24015f397 (commit) via 15fe480bf06f5ab5aae5641d2ebe6ca368099450 (commit) from da0dd89221bbf9a46dd6065c18023b9f62f682a2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f110ba38bdf00a778c0388da5886f024ce078f47 commit f110ba38bdf00a778c0388da5886f024ce078f47 Merge: da0dd89 d8bced8 Author: Brad King AuthorDate: Wed Jan 20 08:34:08 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 08:34:08 2016 -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 Jan 20 08:36:57 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:36:57 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2042-gc7313e7 Message-ID: <20160120133657.1C4C1E3933@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 c7313e73a122667ec905f3c8f265de6da9f709e7 (commit) via 81ec5ea6a94a52ca33655e9db4598258fc627762 (commit) via f372d6eae582b0992c231696d7ac23b5a2632e4b (commit) from f110ba38bdf00a778c0388da5886f024ce078f47 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c7313e73a122667ec905f3c8f265de6da9f709e7 commit c7313e73a122667ec905f3c8f265de6da9f709e7 Merge: f110ba3 81ec5ea Author: Brad King AuthorDate: Wed Jan 20 08:36:56 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:36:56 2016 -0500 Merge topic 'ExternalProject-ctest-config' into next 81ec5ea6 fixup! ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators f372d6ea fixup! ExternalProject: Simplify `cmake --build` configuration passing https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=81ec5ea6a94a52ca33655e9db4598258fc627762 commit 81ec5ea6a94a52ca33655e9db4598258fc627762 Author: Brad King AuthorDate: Wed Jan 20 08:35:30 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 08:35:30 2016 -0500 fixup! ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index ae93d56..7070dc4 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -1241,7 +1241,7 @@ function(_ep_get_build_command name step cmd_var) string(REGEX REPLACE "^(.*/)cmake([^/]*)$" "\\1ctest\\2" cmd "${cmd}") set(args "") if(CMAKE_CONFIGURATION_TYPES) - list(APPEND args -C $) + list(APPEND args -C $) endif() endif() endif() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f372d6eae582b0992c231696d7ac23b5a2632e4b commit f372d6eae582b0992c231696d7ac23b5a2632e4b Author: Brad King AuthorDate: Wed Jan 20 08:35:15 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 08:35:15 2016 -0500 fixup! ExternalProject: Simplify `cmake --build` configuration passing diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 200c488..ae93d56 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -1231,7 +1231,7 @@ function(_ep_get_build_command name step cmd_var) endif() set(args --build ".") if(CMAKE_CONFIGURATION_TYPES) - list(APPEND args --config $) + list(APPEND args --config $) endif() if(step STREQUAL "INSTALL") list(APPEND args --target install) ----------------------------------------------------------------------- Summary of changes: Modules/ExternalProject.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 08:37:34 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 08:37:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2045-g6c1b1d9 Message-ID: <20160120133734.8EBD5E3943@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 6c1b1d9c251ddd98093e37dfe1c9d605ba0ebe00 (commit) via ec00e89e83eeb91633affd662870b7a6955dbf5a (commit) via 5d739a3c843c95aec6c5c8df4d7e87e606c0c8ea (commit) from c7313e73a122667ec905f3c8f265de6da9f709e7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6c1b1d9c251ddd98093e37dfe1c9d605ba0ebe00 commit 6c1b1d9c251ddd98093e37dfe1c9d605ba0ebe00 Merge: c7313e7 ec00e89 Author: Brad King AuthorDate: Wed Jan 20 08:37:33 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 08:37:33 2016 -0500 Merge topic 'ExternalProject-ctest-config' into next ec00e89e ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators 5d739a3c ExternalProject: Simplify `cmake --build` configuration passing https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ec00e89e83eeb91633affd662870b7a6955dbf5a commit ec00e89e83eeb91633affd662870b7a6955dbf5a Author: Brad King AuthorDate: Tue Jan 19 16:09:29 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 08:36:30 2016 -0500 ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators In multi-config generators we must tell `ctest` what configuration to test. Reported-by: Taylor Braun-Jones diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 085aa0d..7070dc4 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -1240,6 +1240,9 @@ function(_ep_get_build_command name step cmd_var) if("x${step}x" STREQUAL "xTESTx") string(REGEX REPLACE "^(.*/)cmake([^/]*)$" "\\1ctest\\2" cmd "${cmd}") set(args "") + if(CMAKE_CONFIGURATION_TYPES) + list(APPEND args -C $) + endif() endif() endif() else() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5d739a3c843c95aec6c5c8df4d7e87e606c0c8ea commit 5d739a3c843c95aec6c5c8df4d7e87e606c0c8ea Author: Brad King AuthorDate: Tue Jan 19 16:07:28 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 08:36:09 2016 -0500 ExternalProject: Simplify `cmake --build` configuration passing Check CMAKE_CONFIGURATION_TYPES instead of CMAKE_CFG_INTDIR in order to recognize multi-config generators. Then use $ to pass the configuration value. diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 5c5c54a..085aa0d 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -1230,9 +1230,9 @@ function(_ep_get_build_command name step cmd_var) set(cmd "${CMAKE_COMMAND}") endif() set(args --build ".") - if (CMAKE_CFG_INTDIR AND NOT CMAKE_CFG_INTDIR STREQUAL ".") - list(APPEND args --config "${CMAKE_CFG_INTDIR}") - endif () + if(CMAKE_CONFIGURATION_TYPES) + list(APPEND args --config $) + endif() if(step STREQUAL "INSTALL") list(APPEND args --target install) endif() ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 09:00:01 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 09:00:01 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2047-g664b407 Message-ID: <20160120140001.49313E377E@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 664b407ec54aa38ddb189128ba2baf81e78efab7 (commit) via 1787269ef3c476ee1176c92c54e5b22f9cb7f3fe (commit) from 6c1b1d9c251ddd98093e37dfe1c9d605ba0ebe00 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=664b407ec54aa38ddb189128ba2baf81e78efab7 commit 664b407ec54aa38ddb189128ba2baf81e78efab7 Merge: 6c1b1d9 1787269 Author: Brad King AuthorDate: Wed Jan 20 09:00:00 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 09:00:00 2016 -0500 Merge topic 'cmake-E-time-quoting' into next 1787269e cmake: Fix `-E time` argument passing to child https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1787269ef3c476ee1176c92c54e5b22f9cb7f3fe commit 1787269ef3c476ee1176c92c54e5b22f9cb7f3fe Author: Brad King AuthorDate: Wed Jan 20 08:45:55 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 08:55:23 2016 -0500 cmake: Fix `-E time` argument passing to child Since this command was introduced in 2002 it has incorrectly constructed the child process command line by concatenating arguments separated by spaces with no quoting. Fix this by passing the command argument vector directly to RunSingleCommand without an intermediate quoting and re-parsing step. Reported-by: Andrey Pokrovskiy diff --git a/Help/release/dev/cmake-E-time-quoting.rst b/Help/release/dev/cmake-E-time-quoting.rst new file mode 100644 index 0000000..23b17c5 --- /dev/null +++ b/Help/release/dev/cmake-E-time-quoting.rst @@ -0,0 +1,7 @@ +cmake-E-time-quoting +-------------------- + +* The :manual:`cmake(1)` ``-E time`` command now properly passes arguments + with spaces or special characters through to the child process. This + may break scripts that worked around the bug with their own extra + quoting or escaping. diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 8dd902b..1dc304c 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -554,7 +554,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) // Clock command else if (args[1] == "time" && args.size() > 2) { - std::string command = cmJoin(cmMakeRange(args).advance(2), " "); + std::vector command(args.begin()+2, args.end()); clock_t clock_start, clock_finish; time_t time_start, time_finish; @@ -562,7 +562,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector& args) time(&time_start); clock_start = clock(); int ret =0; - cmSystemTools::RunSingleCommand(command.c_str(), 0, 0, &ret); + cmSystemTools::RunSingleCommand(command, 0, 0, &ret); clock_finish = clock(); time(&time_finish); diff --git a/Tests/RunCMake/CommandLine/E_time-no-arg-result.txt b/Tests/RunCMake/CommandLine/E_time-no-arg-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CommandLine/E_time-no-arg-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/CommandLine/E_time-no-arg-stderr.txt b/Tests/RunCMake/CommandLine/E_time-no-arg-stderr.txt new file mode 100644 index 0000000..50d9b03 --- /dev/null +++ b/Tests/RunCMake/CommandLine/E_time-no-arg-stderr.txt @@ -0,0 +1,3 @@ +^CMake Error: cmake version .* +Usage: .* -E \[arguments\.\.\.\] +Available commands: diff --git a/Tests/RunCMake/CommandLine/E_time-stdout.txt b/Tests/RunCMake/CommandLine/E_time-stdout.txt new file mode 100644 index 0000000..a51446a --- /dev/null +++ b/Tests/RunCMake/CommandLine/E_time-stdout.txt @@ -0,0 +1,3 @@ +^hello world +Elapsed time: [^ +]*$ diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake index 8068973..e3b73ff 100644 --- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake +++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake @@ -12,6 +12,9 @@ run_cmake_command(E_echo_append ${CMAKE_COMMAND} -E echo_append) run_cmake_command(E_rename-no-arg ${CMAKE_COMMAND} -E rename) run_cmake_command(E_touch_nocreate-no-arg ${CMAKE_COMMAND} -E touch_nocreate) +run_cmake_command(E_time ${CMAKE_COMMAND} -E time ${CMAKE_COMMAND} -E echo "hello world") +run_cmake_command(E_time-no-arg ${CMAKE_COMMAND} -E time) + run_cmake_command(E___run_iwyu-no-iwyu ${CMAKE_COMMAND} -E __run_iwyu -- command-does-not-exist) run_cmake_command(E___run_iwyu-bad-iwyu ${CMAKE_COMMAND} -E __run_iwyu --iwyu=iwyu-does-not-exist -- command-does-not-exist) run_cmake_command(E___run_iwyu-no--- ${CMAKE_COMMAND} -E __run_iwyu --iwyu=iwyu-does-not-exist command-does-not-exist) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/cmake-E-time-quoting.rst | 7 +++++++ Source/cmcmd.cxx | 4 ++-- .../E_time-no-arg-result.txt} | 0 .../{E-no-arg-stderr.txt => E_time-no-arg-stderr.txt} | 0 Tests/RunCMake/CommandLine/E_time-stdout.txt | 3 +++ Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 3 +++ 6 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 Help/release/dev/cmake-E-time-quoting.rst copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_time-no-arg-result.txt} (100%) copy Tests/RunCMake/CommandLine/{E-no-arg-stderr.txt => E_time-no-arg-stderr.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_time-stdout.txt hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 09:31:23 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 09:31:23 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2049-gcfdb9ac Message-ID: <20160120143123.909FDE38EE@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 cfdb9ace020af28dd226790a9d7165712bf45718 (commit) via e00e292afda204ed9a52abdc3ee317d6ad71b172 (commit) from 664b407ec54aa38ddb189128ba2baf81e78efab7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cfdb9ace020af28dd226790a9d7165712bf45718 commit cfdb9ace020af28dd226790a9d7165712bf45718 Merge: 664b407 e00e292 Author: Brad King AuthorDate: Wed Jan 20 09:31:22 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 09:31:22 2016 -0500 Merge topic 'add-FindXalanC' into next e00e292a FindXalanC: New module to find the Apache Xalan-C++ library https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e00e292afda204ed9a52abdc3ee317d6ad71b172 commit e00e292afda204ed9a52abdc3ee317d6ad71b172 Author: Roger Leigh AuthorDate: Tue Jan 19 13:32:38 2016 +0000 Commit: Brad King CommitDate: Wed Jan 20 09:29:00 2016 -0500 FindXalanC: New module to find the Apache Xalan-C++ library diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst index c9219d5..10f05df 100644 --- a/Help/manual/cmake-modules.7.rst +++ b/Help/manual/cmake-modules.7.rst @@ -213,6 +213,7 @@ All Modules /module/FindwxWidgets /module/FindwxWindows /module/FindXCTest + /module/FindXalanC /module/FindXercesC /module/FindX11 /module/FindXMLRPC diff --git a/Help/module/FindXalanC.rst b/Help/module/FindXalanC.rst new file mode 100644 index 0000000..b99d212 --- /dev/null +++ b/Help/module/FindXalanC.rst @@ -0,0 +1 @@ +.. cmake-module:: ../../Modules/FindXalanC.cmake diff --git a/Help/release/dev/FindXalanC.rst b/Help/release/dev/FindXalanC.rst new file mode 100644 index 0000000..1617253 --- /dev/null +++ b/Help/release/dev/FindXalanC.rst @@ -0,0 +1,5 @@ +FindXalanC +---------- + +* A new module to find the Apache Xalan-C++ XSL transform processing + library. diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake new file mode 100644 index 0000000..016b7aa --- /dev/null +++ b/Modules/FindXalanC.cmake @@ -0,0 +1,162 @@ +#.rst: +# FindXalanC +# ----------- +# +# Find the Apache Xalan-C++ XSL transform processor headers and libraries. +# +# Imported targets +# ^^^^^^^^^^^^^^^^ +# +# This module defines the following :prop_tgt:`IMPORTED` targets: +# +# ``XalanC::XalanC`` +# The Xalan-C++ ``xalan-c`` library, if found. +# +# Result variables +# ^^^^^^^^^^^^^^^^ +# +# This module will set the following variables in your project: +# +# ``XalanC_FOUND`` +# true if the Xalan headers and libraries were found +# ``XalanC_VERSION`` +# Xalan release version +# ``XalanC_INCLUDE_DIRS`` +# the directory containing the Xalan headers; note +# ``XercesC_INCLUDE_DIRS`` is also required +# ``XalanC_LIBRARIES`` +# Xalan libraries to be linked; note ``XercesC_LIBRARIES`` is also +# required +# +# Cache variables +# ^^^^^^^^^^^^^^^ +# +# The following cache variables may also be set: +# +# ``XalanC_INCLUDE_DIR`` +# the directory containing the Xalan headers +# ``XalanC_LIBRARY`` +# the Xalan library + +# Written by Roger Leigh + +#============================================================================= +# Copyright 2016 University of Dundee +# +# 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.) + +function(_XalanC_GET_VERSION version_hdr) + file(STRINGS ${version_hdr} _contents REGEX "^[ \t]*#define XALAN_VERSION_.*") + if(_contents) + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" XalanC_MAJOR "${_contents}") + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_MINOR[ \t]+([0-9]+).*" "\\1" XalanC_MINOR "${_contents}") + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_REVISION[ \t]+([0-9]+).*" "\\1" XalanC_PATCH "${_contents}") + + if(NOT XalanC_MAJOR MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_MAJOR!") + endif() + if(NOT XalanC_MINOR MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_MINOR!") + endif() + if(NOT XalanC_PATCH MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_REVISION!") + endif() + + set(XalanC_VERSION "${XalanC_MAJOR}.${XalanC_MINOR}.${XalanC_PATCH}" PARENT_SCOPE) + set(XalanC_VERSION_MAJOR "${XalanC_MAJOR}" PARENT_SCOPE) + set(XalanC_VERSION_MINOR "${XalanC_MINOR}" PARENT_SCOPE) + set(XalanC_VERSION_PATCH "${XalanC_PATCH}" PARENT_SCOPE) + else() + message(FATAL_ERROR "Include file ${version_hdr} does not exist or does not contain expected version information") + endif() +endfunction() + +# Find include directory +find_path(XalanC_INCLUDE_DIR + NAMES "xalanc/XalanTransformer/XalanTransformer.hpp" + DOC "Xalan-C++ include directory") +mark_as_advanced(XalanC_INCLUDE_DIR) + +if(XalanC_INCLUDE_DIR) + _XalanC_GET_VERSION("${XalanC_INCLUDE_DIR}/xalanc/Include/XalanVersion.hpp") +endif() + +if(NOT XalanC_LIBRARY) + # Find all XalanC libraries + find_library(XalanC_LIBRARY_RELEASE + NAMES "Xalan-C" "xalan-c" + "Xalan-C_${XalanC_VERSION_MAJOR}" + "Xalan-C_${XalanC_VERSION_MAJOR}_${XalanC_VERSION_MINOR}" + DOC "Xalan-C++ libraries (release)") + find_library(XalanC_LIBRARY_DEBUG + NAMES "Xalan-CD" "xalan-cd" + "Xalan-C_${XalanC_VERSION_MAJOR}D" + "Xalan-C_${XalanC_VERSION_MAJOR}_${XalanC_VERSION_MINOR}D" + DOC "Xalan-C++ libraries (debug)") + include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake) + select_library_configurations(XalanC) + mark_as_advanced(XalanC_LIBRARY_RELEASE XalanC_LIBRARY_DEBUG) +endif() + +unset(XalanC_VERSION_MAJOR) +unset(XalanC_VERSION_MINOR) +unset(XalanC_VERSION_PATCH) + +unset(XalanC_XERCESC_REQUIRED) +if(XalanC_FIND_REQUIRED) + set(XalanC_XERCESC_REQUIRED REQUIRED) +endif() +find_package(XercesC ${XalanC_XERCESC_REQUIRED}) +unset(XalanC_XERCESC_REQUIRED) + +include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC + FOUND_VAR XalanC_FOUND + REQUIRED_VARS XalanC_LIBRARY + XalanC_INCLUDE_DIR + XalanC_VERSION + XercesC_FOUND + VERSION_VAR XalanC_VERSION + FAIL_MESSAGE "Failed to find XalanC") + +if(XalanC_FOUND) + set(XalanC_INCLUDE_DIRS "${XalanC_INCLUDE_DIR}" ${XercesC_INCLUDE_DIRS}) + set(XalanC_LIBRARIES "${XalanC_LIBRARY}" ${XercesC_LIBRARIES}) + + # For header-only libraries + if(NOT TARGET XalanC::XalanC) + add_library(XalanC::XalanC UNKNOWN IMPORTED) + if(XalanC_INCLUDE_DIRS) + set_target_properties(XalanC::XalanC PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${XalanC_INCLUDE_DIRS}") + endif() + if(EXISTS "${XalanC_LIBRARY}") + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${XalanC_LIBRARY}") + endif() + if(EXISTS "${XalanC_LIBRARY_DEBUG}") + set_property(TARGET XalanC::XalanC APPEND PROPERTY + IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "CXX" + IMPORTED_LOCATION_DEBUG "${XalanC_LIBRARY_DEBUG}") + endif() + if(EXISTS "${XalanC_LIBRARY_RELEASE}") + set_property(TARGET XalanC::XalanC APPEND PROPERTY + IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" + IMPORTED_LOCATION_RELEASE "${XalanC_LIBRARY_RELEASE}") + endif() + set_target_properties(XalanC::XalanC PROPERTIES INTERFACE_LINK_LIBRARIES XercesC::XercesC) + endif() +endif() diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 043b757..240144f 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1379,6 +1379,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindTIFF) endif() + if(CMake_TEST_FindXalanC) + add_subdirectory(FindXalanC) + endif() + if(CMake_TEST_FindXercesC) add_subdirectory(FindXercesC) endif() diff --git a/Tests/FindXalanC/CMakeLists.txt b/Tests/FindXalanC/CMakeLists.txt new file mode 100644 index 0000000..7872929 --- /dev/null +++ b/Tests/FindXalanC/CMakeLists.txt @@ -0,0 +1,10 @@ +add_test(NAME FindXalanC.Test COMMAND + ${CMAKE_CTEST_COMMAND} -C $ + --build-and-test + "${CMake_SOURCE_DIR}/Tests/FindXalanC/Test" + "${CMake_BINARY_DIR}/Tests/FindXalanC/Test" + ${build_generator_args} + --build-project TestFindXalanC + --build-options ${build_options} + --test-command ${CMAKE_CTEST_COMMAND} -V -C $ + ) diff --git a/Tests/FindXalanC/Test/CMakeLists.txt b/Tests/FindXalanC/Test/CMakeLists.txt new file mode 100644 index 0000000..b445e0e --- /dev/null +++ b/Tests/FindXalanC/Test/CMakeLists.txt @@ -0,0 +1,17 @@ +cmake_minimum_required(VERSION 3.1) +project(TestFindXalanC CXX) +include(CTest) + +# CMake does not actually provide FindXalanC publicly. +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/Modules) + +find_package(XalanC REQUIRED) + +add_executable(test_xalanc_tgt main.cxx) +target_link_libraries(test_xalanc_tgt XalanC::XalanC) +add_test(NAME test_xalanc_tgt COMMAND test_xalanc_tgt) + +add_executable(test_xalanc_var main.cxx) +target_include_directories(test_xalanc_var PRIVATE ${XalanC_INCLUDE_DIRS}) +target_link_libraries(test_xalanc_var PRIVATE ${XalanC_LIBRARIES}) +add_test(NAME test_xalanc_var COMMAND test_xalanc_var) diff --git a/Tests/FindXalanC/Test/main.cxx b/Tests/FindXalanC/Test/main.cxx new file mode 100644 index 0000000..3b4a2df --- /dev/null +++ b/Tests/FindXalanC/Test/main.cxx @@ -0,0 +1,10 @@ +#include +#include + +int main() +{ + xercesc::XMLPlatformUtils::Initialize(); + xalanc::XalanTransformer::initialize(); + xalanc::XalanTransformer::terminate(); + xercesc::XMLPlatformUtils::Terminate(); +} ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 09:33:34 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 09:33:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2051-g63632df Message-ID: <20160120143334.DB985E3930@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 63632df2dc3f464a4e4427300c9a72e3a603fff2 (commit) via 9ca666a9fb5f2ee134222ee4473fb7dc7c7167fc (commit) from cfdb9ace020af28dd226790a9d7165712bf45718 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=63632df2dc3f464a4e4427300c9a72e3a603fff2 commit 63632df2dc3f464a4e4427300c9a72e3a603fff2 Merge: cfdb9ac 9ca666a Author: Brad King AuthorDate: Wed Jan 20 09:33:34 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 09:33:34 2016 -0500 Merge topic 'add-FindXalanC' into next 9ca666a9 fixup! FindXalanC: New module to find the Apache Xalan-C++ library https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9ca666a9fb5f2ee134222ee4473fb7dc7c7167fc commit 9ca666a9fb5f2ee134222ee4473fb7dc7c7167fc Author: Brad King AuthorDate: Wed Jan 20 09:33:04 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 09:33:04 2016 -0500 fixup! FindXalanC: New module to find the Apache Xalan-C++ library diff --git a/Help/release/dev/FindXalanC.rst b/Help/release/dev/FindXalanC.rst index 1617253..5369774 100644 --- a/Help/release/dev/FindXalanC.rst +++ b/Help/release/dev/FindXalanC.rst @@ -1,5 +1,5 @@ FindXalanC ---------- -* A new module to find the Apache Xalan-C++ XSL transform processing - library. +* A :module:`FindXalanC` module was introduced to find the + Apache Xalan-C++ XSL transform processing library. ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindXalanC.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 09:33:50 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 09:33:50 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2053-g8763609 Message-ID: <20160120143350.0CB95E377C@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 87636090c5e499a42c14e57a24b6c1daf7b64e2e (commit) via f9e45ab9d412b08ded8a11ff1f4f0ef90e10358c (commit) from 63632df2dc3f464a4e4427300c9a72e3a603fff2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=87636090c5e499a42c14e57a24b6c1daf7b64e2e commit 87636090c5e499a42c14e57a24b6c1daf7b64e2e Merge: 63632df f9e45ab Author: Brad King AuthorDate: Wed Jan 20 09:33:49 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 09:33:49 2016 -0500 Merge topic 'add-FindXalanC' into next f9e45ab9 FindXalanC: New module to find the Apache Xalan-C++ library https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f9e45ab9d412b08ded8a11ff1f4f0ef90e10358c commit f9e45ab9d412b08ded8a11ff1f4f0ef90e10358c Author: Roger Leigh AuthorDate: Tue Jan 19 13:32:38 2016 +0000 Commit: Brad King CommitDate: Wed Jan 20 09:33:38 2016 -0500 FindXalanC: New module to find the Apache Xalan-C++ library diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst index c9219d5..10f05df 100644 --- a/Help/manual/cmake-modules.7.rst +++ b/Help/manual/cmake-modules.7.rst @@ -213,6 +213,7 @@ All Modules /module/FindwxWidgets /module/FindwxWindows /module/FindXCTest + /module/FindXalanC /module/FindXercesC /module/FindX11 /module/FindXMLRPC diff --git a/Help/module/FindXalanC.rst b/Help/module/FindXalanC.rst new file mode 100644 index 0000000..b99d212 --- /dev/null +++ b/Help/module/FindXalanC.rst @@ -0,0 +1 @@ +.. cmake-module:: ../../Modules/FindXalanC.cmake diff --git a/Help/release/dev/FindXalanC.rst b/Help/release/dev/FindXalanC.rst new file mode 100644 index 0000000..5369774 --- /dev/null +++ b/Help/release/dev/FindXalanC.rst @@ -0,0 +1,5 @@ +FindXalanC +---------- + +* A :module:`FindXalanC` module was introduced to find the + Apache Xalan-C++ XSL transform processing library. diff --git a/Modules/FindXalanC.cmake b/Modules/FindXalanC.cmake new file mode 100644 index 0000000..016b7aa --- /dev/null +++ b/Modules/FindXalanC.cmake @@ -0,0 +1,162 @@ +#.rst: +# FindXalanC +# ----------- +# +# Find the Apache Xalan-C++ XSL transform processor headers and libraries. +# +# Imported targets +# ^^^^^^^^^^^^^^^^ +# +# This module defines the following :prop_tgt:`IMPORTED` targets: +# +# ``XalanC::XalanC`` +# The Xalan-C++ ``xalan-c`` library, if found. +# +# Result variables +# ^^^^^^^^^^^^^^^^ +# +# This module will set the following variables in your project: +# +# ``XalanC_FOUND`` +# true if the Xalan headers and libraries were found +# ``XalanC_VERSION`` +# Xalan release version +# ``XalanC_INCLUDE_DIRS`` +# the directory containing the Xalan headers; note +# ``XercesC_INCLUDE_DIRS`` is also required +# ``XalanC_LIBRARIES`` +# Xalan libraries to be linked; note ``XercesC_LIBRARIES`` is also +# required +# +# Cache variables +# ^^^^^^^^^^^^^^^ +# +# The following cache variables may also be set: +# +# ``XalanC_INCLUDE_DIR`` +# the directory containing the Xalan headers +# ``XalanC_LIBRARY`` +# the Xalan library + +# Written by Roger Leigh + +#============================================================================= +# Copyright 2016 University of Dundee +# +# 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.) + +function(_XalanC_GET_VERSION version_hdr) + file(STRINGS ${version_hdr} _contents REGEX "^[ \t]*#define XALAN_VERSION_.*") + if(_contents) + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" XalanC_MAJOR "${_contents}") + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_MINOR[ \t]+([0-9]+).*" "\\1" XalanC_MINOR "${_contents}") + string(REGEX REPLACE "[^*]*#define XALAN_VERSION_REVISION[ \t]+([0-9]+).*" "\\1" XalanC_PATCH "${_contents}") + + if(NOT XalanC_MAJOR MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_MAJOR!") + endif() + if(NOT XalanC_MINOR MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_MINOR!") + endif() + if(NOT XalanC_PATCH MATCHES "^[0-9]+$") + message(FATAL_ERROR "Version parsing failed for XALAN_VERSION_REVISION!") + endif() + + set(XalanC_VERSION "${XalanC_MAJOR}.${XalanC_MINOR}.${XalanC_PATCH}" PARENT_SCOPE) + set(XalanC_VERSION_MAJOR "${XalanC_MAJOR}" PARENT_SCOPE) + set(XalanC_VERSION_MINOR "${XalanC_MINOR}" PARENT_SCOPE) + set(XalanC_VERSION_PATCH "${XalanC_PATCH}" PARENT_SCOPE) + else() + message(FATAL_ERROR "Include file ${version_hdr} does not exist or does not contain expected version information") + endif() +endfunction() + +# Find include directory +find_path(XalanC_INCLUDE_DIR + NAMES "xalanc/XalanTransformer/XalanTransformer.hpp" + DOC "Xalan-C++ include directory") +mark_as_advanced(XalanC_INCLUDE_DIR) + +if(XalanC_INCLUDE_DIR) + _XalanC_GET_VERSION("${XalanC_INCLUDE_DIR}/xalanc/Include/XalanVersion.hpp") +endif() + +if(NOT XalanC_LIBRARY) + # Find all XalanC libraries + find_library(XalanC_LIBRARY_RELEASE + NAMES "Xalan-C" "xalan-c" + "Xalan-C_${XalanC_VERSION_MAJOR}" + "Xalan-C_${XalanC_VERSION_MAJOR}_${XalanC_VERSION_MINOR}" + DOC "Xalan-C++ libraries (release)") + find_library(XalanC_LIBRARY_DEBUG + NAMES "Xalan-CD" "xalan-cd" + "Xalan-C_${XalanC_VERSION_MAJOR}D" + "Xalan-C_${XalanC_VERSION_MAJOR}_${XalanC_VERSION_MINOR}D" + DOC "Xalan-C++ libraries (debug)") + include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake) + select_library_configurations(XalanC) + mark_as_advanced(XalanC_LIBRARY_RELEASE XalanC_LIBRARY_DEBUG) +endif() + +unset(XalanC_VERSION_MAJOR) +unset(XalanC_VERSION_MINOR) +unset(XalanC_VERSION_PATCH) + +unset(XalanC_XERCESC_REQUIRED) +if(XalanC_FIND_REQUIRED) + set(XalanC_XERCESC_REQUIRED REQUIRED) +endif() +find_package(XercesC ${XalanC_XERCESC_REQUIRED}) +unset(XalanC_XERCESC_REQUIRED) + +include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(XalanC + FOUND_VAR XalanC_FOUND + REQUIRED_VARS XalanC_LIBRARY + XalanC_INCLUDE_DIR + XalanC_VERSION + XercesC_FOUND + VERSION_VAR XalanC_VERSION + FAIL_MESSAGE "Failed to find XalanC") + +if(XalanC_FOUND) + set(XalanC_INCLUDE_DIRS "${XalanC_INCLUDE_DIR}" ${XercesC_INCLUDE_DIRS}) + set(XalanC_LIBRARIES "${XalanC_LIBRARY}" ${XercesC_LIBRARIES}) + + # For header-only libraries + if(NOT TARGET XalanC::XalanC) + add_library(XalanC::XalanC UNKNOWN IMPORTED) + if(XalanC_INCLUDE_DIRS) + set_target_properties(XalanC::XalanC PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${XalanC_INCLUDE_DIRS}") + endif() + if(EXISTS "${XalanC_LIBRARY}") + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${XalanC_LIBRARY}") + endif() + if(EXISTS "${XalanC_LIBRARY_DEBUG}") + set_property(TARGET XalanC::XalanC APPEND PROPERTY + IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "CXX" + IMPORTED_LOCATION_DEBUG "${XalanC_LIBRARY_DEBUG}") + endif() + if(EXISTS "${XalanC_LIBRARY_RELEASE}") + set_property(TARGET XalanC::XalanC APPEND PROPERTY + IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(XalanC::XalanC PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" + IMPORTED_LOCATION_RELEASE "${XalanC_LIBRARY_RELEASE}") + endif() + set_target_properties(XalanC::XalanC PROPERTIES INTERFACE_LINK_LIBRARIES XercesC::XercesC) + endif() +endif() diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 043b757..240144f 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1379,6 +1379,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindTIFF) endif() + if(CMake_TEST_FindXalanC) + add_subdirectory(FindXalanC) + endif() + if(CMake_TEST_FindXercesC) add_subdirectory(FindXercesC) endif() diff --git a/Tests/FindXalanC/CMakeLists.txt b/Tests/FindXalanC/CMakeLists.txt new file mode 100644 index 0000000..7872929 --- /dev/null +++ b/Tests/FindXalanC/CMakeLists.txt @@ -0,0 +1,10 @@ +add_test(NAME FindXalanC.Test COMMAND + ${CMAKE_CTEST_COMMAND} -C $ + --build-and-test + "${CMake_SOURCE_DIR}/Tests/FindXalanC/Test" + "${CMake_BINARY_DIR}/Tests/FindXalanC/Test" + ${build_generator_args} + --build-project TestFindXalanC + --build-options ${build_options} + --test-command ${CMAKE_CTEST_COMMAND} -V -C $ + ) diff --git a/Tests/FindXalanC/Test/CMakeLists.txt b/Tests/FindXalanC/Test/CMakeLists.txt new file mode 100644 index 0000000..b445e0e --- /dev/null +++ b/Tests/FindXalanC/Test/CMakeLists.txt @@ -0,0 +1,17 @@ +cmake_minimum_required(VERSION 3.1) +project(TestFindXalanC CXX) +include(CTest) + +# CMake does not actually provide FindXalanC publicly. +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/Modules) + +find_package(XalanC REQUIRED) + +add_executable(test_xalanc_tgt main.cxx) +target_link_libraries(test_xalanc_tgt XalanC::XalanC) +add_test(NAME test_xalanc_tgt COMMAND test_xalanc_tgt) + +add_executable(test_xalanc_var main.cxx) +target_include_directories(test_xalanc_var PRIVATE ${XalanC_INCLUDE_DIRS}) +target_link_libraries(test_xalanc_var PRIVATE ${XalanC_LIBRARIES}) +add_test(NAME test_xalanc_var COMMAND test_xalanc_var) diff --git a/Tests/FindXalanC/Test/main.cxx b/Tests/FindXalanC/Test/main.cxx new file mode 100644 index 0000000..3b4a2df --- /dev/null +++ b/Tests/FindXalanC/Test/main.cxx @@ -0,0 +1,10 @@ +#include +#include + +int main() +{ + xercesc::XMLPlatformUtils::Initialize(); + xalanc::XalanTransformer::initialize(); + xalanc::XalanTransformer::terminate(); + xercesc::XMLPlatformUtils::Terminate(); +} ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 09:35:34 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 09:35:34 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2055-gc7234a8 Message-ID: <20160120143534.9F29FE398C@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 c7234a805cc4624901928f08d0507764d7290f18 (commit) via c8daac3556bc4ef7b39e0e632ead55d566e927cc (commit) from 87636090c5e499a42c14e57a24b6c1daf7b64e2e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c7234a805cc4624901928f08d0507764d7290f18 commit c7234a805cc4624901928f08d0507764d7290f18 Merge: 8763609 c8daac3 Author: Brad King AuthorDate: Wed Jan 20 09:35:34 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 09:35:34 2016 -0500 Merge topic 'GetPrerequisites-ms-ucrt' into next c8daac35 GetPrerequisites: Define api-ms-win-* files as system libraries (#15691) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c8daac3556bc4ef7b39e0e632ead55d566e927cc commit c8daac3556bc4ef7b39e0e632ead55d566e927cc Author: Andr? Klitzing AuthorDate: Tue Jan 19 15:05:31 2016 -0500 Commit: Brad King CommitDate: Tue Jan 19 15:05:31 2016 -0500 GetPrerequisites: Define api-ms-win-* files as system libraries (#15691) Suggested-by: Gilles Khouzam diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake index e4018b6..391e7f8 100644 --- a/Modules/GetPrerequisites.cmake +++ b/Modules/GetPrerequisites.cmake @@ -538,7 +538,7 @@ function(gp_resolved_file_type original_file file exepath dirs type_var) string(TOLOWER "$ENV{windir}" windir) file(TO_CMAKE_PATH "${windir}" windir) - if(lower MATCHES "^(${sysroot}/sys(tem|wow)|${windir}/sys(tem|wow)|(.*/)*msvc[^/]+dll)") + if(lower MATCHES "^(api-ms-win-|${sysroot}/sys(tem|wow)|${windir}/sys(tem|wow)|(.*/)*msvc[^/]+dll)") set(is_system 1) endif() @@ -566,7 +566,7 @@ function(gp_resolved_file_type original_file file exepath dirs type_var) string(TOLOWER "${env_windir}" windir) string(TOLOWER "${env_sysdir}" sysroot) - if(lower MATCHES "^(${sysroot}/sys(tem|wow)|${windir}/sys(tem|wow)|(.*/)*msvc[^/]+dll)") + if(lower MATCHES "^(api-ms-win-|${sysroot}/sys(tem|wow)|${windir}/sys(tem|wow)|(.*/)*msvc[^/]+dll)") set(is_system 1) endif() endif() ----------------------------------------------------------------------- Summary of changes: Modules/GetPrerequisites.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 20 13:54:09 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 20 Jan 2016 13:54:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2057-g935a413 Message-ID: <20160120185409.2EC2FE348F@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 935a4133753eb587b9b91a6b78832430ff780680 (commit) via 192c112d45399fd5e35fd89ec71d70320ad81bbf (commit) from c7234a805cc4624901928f08d0507764d7290f18 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=935a4133753eb587b9b91a6b78832430ff780680 commit 935a4133753eb587b9b91a6b78832430ff780680 Merge: c7234a8 192c112 Author: Brad King AuthorDate: Wed Jan 20 13:54:08 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 13:54:08 2016 -0500 Merge topic 'FindPNG-imported-targets' into next 192c112d Revert "FindPNG: Create an imported PNG::PNG target (#15911)" https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=192c112d45399fd5e35fd89ec71d70320ad81bbf commit 192c112d45399fd5e35fd89ec71d70320ad81bbf Author: Brad King AuthorDate: Wed Jan 20 13:53:41 2016 -0500 Commit: Brad King CommitDate: Wed Jan 20 13:53:41 2016 -0500 Revert "FindPNG: Create an imported PNG::PNG target (#15911)" This reverts commit 9451ea5a6a55f0e46ad68cd622e05a130ca0988f. This will be revised after on-list reviews and restored later. diff --git a/Help/release/dev/FindPNG-imported-targets.rst b/Help/release/dev/FindPNG-imported-targets.rst deleted file mode 100644 index e0d0ab1..0000000 --- a/Help/release/dev/FindPNG-imported-targets.rst +++ /dev/null @@ -1,4 +0,0 @@ -FindPNG-imported-targets ------------------------- - -* The :module:`FindPNG` module now provides imported targets. diff --git a/Modules/FindPNG.cmake b/Modules/FindPNG.cmake index 4eb3b86..7cf3f22 100644 --- a/Modules/FindPNG.cmake +++ b/Modules/FindPNG.cmake @@ -2,20 +2,13 @@ # FindPNG # ------- # -# Find libpng, the official reference library for the PNG image format. +# Find the native PNG includes and library # -# Imported targets -# ^^^^^^^^^^^^^^^^ # -# This module defines the following :prop_tgt:`IMPORTED` target: # -# ``PNG::PNG`` -# The libpng library, if found. +# This module searches libpng, the library for working with PNG images. # -# Result variables -# ^^^^^^^^^^^^^^^^ -# -# This module will set the following variables in your project: +# It defines the following variables # # ``PNG_INCLUDE_DIRS`` # where to find png.h, etc. @@ -29,22 +22,19 @@ # ``PNG_VERSION_STRING`` # the version of the PNG library found (since CMake 2.8.8) # -# Obsolete variables -# ^^^^^^^^^^^^^^^^^^ -# -# The following variables may also be set, for backwards compatibility: +# Also defined, but not for general use are # # ``PNG_LIBRARY`` # where to find the PNG library. -# ``PNG_INCLUDE_DIR`` -# where to find the PNG headers (same as PNG_INCLUDE_DIRS) +# +# For backward compatiblity the variable PNG_INCLUDE_DIR is also set. +# It has the same value as PNG_INCLUDE_DIRS. # # Since PNG depends on the ZLib compression library, none of the above # will be defined unless ZLib can be found. #============================================================================= # Copyright 2002-2009 Kitware, Inc. -# Copyright 2016 Raumfeld # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -115,32 +105,6 @@ if(ZLIB_FOUND) endif() endif () - if(NOT TARGET PNG::PNG) - add_library(PNG::PNG UNKNOWN IMPORTED) - set_target_properties(PNG::PNG PROPERTIES - INTERFACE_COMPILE_DEFINITIONS "${PNG_DEFINITIONS}" - INTERFACE_INCLUDE_DIRECTORIES "${PNG_INCLUDE_DIRS}" - INTERFACE_LIBRARIES "${PNG_LIBRARIES}") - if(EXISTS "${PNG_LIBRARY}") - set_target_properties(PNG::PNG PROPERTIES - IMPORTED_LINK_INTERFACE_LANGUAGES "C" - IMPORTED_LOCATION "${PNG_LIBRARY}") - endif() - if(EXISTS "${PNG_LIBRARY_DEBUG}") - set_property(TARGET PNG::PNG APPEND PROPERTY - IMPORTED_CONFIGURATIONS DEBUG) - set_target_properties(PNG::PNG PROPERTIES - IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C" - IMPORTED_LOCATION_DEBUG "${PNG_LIBRARY_DEBUG}") - endif() - if(EXISTS "${PNG_LIBRARY_RELEASE}") - set_property(TARGET PNG::PNG APPEND PROPERTY - IMPORTED_CONFIGURATIONS RELEASE) - set_target_properties(PNG::PNG PROPERTIES - IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C" - IMPORTED_LOCATION_RELEASE "${PNG_LIBRARY_RELEASE}") - endif() - endif() endif () if (PNG_PNG_INCLUDE_DIR AND EXISTS "${PNG_PNG_INCLUDE_DIR}/png.h") diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 3cca77b..043b757 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1375,10 +1375,6 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindOpenSSL) endif() - if(CMake_TEST_FindPNG) - add_subdirectory(FindPNG) - endif() - if(CMake_TEST_FindTIFF) add_subdirectory(FindTIFF) endif() diff --git a/Tests/FindPNG/CMakeLists.txt b/Tests/FindPNG/CMakeLists.txt deleted file mode 100644 index c665b67..0000000 --- a/Tests/FindPNG/CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ -add_test(NAME FindPNG.Test COMMAND - ${CMAKE_CTEST_COMMAND} -C $ - --build-and-test - "${CMake_SOURCE_DIR}/Tests/FindPNG/Test" - "${CMake_BINARY_DIR}/Tests/FindPNG/Test" - ${build_generator_args} - --build-project TestFindPNG - --build-options ${build_options} - --test-command ${CMAKE_CTEST_COMMAND} -V -C $ - ) diff --git a/Tests/FindPNG/Test/CMakeLists.txt b/Tests/FindPNG/Test/CMakeLists.txt deleted file mode 100644 index ad50011..0000000 --- a/Tests/FindPNG/Test/CMakeLists.txt +++ /dev/null @@ -1,16 +0,0 @@ -cmake_minimum_required(VERSION 3.4) -project(TestFindPNG C) -include(CTest) - -find_package(PNG REQUIRED) - -add_definitions(-DCMAKE_EXPECTED_PNG_VERSION="${PNG_VERSION_STRING}") - -add_executable(test_tgt main.c) -target_link_libraries(test_tgt PNG::PNG) -add_test(NAME test_tgt COMMAND test_tgt) - -add_executable(test_var main.c) -target_include_directories(test_var PRIVATE ${PNG_INCLUDE_DIRS}) -target_link_libraries(test_var PRIVATE ${PNG_LIBRARIES}) -add_test(NAME test_var COMMAND test_var) diff --git a/Tests/FindPNG/Test/main.c b/Tests/FindPNG/Test/main.c deleted file mode 100644 index 27e1478..0000000 --- a/Tests/FindPNG/Test/main.c +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include -#include - -int main() -{ - png_uint_32 png_version; - char png_version_string[16]; - - png_version = png_access_version_number (); - - snprintf (png_version_string, 16, "%i.%i.%i", - png_version / 10000, - (png_version % 10000) / 100, - png_version % 100); - - assert (strcmp(png_version_string, CMAKE_EXPECTED_PNG_VERSION) == 0); - - return 0; -} ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindPNG-imported-targets.rst | 4 -- Modules/FindPNG.cmake | 50 ++++--------------------- Tests/CMakeLists.txt | 4 -- Tests/FindPNG/CMakeLists.txt | 10 ----- Tests/FindPNG/Test/CMakeLists.txt | 16 -------- Tests/FindPNG/Test/main.c | 20 ---------- 6 files changed, 7 insertions(+), 97 deletions(-) delete mode 100644 Help/release/dev/FindPNG-imported-targets.rst delete mode 100644 Tests/FindPNG/CMakeLists.txt delete mode 100644 Tests/FindPNG/Test/CMakeLists.txt delete mode 100644 Tests/FindPNG/Test/main.c hooks/post-receive -- CMake From steveire at gmail.com Wed Jan 20 15:36:10 2016 From: steveire at gmail.com (Stephen Kelly) Date: Wed, 20 Jan 2016 15:36:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2063-g3802255 Message-ID: <20160120203611.EA919E38F5@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 38022559e9947adb274890070499c69738d0deaf (commit) via 70788e92641c4cf4c3f20af607cc6e203203b420 (commit) via bd2384f593d0cf2c894ff781c4e5278fff2ac96c (commit) via ad9394f4fdb69f3f3376d7377fac0a22568aed7c (commit) via f9599ed42f5bfda35b98936257423f00e260498f (commit) via 275f2a85b21d781e237dd22252261a0a62d9879b (commit) from 935a4133753eb587b9b91a6b78832430ff780680 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=38022559e9947adb274890070499c69738d0deaf commit 38022559e9947adb274890070499c69738d0deaf Merge: 935a413 70788e9 Author: Stephen Kelly AuthorDate: Wed Jan 20 15:36:08 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 20 15:36:08 2016 -0500 Merge topic 'reduce-allocations' into next 70788e92 Remove temporary allocations when calling cmHasLiteral{Suf,Pre}fix. bd2384f5 Optimize cmMakefile::ExpandVariablesInStringNew. ad9394f4 Remove temporary allocations in cmMacroHelper::InvokeInitialPass. f9599ed4 Remove temporary allocations by extending the lifetime of the retval. 275f2a85 Remove temporary allocations when calling cmGeneratorTarget::GetName. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=70788e92641c4cf4c3f20af607cc6e203203b420 commit 70788e92641c4cf4c3f20af607cc6e203203b420 Author: Milian Wolff AuthorDate: Fri Jan 15 14:55:22 2016 +0100 Commit: Stephen Kelly CommitDate: Wed Jan 20 21:20:55 2016 +0100 Remove temporary allocations when calling cmHasLiteral{Suf,Pre}fix. When the first argument passed is a std::string, we need to take it by const&, otherwise we copy the string and trigger a temporary allocation. This patch removes a few 10k temporary allocations when running the CMake daemon on the KDevelop build dir. This hotspot was found with heaptrack. diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h index ef607d2..54617f3 100644 --- a/Source/cmAlgorithms.h +++ b/Source/cmAlgorithms.h @@ -52,13 +52,13 @@ template size_t cmArraySize(const T (&)[N]) { return N; } template -bool cmHasLiteralPrefix(T str1, const char (&str2)[N]) +bool cmHasLiteralPrefix(const T& str1, const char (&str2)[N]) { return cmHasLiteralPrefixImpl(str1, str2, N - 1); } template -bool cmHasLiteralSuffix(T str1, const char (&str2)[N]) +bool cmHasLiteralSuffix(const T& str1, const char (&str2)[N]) { return cmHasLiteralSuffixImpl(str1, str2, N - 1); } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bd2384f593d0cf2c894ff781c4e5278fff2ac96c commit bd2384f593d0cf2c894ff781c4e5278fff2ac96c Author: Milian Wolff AuthorDate: Fri Jan 15 14:37:25 2016 +0100 Commit: Stephen Kelly CommitDate: Wed Jan 20 21:20:55 2016 +0100 Optimize cmMakefile::ExpandVariablesInStringNew. We can remove the temporary allocations required for the default-constructed t_lookup passed into the openstack by refactoring the code slightly. Furthermore, we use a vector instead of a stack, since the latter is based on a deque which is not required for a heap / lifo structure. This patch removes ~215k allocations. This hotspot was found with heaptrack. diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 1b0a99a..ba0d672 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -2832,10 +2832,9 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( const char* last = in; std::string result; result.reserve(source.size()); - std::stack openstack; + std::vector openstack; bool error = false; bool done = false; - openstack.push(t_lookup()); cmake::MessageType mtype = cmake::LOG; cmState* state = this->GetCMakeInstance()->GetState(); @@ -2846,10 +2845,10 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( switch(inc) { case '}': - if(openstack.size() > 1) + if(!openstack.empty()) { - t_lookup var = openstack.top(); - openstack.pop(); + t_lookup var = openstack.back(); + openstack.pop_back(); result.append(last, in - last); std::string const& lookup = result.substr(var.loc); const char* value = NULL; @@ -2970,7 +2969,7 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( last = start; in = start - 1; lookup.loc = result.size(); - openstack.push(lookup); + openstack.push_back(lookup); } break; } @@ -2997,7 +2996,7 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( result.append("\r"); last = next + 1; } - else if(nextc == ';' && openstack.size() == 1) + else if(nextc == ';' && openstack.empty()) { // Handled in ExpandListArgument; pass the backslash literally. } @@ -3065,7 +3064,7 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( /* FALLTHROUGH */ default: { - if(openstack.size() > 1 && + if(!openstack.empty() && !(isalnum(inc) || inc == '_' || inc == '/' || inc == '.' || inc == '+' || inc == '-')) @@ -3074,7 +3073,7 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( errorstr += inc; result.append(last, in - last); errorstr += "\') in a variable name: " - "'" + result.substr(openstack.top().loc) + "'"; + "'" + result.substr(openstack.back().loc) + "'"; mtype = cmake::FATAL_ERROR; error = true; } @@ -3085,7 +3084,7 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( } while(!error && !done && *++in); // Check for open variable references yet. - if(!error && openstack.size() != 1) + if(!error && !openstack.empty()) { // There's an open variable reference waiting. Policy CMP0010 flags // whether this is an error or not. The new parser now enforces https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ad9394f4fdb69f3f3376d7377fac0a22568aed7c commit ad9394f4fdb69f3f3376d7377fac0a22568aed7c Author: Milian Wolff AuthorDate: Fri Jan 15 14:19:33 2016 +0100 Commit: Stephen Kelly CommitDate: Wed Jan 20 21:20:55 2016 +0100 Remove temporary allocations in cmMacroHelper::InvokeInitialPass. This code used to convert std::string's to raw C strings only to put that back into a std::string. This patch thus removes ~70k temporary allocations when running the CMake daemon on KDevelop. This hotspot was found with heaptrack. diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx index e4026b0..71de7a7 100644 --- a/Source/cmMacroCommand.cxx +++ b/Source/cmMacroCommand.cxx @@ -146,16 +146,14 @@ bool cmMacroHelperCommand::InvokeInitialPass // replace formal arguments for (unsigned int j = 0; j < variables.size(); ++j) { - cmSystemTools::ReplaceString(arg.Value, variables[j].c_str(), - expandedArgs[j].c_str()); + cmSystemTools::ReplaceString(arg.Value, variables[j], + expandedArgs[j]); } // replace argc - cmSystemTools::ReplaceString(arg.Value, "${ARGC}",argcDef.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGC}", argcDef); - cmSystemTools::ReplaceString(arg.Value, "${ARGN}", - expandedArgn.c_str()); - cmSystemTools::ReplaceString(arg.Value, "${ARGV}", - expandedArgv.c_str()); + cmSystemTools::ReplaceString(arg.Value, "${ARGN}", expandedArgn); + cmSystemTools::ReplaceString(arg.Value, "${ARGV}", expandedArgv); // if the current argument of the current function has ${ARGV in it // then try replacing ARGV values @@ -163,8 +161,8 @@ bool cmMacroHelperCommand::InvokeInitialPass { for (unsigned int t = 0; t < expandedArgs.size(); ++t) { - cmSystemTools::ReplaceString(arg.Value, argVs[t].c_str(), - expandedArgs[t].c_str()); + cmSystemTools::ReplaceString(arg.Value, argVs[t], + expandedArgs[t]); } } } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f9599ed42f5bfda35b98936257423f00e260498f commit f9599ed42f5bfda35b98936257423f00e260498f Author: Milian Wolff AuthorDate: Fri Jan 15 14:17:29 2016 +0100 Commit: Stephen Kelly CommitDate: Wed Jan 20 21:20:55 2016 +0100 Remove temporary allocations by extending the lifetime of the retval. See also Herb Sutter's article on the "most important const": http://herbsutter.com/2008/01/01/gotw-88-a-candidate-for-the-most-important-const/ When running the CMake daemon on the KDevelop build dir, this removes some hundreds of thousands of temporary allocations. This hotspot was found with heaptrack. diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 2126c71..b9296c1 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -2198,9 +2198,9 @@ cmGlobalGenerator::FindGeneratorTargetImpl(std::string const& name) const { for (unsigned int i = 0; i < this->LocalGenerators.size(); ++i) { - std::vector tgts = + const std::vector& tgts = this->LocalGenerators[i]->GetGeneratorTargets(); - for (std::vector::iterator it = tgts.begin(); + for (std::vector::const_iterator it = tgts.begin(); it != tgts.end(); ++it) { if ((*it)->GetName() == name) @@ -2217,9 +2217,9 @@ cmGlobalGenerator::FindImportedTargetImpl(std::string const& name) const { for (unsigned int i = 0; i < this->Makefiles.size(); ++i) { - std::vector tgts = + const std::vector& tgts = this->Makefiles[i]->GetOwnedImportedTargets(); - for (std::vector::iterator it = tgts.begin(); + for (std::vector::const_iterator it = tgts.begin(); it != tgts.end(); ++it) { if ((*it)->GetName() == name && (*it)->IsImportedGloballyVisible()) @@ -2236,9 +2236,9 @@ cmGeneratorTarget* cmGlobalGenerator::FindImportedGeneratorTargetImpl( { for (unsigned int i = 0; i < this->LocalGenerators.size(); ++i) { - std::vector tgts = + const std::vector& tgts = this->LocalGenerators[i]->GetImportedGeneratorTargets(); - for (std::vector::iterator it = tgts.begin(); + for (std::vector::const_iterator it = tgts.begin(); it != tgts.end(); ++it) { if ((*it)->IsImportedGloballyVisible() && (*it)->GetName() == name) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=275f2a85b21d781e237dd22252261a0a62d9879b commit 275f2a85b21d781e237dd22252261a0a62d9879b Author: Milian Wolff AuthorDate: Fri Jan 15 14:06:45 2016 +0100 Commit: Stephen Kelly CommitDate: Wed Jan 20 21:20:54 2016 +0100 Remove temporary allocations when calling cmGeneratorTarget::GetName. This happens quite often from within comparisons such as in NamedGeneratorTargetFinder or FindGeneratorTargetImpl. It is the top hotspot of both, number of allocations as well as number of temporary allocations - the majority of calls lead to temporary allocations. In raw numbers, this patch removes ~1E6 temporary allocations of 1.5E6 temporary allocations in total when running the cmake daemon on the KDevelop build dir. That is 2/3 of the total. This hotspot was found with heaptrack. diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index b05fb41..ff12320 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -335,7 +335,7 @@ cmState::TargetType cmGeneratorTarget::GetType() const } //---------------------------------------------------------------------------- -std::string cmGeneratorTarget::GetName() const +const std::string& cmGeneratorTarget::GetName() const { return this->Target->GetName(); } diff --git a/Source/cmGeneratorTarget.h b/Source/cmGeneratorTarget.h index bd23477..d96a32c 100644 --- a/Source/cmGeneratorTarget.h +++ b/Source/cmGeneratorTarget.h @@ -55,7 +55,7 @@ public: GetLinkInformation(const std::string& config) const; cmState::TargetType GetType() const; - std::string GetName() const; + const std::string& GetName() const; std::string GetExportName() const; std::vector GetPropertyKeys() const; ----------------------------------------------------------------------- Summary of changes: Source/cmAlgorithms.h | 4 ++-- Source/cmGeneratorTarget.cxx | 2 +- Source/cmGeneratorTarget.h | 2 +- Source/cmGlobalGenerator.cxx | 12 ++++++------ Source/cmMacroCommand.cxx | 16 +++++++--------- Source/cmMakefile.cxx | 19 +++++++++---------- 6 files changed, 26 insertions(+), 29 deletions(-) hooks/post-receive -- CMake From kwrobot at kitware.com Thu Jan 21 00:01:11 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Thu, 21 Jan 2016 00:01:11 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-875-g750ae8d Message-ID: <20160121050111.E91ABE3731@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 750ae8d5a8890f5d8091105a0b03bee085cc4dff (commit) from d8bced813cdd0c3eb7c2e3e150f513da04ded513 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=750ae8d5a8890f5d8091105a0b03bee085cc4dff commit 750ae8d5a8890f5d8091105a0b03bee085cc4dff Author: Kitware Robot AuthorDate: Thu Jan 21 00:01:04 2016 -0500 Commit: Kitware Robot CommitDate: Thu Jan 21 00:01:04 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 1c3bcf7..06c5a99 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 4) -set(CMake_VERSION_PATCH 20160120) +set(CMake_VERSION_PATCH 20160121) #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 Thu Jan 21 10:39:28 2016 From: ben.boeckel at kitware.com (Ben Boeckel) Date: Thu, 21 Jan 2016 10:39:28 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2065-g1ca1451 Message-ID: <20160121153928.DA9CCE2728@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 1ca14513c5df74ec3d4d5b9febbe1627a6a46cb9 (commit) via 40249bccdf9c66453433da3608da9cc89cbee675 (commit) from 38022559e9947adb274890070499c69738d0deaf (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1ca14513c5df74ec3d4d5b9febbe1627a6a46cb9 commit 1ca14513c5df74ec3d4d5b9febbe1627a6a46cb9 Merge: 3802255 40249bc Author: Ben Boeckel AuthorDate: Thu Jan 21 10:39:27 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 10:39:27 2016 -0500 Merge topic 'fix-pkg_search_module-cache' into next 40249bcc FindPkgConfig: set standard variables in the cache https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=40249bccdf9c66453433da3608da9cc89cbee675 commit 40249bccdf9c66453433da3608da9cc89cbee675 Author: Ben Boeckel AuthorDate: Wed Jan 20 14:38:05 2016 -0500 Commit: Ben Boeckel CommitDate: Thu Jan 21 10:38:30 2016 -0500 FindPkgConfig: set standard variables in the cache Fixes a regression introduced when the code was simplified to use the variable queries. Fixes #15903. Reported-by: Bernd L?rwald diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake index 177e7b8..4f50e38 100644 --- a/Modules/FindPkgConfig.cmake +++ b/Modules/FindPkgConfig.cmake @@ -382,6 +382,9 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma pkg_get_variable("${_pkg_check_prefix}_PREFIX" ${_pkg_check_modules_pkg} "prefix") pkg_get_variable("${_pkg_check_prefix}_INCLUDEDIR" ${_pkg_check_modules_pkg} "includedir") pkg_get_variable("${_pkg_check_prefix}_LIBDIR" ${_pkg_check_modules_pkg} "libdir") + foreach (variable IN ITEMS PREFIX INCLUDEDIR LIBDIR) + _pkgconfig_set("${_pkg_check_modules_pkg}_${variable}" "${${_pkg_check_modules_pkg}_${variable}}") + endforeach () if (NOT ${_is_silent}) message(STATUS " Found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}") diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_cache_variables.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_cache_variables.cmake new file mode 100644 index 0000000..8d8d000 --- /dev/null +++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_cache_variables.cmake @@ -0,0 +1,16 @@ +find_package(PkgConfig REQUIRED) +pkg_check_modules(NCURSES QUIET ncurses) + +if (NCURSES_FOUND) + foreach (variable IN ITEMS PREFIX INCLUDEDIR LIBDIR) + get_property("${variable}" + CACHE "NCURSES_${variable}" + PROPERTY TYPE + SET) + if (NOT ${variable}) + message(FATAL_ERROR "Failed to set cache entry for NCURSES_${variable}") + endif () + endforeach () +else () + message(STATUS "skipping test; ncurses not found") +endif () diff --git a/Tests/RunCMake/FindPkgConfig/RunCMakeTest.cmake b/Tests/RunCMake/FindPkgConfig/RunCMakeTest.cmake index bb04aa2..24089e0 100644 --- a/Tests/RunCMake/FindPkgConfig/RunCMakeTest.cmake +++ b/Tests/RunCMake/FindPkgConfig/RunCMakeTest.cmake @@ -14,4 +14,5 @@ endif() find_package(PkgConfig) if (PKG_CONFIG_FOUND) run_cmake(FindPkgConfig_GET_VARIABLE) + run_cmake(FindPkgConfig_cache_variables) endif () ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 3 +++ .../FindPkgConfig/FindPkgConfig_cache_variables.cmake | 16 ++++++++++++++++ Tests/RunCMake/FindPkgConfig/RunCMakeTest.cmake | 1 + 3 files changed, 20 insertions(+) create mode 100644 Tests/RunCMake/FindPkgConfig/FindPkgConfig_cache_variables.cmake hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 11:25:53 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 11:25:53 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2068-g8ef9c76 Message-ID: <20160121162553.8B7C0E3637@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 8ef9c76b623f3994bcc04c03cacc1f301fb22154 (commit) via 7dbfdddf33ab2d52e471c8533897bc2d7aeb40c9 (commit) via 750ae8d5a8890f5d8091105a0b03bee085cc4dff (commit) from 1ca14513c5df74ec3d4d5b9febbe1627a6a46cb9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8ef9c76b623f3994bcc04c03cacc1f301fb22154 commit 8ef9c76b623f3994bcc04c03cacc1f301fb22154 Merge: 1ca1451 7dbfddd Author: Brad King AuthorDate: Thu Jan 21 11:25:52 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 11:25:52 2016 -0500 Merge topic 'fix-use-generator-target' into next 7dbfdddf cmExportInstallFileGenerator: Fix crash in FindNamespaces 750ae8d5 CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7dbfdddf33ab2d52e471c8533897bc2d7aeb40c9 commit 7dbfdddf33ab2d52e471c8533897bc2d7aeb40c9 Author: Andrey Pokrovskiy AuthorDate: Wed Jan 20 18:29:58 2016 -0800 Commit: Brad King CommitDate: Thu Jan 21 10:53:30 2016 -0500 cmExportInstallFileGenerator: Fix crash in FindNamespaces Refactoring merged by commit 9afbb733ec (Merge topic 'use-generator-target', 2015-10-20) in and around commit 381e7afd (cmExportSet: Store a cmGeneratorTarget, 2015-10-17) forgot to update one place in this method. This leads to a crash in code such as add_library(A a.c) add_library(B b.c) target_link_libraries(B A) install(TARGETS B DESTINATION lib EXPORT ExpB) install(EXPORT ExpB DESTINATION lib/cmake/test) add_executable(C c.c) install(TARGETS C DESTINATION bin EXPORT ExpC) Fix the target name reference to avoid using an unpopulated Target pointer. diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx index b695904..71418e8 100644 --- a/Source/cmExportInstallFileGenerator.cxx +++ b/Source/cmExportInstallFileGenerator.cxx @@ -496,7 +496,7 @@ cmExportInstallFileGenerator bool containsTarget = false; for(unsigned int i=0; isize(); i++) { - if (name == (*targets)[i]->Target->GetName()) + if (name == (*targets)[i]->TargetName) { containsTarget = true; break; ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/cmExportInstallFileGenerator.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 12:51:44 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 12:51:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2070-gaa6eaa6 Message-ID: <20160121175144.4A30AE3719@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 aa6eaa602a3111415db50cc143534f33f30341cc (commit) via d7e863c1c1f4962f589e53b42a87a66cf5ab00b7 (commit) from 8ef9c76b623f3994bcc04c03cacc1f301fb22154 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aa6eaa602a3111415db50cc143534f33f30341cc commit aa6eaa602a3111415db50cc143534f33f30341cc Merge: 8ef9c76 d7e863c Author: Brad King AuthorDate: Thu Jan 21 12:51:42 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 12:51:42 2016 -0500 Merge topic 'vs-win10-sdk' into next d7e863c1 VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d7e863c1c1f4962f589e53b42a87a66cf5ab00b7 commit d7e863c1c1f4962f589e53b42a87a66cf5ab00b7 Author: Brad King AuthorDate: Thu Jan 21 11:44:17 2016 -0500 Commit: Brad King CommitDate: Thu Jan 21 11:50:28 2016 -0500 VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929) Since commit v3.4.0-rc1~5^2~1 (VS: Add support for selecting the Windows 10 SDK, 2015-09-30) the VS 2015 generator requires a Windows 10 SDK to be available when CMAKE_SYSTEM_VERSION specifies Windows 10 (e.g. when building on a Windows 10 host). Howewver, it is possible to install VS 2015 without any Windows 10 SDK. Instead of failing with an error message about the lack of a Windows 10 SDK, simply tolerate this case and use the default Windows 8.1 SDK. Since building for Windows Store still requires the SDK, retain the diagnostic in that case. diff --git a/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst b/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst index 6392849..e0be3a4 100644 --- a/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst +++ b/Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst @@ -8,4 +8,5 @@ specification of a target Windows version to select a corresponding SDK. The :variable:`CMAKE_SYSTEM_VERSION` variable may be set to specify a version. Otherwise CMake computes a default version based on the Windows SDK versions available. The chosen Windows target version number is provided -in ``CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION``. +in ``CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION``. If no Windows 10 SDK +is available this value will be empty. diff --git a/Source/cmGlobalVisualStudio14Generator.cxx b/Source/cmGlobalVisualStudio14Generator.cxx index 83499f1..2f266cd 100644 --- a/Source/cmGlobalVisualStudio14Generator.cxx +++ b/Source/cmGlobalVisualStudio14Generator.cxx @@ -115,7 +115,7 @@ bool cmGlobalVisualStudio14Generator::InitializeWindows(cmMakefile* mf) { if (cmHasLiteralPrefix(this->SystemVersion, "10.0")) { - return this->SelectWindows10SDK(mf); + return this->SelectWindows10SDK(mf, false); } return true; } @@ -143,17 +143,18 @@ bool cmGlobalVisualStudio14Generator::InitializeWindowsStore(cmMakefile* mf) } if (cmHasLiteralPrefix(this->SystemVersion, "10.0")) { - return this->SelectWindows10SDK(mf); + return this->SelectWindows10SDK(mf, true); } return true; } //---------------------------------------------------------------------------- -bool cmGlobalVisualStudio14Generator::SelectWindows10SDK(cmMakefile* mf) +bool cmGlobalVisualStudio14Generator::SelectWindows10SDK(cmMakefile* mf, + bool required) { // Find the default version of the Windows 10 SDK. this->WindowsTargetPlatformVersion = this->GetWindows10SDKVersion(); - if (this->WindowsTargetPlatformVersion.empty()) + if (required && this->WindowsTargetPlatformVersion.empty()) { std::ostringstream e; e << "Could not find an appropriate version of the Windows 10 SDK" diff --git a/Source/cmGlobalVisualStudio14Generator.h b/Source/cmGlobalVisualStudio14Generator.h index 76c15d9..57e6284 100644 --- a/Source/cmGlobalVisualStudio14Generator.h +++ b/Source/cmGlobalVisualStudio14Generator.h @@ -39,7 +39,7 @@ protected: bool IsWindowsStoreToolsetInstalled() const; virtual const char* GetIDEVersion() { return "14.0"; } - virtual bool SelectWindows10SDK(cmMakefile* mf); + virtual bool SelectWindows10SDK(cmMakefile* mf, bool required); // Used to verify that the Desktop toolset for the current generator is // installed on the machine. ----------------------------------------------------------------------- Summary of changes: Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst | 3 ++- Source/cmGlobalVisualStudio14Generator.cxx | 9 +++++---- Source/cmGlobalVisualStudio14Generator.h | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:45:42 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:45:42 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2072-g92b073f Message-ID: <20160121184545.7997BE327A@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 92b073f950b7cb5e20f138fb685bc2145b0833b8 (commit) via f98ae28e3dd633126e7897a593f2d15ba68a75d9 (commit) from aa6eaa602a3111415db50cc143534f33f30341cc (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=92b073f950b7cb5e20f138fb685bc2145b0833b8 commit 92b073f950b7cb5e20f138fb685bc2145b0833b8 Merge: aa6eaa6 f98ae28 Author: Brad King AuthorDate: Thu Jan 21 13:45:41 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:45:41 2016 -0500 Merge topic 'test-fltk_wrap_ui' into next f98ae28e Tests: Cover fltk_wrap_ui on an executable that links libraries https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f98ae28e3dd633126e7897a593f2d15ba68a75d9 commit f98ae28e3dd633126e7897a593f2d15ba68a75d9 Author: Brad King AuthorDate: Thu Jan 21 13:42:46 2016 -0500 Commit: Brad King CommitDate: Thu Jan 21 13:42:46 2016 -0500 Tests: Cover fltk_wrap_ui on an executable that links libraries CMake 3.4 may crash on this case. The problem seems to have been fixed since then, but keep it working by adding a test case now. Reported-by: Gonzalo Garramu?o diff --git a/Tests/Wrapping/CMakeLists.txt b/Tests/Wrapping/CMakeLists.txt index cbb28a1..aca36bc 100644 --- a/Tests/Wrapping/CMakeLists.txt +++ b/Tests/Wrapping/CMakeLists.txt @@ -85,16 +85,18 @@ endif () # Since FLTK_FLUID_EXE is supposed to create a .cxx/.h from a .fl/.fld, # create an empty one so that the dependencies can be met. # -set (FLTK_SRCS - fltk1.fl - ) add_executable(fakefluid fakefluid.cxx) set (FLTK_WRAP_UI "On") set (FLTK_FLUID_EXECUTABLE fakefluid) -fltk_wrap_ui (wraplibFLTK ${FLTK_SRCS}) +fltk_wrap_ui (wraplibFLTK fltk1.fl) add_library(wraplibFLTK ${wraplibFLTK_FLTK_UI_SRCS}) add_dependencies(wraplibFLTK fakefluid) add_dependencies(fakefluid Wrap) +fltk_wrap_ui (wrapFLTK fltk2.fl) +add_executable(wrapFLTK wrapFLTK.c ${wrapFLTK_FLTK_UI_SRCS}) +target_link_libraries(wrapFLTK wraplibFLTK) +add_dependencies(wrapFLTK fakefluid) + # # Mangled Mesa # diff --git a/Tests/Wrapping/fltk2.fl b/Tests/Wrapping/fltk2.fl new file mode 100644 index 0000000..e69de29 diff --git a/Tests/Wrapping/wrapFLTK.c b/Tests/Wrapping/wrapFLTK.c new file mode 100644 index 0000000..78f2de1 --- /dev/null +++ b/Tests/Wrapping/wrapFLTK.c @@ -0,0 +1 @@ +int main(void) { return 0; } ----------------------------------------------------------------------- Summary of changes: Tests/Wrapping/CMakeLists.txt | 10 ++++++---- .../IntelVSImplicitPath/hello.f => Tests/Wrapping/fltk2.fl | 0 .../LinkInterfaceLoop/main.c => Wrapping/wrapFLTK.c} | 0 3 files changed, 6 insertions(+), 4 deletions(-) copy Modules/IntelVSImplicitPath/hello.f => Tests/Wrapping/fltk2.fl (100%) copy Tests/{CMakeOnly/LinkInterfaceLoop/main.c => Wrapping/wrapFLTK.c} (100%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:55:43 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:55:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-877-g1846765 Message-ID: <20160121185543.7ABE0E37A3@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 184676532c8192a520b4db8380efbddc13272289 (commit) via c8daac3556bc4ef7b39e0e632ead55d566e927cc (commit) from 750ae8d5a8890f5d8091105a0b03bee085cc4dff (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=184676532c8192a520b4db8380efbddc13272289 commit 184676532c8192a520b4db8380efbddc13272289 Merge: 750ae8d c8daac3 Author: Brad King AuthorDate: Thu Jan 21 13:55:41 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:55:41 2016 -0500 Merge topic 'GetPrerequisites-ms-ucrt' c8daac35 GetPrerequisites: Define api-ms-win-* files as system libraries (#15691) ----------------------------------------------------------------------- Summary of changes: Modules/GetPrerequisites.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:55:46 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:55:46 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-880-g071c94e Message-ID: <20160121185546.1B805E32DF@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 071c94eeac9811c8dbe7b6e627899051f1a18ec4 (commit) via ec00e89e83eeb91633affd662870b7a6955dbf5a (commit) via 5d739a3c843c95aec6c5c8df4d7e87e606c0c8ea (commit) from 184676532c8192a520b4db8380efbddc13272289 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=071c94eeac9811c8dbe7b6e627899051f1a18ec4 commit 071c94eeac9811c8dbe7b6e627899051f1a18ec4 Merge: 1846765 ec00e89 Author: Brad King AuthorDate: Thu Jan 21 13:55:44 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:55:44 2016 -0500 Merge topic 'ExternalProject-ctest-config' ec00e89e ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators 5d739a3c ExternalProject: Simplify `cmake --build` configuration passing ----------------------------------------------------------------------- Summary of changes: Modules/ExternalProject.cmake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:55:48 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:55:48 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-882-g563a6c7 Message-ID: <20160121185548.F24D1E37C1@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 563a6c7be09c73bdd7e0ee7b0c52dd9bbc20c50a (commit) via 1787269ef3c476ee1176c92c54e5b22f9cb7f3fe (commit) from 071c94eeac9811c8dbe7b6e627899051f1a18ec4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=563a6c7be09c73bdd7e0ee7b0c52dd9bbc20c50a commit 563a6c7be09c73bdd7e0ee7b0c52dd9bbc20c50a Merge: 071c94e 1787269 Author: Brad King AuthorDate: Thu Jan 21 13:55:47 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:55:47 2016 -0500 Merge topic 'cmake-E-time-quoting' 1787269e cmake: Fix `-E time` argument passing to child ----------------------------------------------------------------------- Summary of changes: Help/release/dev/cmake-E-time-quoting.rst | 7 +++++++ Source/cmcmd.cxx | 4 ++-- .../E_time-no-arg-result.txt} | 0 .../{E-no-arg-stderr.txt => E_time-no-arg-stderr.txt} | 0 Tests/RunCMake/CommandLine/E_time-stdout.txt | 3 +++ Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 3 +++ 6 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 Help/release/dev/cmake-E-time-quoting.rst copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => CommandLine/E_time-no-arg-result.txt} (100%) copy Tests/RunCMake/CommandLine/{E-no-arg-stderr.txt => E_time-no-arg-stderr.txt} (100%) create mode 100644 Tests/RunCMake/CommandLine/E_time-stdout.txt hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:55:52 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:55:52 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-884-gaaf06f2 Message-ID: <20160121185552.2EFE6E3553@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 aaf06f2b0f4ce4085e2bf1c60ffc63065968a9c6 (commit) via f9e45ab9d412b08ded8a11ff1f4f0ef90e10358c (commit) from 563a6c7be09c73bdd7e0ee7b0c52dd9bbc20c50a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aaf06f2b0f4ce4085e2bf1c60ffc63065968a9c6 commit aaf06f2b0f4ce4085e2bf1c60ffc63065968a9c6 Merge: 563a6c7 f9e45ab Author: Brad King AuthorDate: Thu Jan 21 13:55:50 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:55:50 2016 -0500 Merge topic 'add-FindXalanC' f9e45ab9 FindXalanC: New module to find the Apache Xalan-C++ library ----------------------------------------------------------------------- Summary of changes: Help/manual/cmake-modules.7.rst | 1 + Help/module/FindXalanC.rst | 1 + Help/release/dev/FindXalanC.rst | 5 + Modules/FindXalanC.cmake | 162 +++++++++++++++++++++++ Tests/CMakeLists.txt | 4 + Tests/{FindBoost => FindXalanC}/CMakeLists.txt | 8 +- Tests/FindXalanC/Test/CMakeLists.txt | 17 +++ Tests/{FindXercesC => FindXalanC}/Test/main.cxx | 3 + 8 files changed, 197 insertions(+), 4 deletions(-) create mode 100644 Help/module/FindXalanC.rst create mode 100644 Help/release/dev/FindXalanC.rst create mode 100644 Modules/FindXalanC.cmake copy Tests/{FindBoost => FindXalanC}/CMakeLists.txt (54%) create mode 100644 Tests/FindXalanC/Test/CMakeLists.txt copy Tests/{FindXercesC => FindXalanC}/Test/main.cxx (50%) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:55:54 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:55:54 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-890-g3e7794a Message-ID: <20160121185554.D4640E34A0@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 3e7794a2e6297e8ed3e114e92ea1480f75aa38b1 (commit) via 70788e92641c4cf4c3f20af607cc6e203203b420 (commit) via bd2384f593d0cf2c894ff781c4e5278fff2ac96c (commit) via ad9394f4fdb69f3f3376d7377fac0a22568aed7c (commit) via f9599ed42f5bfda35b98936257423f00e260498f (commit) via 275f2a85b21d781e237dd22252261a0a62d9879b (commit) from aaf06f2b0f4ce4085e2bf1c60ffc63065968a9c6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3e7794a2e6297e8ed3e114e92ea1480f75aa38b1 commit 3e7794a2e6297e8ed3e114e92ea1480f75aa38b1 Merge: aaf06f2 70788e9 Author: Brad King AuthorDate: Thu Jan 21 13:55:53 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:55:53 2016 -0500 Merge topic 'reduce-allocations' 70788e92 Remove temporary allocations when calling cmHasLiteral{Suf,Pre}fix. bd2384f5 Optimize cmMakefile::ExpandVariablesInStringNew. ad9394f4 Remove temporary allocations in cmMacroHelper::InvokeInitialPass. f9599ed4 Remove temporary allocations by extending the lifetime of the retval. 275f2a85 Remove temporary allocations when calling cmGeneratorTarget::GetName. ----------------------------------------------------------------------- Summary of changes: Source/cmAlgorithms.h | 4 ++-- Source/cmGeneratorTarget.cxx | 2 +- Source/cmGeneratorTarget.h | 2 +- Source/cmGlobalGenerator.cxx | 12 ++++++------ Source/cmMacroCommand.cxx | 16 +++++++--------- Source/cmMakefile.cxx | 19 +++++++++---------- 6 files changed, 26 insertions(+), 29 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:56:09 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:56:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2078-gf559b68 Message-ID: <20160121185609.771CAE37AD@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 f559b68db2e472b028d7e04f7b864b09fcfb4479 (commit) via 3e7794a2e6297e8ed3e114e92ea1480f75aa38b1 (commit) via aaf06f2b0f4ce4085e2bf1c60ffc63065968a9c6 (commit) via 563a6c7be09c73bdd7e0ee7b0c52dd9bbc20c50a (commit) via 071c94eeac9811c8dbe7b6e627899051f1a18ec4 (commit) via 184676532c8192a520b4db8380efbddc13272289 (commit) from 92b073f950b7cb5e20f138fb685bc2145b0833b8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f559b68db2e472b028d7e04f7b864b09fcfb4479 commit f559b68db2e472b028d7e04f7b864b09fcfb4479 Merge: 92b073f 3e7794a Author: Brad King AuthorDate: Thu Jan 21 13:56:01 2016 -0500 Commit: Brad King CommitDate: Thu Jan 21 13:56:01 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Thu Jan 21 13:58:56 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 21 Jan 2016 13:58:56 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2080-gd194d14 Message-ID: <20160121185856.1C335E3868@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 d194d14ba6d2d685ce50a01830f00f07f67650b7 (commit) via 9b08c6233052fa1c3d393ee474c874f997491f7b (commit) from f559b68db2e472b028d7e04f7b864b09fcfb4479 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d194d14ba6d2d685ce50a01830f00f07f67650b7 commit d194d14ba6d2d685ce50a01830f00f07f67650b7 Merge: f559b68 9b08c62 Author: Brad King AuthorDate: Thu Jan 21 13:58:54 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 21 13:58:54 2016 -0500 Merge topic 'FindPNG-imported-targets' into next 9b08c623 FindPNG: Create an imported PNG::PNG target (#15911) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9b08c6233052fa1c3d393ee474c874f997491f7b commit 9b08c6233052fa1c3d393ee474c874f997491f7b Author: Sam Thursfield AuthorDate: Tue Jan 19 17:43:05 2016 +0000 Commit: Brad King CommitDate: Thu Jan 21 13:58:15 2016 -0500 FindPNG: Create an imported PNG::PNG target (#15911) Imported targets are now the recommended way of dealing with external library dependencies. Add one for FindPNG and update documentation accordingly. Also add a test case activated by CMake_TEST_FindPNG. diff --git a/Help/release/dev/FindPNG-imported-targets.rst b/Help/release/dev/FindPNG-imported-targets.rst new file mode 100644 index 0000000..e0d0ab1 --- /dev/null +++ b/Help/release/dev/FindPNG-imported-targets.rst @@ -0,0 +1,4 @@ +FindPNG-imported-targets +------------------------ + +* The :module:`FindPNG` module now provides imported targets. diff --git a/Modules/FindPNG.cmake b/Modules/FindPNG.cmake index 7cf3f22..cae41ac 100644 --- a/Modules/FindPNG.cmake +++ b/Modules/FindPNG.cmake @@ -2,13 +2,20 @@ # FindPNG # ------- # -# Find the native PNG includes and library +# Find libpng, the official reference library for the PNG image format. # +# Imported targets +# ^^^^^^^^^^^^^^^^ # +# This module defines the following :prop_tgt:`IMPORTED` target: # -# This module searches libpng, the library for working with PNG images. +# ``PNG::PNG`` +# The libpng library, if found. # -# It defines the following variables +# Result variables +# ^^^^^^^^^^^^^^^^ +# +# This module will set the following variables in your project: # # ``PNG_INCLUDE_DIRS`` # where to find png.h, etc. @@ -22,19 +29,22 @@ # ``PNG_VERSION_STRING`` # the version of the PNG library found (since CMake 2.8.8) # -# Also defined, but not for general use are +# Obsolete variables +# ^^^^^^^^^^^^^^^^^^ +# +# The following variables may also be set, for backwards compatibility: # # ``PNG_LIBRARY`` # where to find the PNG library. -# -# For backward compatiblity the variable PNG_INCLUDE_DIR is also set. -# It has the same value as PNG_INCLUDE_DIRS. +# ``PNG_INCLUDE_DIR`` +# where to find the PNG headers (same as PNG_INCLUDE_DIRS) # # Since PNG depends on the ZLib compression library, none of the above # will be defined unless ZLib can be found. #============================================================================= # Copyright 2002-2009 Kitware, Inc. +# Copyright 2016 Raumfeld # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -105,6 +115,32 @@ if(ZLIB_FOUND) endif() endif () + if(NOT TARGET PNG::PNG) + add_library(PNG::PNG UNKNOWN IMPORTED) + set_target_properties(PNG::PNG PROPERTIES + INTERFACE_COMPILE_DEFINITIONS "${PNG_DEFINITIONS}" + INTERFACE_INCLUDE_DIRECTORIES "${PNG_INCLUDE_DIRS}" + INTERFACE_LINK_LIBRARIES ZLIB::ZLIB) + if(EXISTS "${PNG_LIBRARY}") + set_target_properties(PNG::PNG PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "C" + IMPORTED_LOCATION "${PNG_LIBRARY}") + endif() + if(EXISTS "${PNG_LIBRARY_DEBUG}") + set_property(TARGET PNG::PNG APPEND PROPERTY + IMPORTED_CONFIGURATIONS DEBUG) + set_target_properties(PNG::PNG PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C" + IMPORTED_LOCATION_DEBUG "${PNG_LIBRARY_DEBUG}") + endif() + if(EXISTS "${PNG_LIBRARY_RELEASE}") + set_property(TARGET PNG::PNG APPEND PROPERTY + IMPORTED_CONFIGURATIONS RELEASE) + set_target_properties(PNG::PNG PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C" + IMPORTED_LOCATION_RELEASE "${PNG_LIBRARY_RELEASE}") + endif() + endif() endif () if (PNG_PNG_INCLUDE_DIR AND EXISTS "${PNG_PNG_INCLUDE_DIR}/png.h") diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 043b757..3cca77b 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1375,6 +1375,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindOpenSSL) endif() + if(CMake_TEST_FindPNG) + add_subdirectory(FindPNG) + endif() + if(CMake_TEST_FindTIFF) add_subdirectory(FindTIFF) endif() diff --git a/Tests/FindPNG/CMakeLists.txt b/Tests/FindPNG/CMakeLists.txt new file mode 100644 index 0000000..c665b67 --- /dev/null +++ b/Tests/FindPNG/CMakeLists.txt @@ -0,0 +1,10 @@ +add_test(NAME FindPNG.Test COMMAND + ${CMAKE_CTEST_COMMAND} -C $ + --build-and-test + "${CMake_SOURCE_DIR}/Tests/FindPNG/Test" + "${CMake_BINARY_DIR}/Tests/FindPNG/Test" + ${build_generator_args} + --build-project TestFindPNG + --build-options ${build_options} + --test-command ${CMAKE_CTEST_COMMAND} -V -C $ + ) diff --git a/Tests/FindPNG/Test/CMakeLists.txt b/Tests/FindPNG/Test/CMakeLists.txt new file mode 100644 index 0000000..ad50011 --- /dev/null +++ b/Tests/FindPNG/Test/CMakeLists.txt @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 3.4) +project(TestFindPNG C) +include(CTest) + +find_package(PNG REQUIRED) + +add_definitions(-DCMAKE_EXPECTED_PNG_VERSION="${PNG_VERSION_STRING}") + +add_executable(test_tgt main.c) +target_link_libraries(test_tgt PNG::PNG) +add_test(NAME test_tgt COMMAND test_tgt) + +add_executable(test_var main.c) +target_include_directories(test_var PRIVATE ${PNG_INCLUDE_DIRS}) +target_link_libraries(test_var PRIVATE ${PNG_LIBRARIES}) +add_test(NAME test_var COMMAND test_var) diff --git a/Tests/FindPNG/Test/main.c b/Tests/FindPNG/Test/main.c new file mode 100644 index 0000000..27e1478 --- /dev/null +++ b/Tests/FindPNG/Test/main.c @@ -0,0 +1,20 @@ +#include +#include +#include + +int main() +{ + png_uint_32 png_version; + char png_version_string[16]; + + png_version = png_access_version_number (); + + snprintf (png_version_string, 16, "%i.%i.%i", + png_version / 10000, + (png_version % 10000) / 100, + png_version % 100); + + assert (strcmp(png_version_string, CMAKE_EXPECTED_PNG_VERSION) == 0); + + return 0; +} ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindPNG-imported-targets.rst | 4 ++ Modules/FindPNG.cmake | 50 +++++++++++++++++++++---- Tests/CMakeLists.txt | 4 ++ Tests/{FindTIFF => FindPNG}/CMakeLists.txt | 8 ++-- Tests/FindPNG/Test/CMakeLists.txt | 16 ++++++++ Tests/FindPNG/Test/main.c | 20 ++++++++++ 6 files changed, 91 insertions(+), 11 deletions(-) create mode 100644 Help/release/dev/FindPNG-imported-targets.rst copy Tests/{FindTIFF => FindPNG}/CMakeLists.txt (55%) create mode 100644 Tests/FindPNG/Test/CMakeLists.txt create mode 100644 Tests/FindPNG/Test/main.c hooks/post-receive -- CMake From kwrobot at kitware.com Fri Jan 22 00:01:10 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Fri, 22 Jan 2016 00:01:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-891-gf81ccc5 Message-ID: <20160122050111.B41D2E368C@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 f81ccc575331b4e184622b192deac2865931de19 (commit) from 3e7794a2e6297e8ed3e114e92ea1480f75aa38b1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f81ccc575331b4e184622b192deac2865931de19 commit f81ccc575331b4e184622b192deac2865931de19 Author: Kitware Robot AuthorDate: Fri Jan 22 00:01:03 2016 -0500 Commit: Kitware Robot CommitDate: Fri Jan 22 00:01:03 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 06c5a99..58d6bee 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 4) -set(CMake_VERSION_PATCH 20160121) +set(CMake_VERSION_PATCH 20160122) #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 Jan 22 08:36:16 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 22 Jan 2016 08:36:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2082-g54f9e33 Message-ID: <20160122133616.AD703E3909@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 54f9e335ddf7cd14e89f63eb688ad01c56b1a4fa (commit) via b94e855d5fbf5cae975034ce5d7836425c8ad87f (commit) from d194d14ba6d2d685ce50a01830f00f07f67650b7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=54f9e335ddf7cd14e89f63eb688ad01c56b1a4fa commit 54f9e335ddf7cd14e89f63eb688ad01c56b1a4fa Merge: d194d14 b94e855 Author: Brad King AuthorDate: Fri Jan 22 08:36:15 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 22 08:36:15 2016 -0500 Merge topic 'FindBoost-1.61' into next b94e855d FindBoost: Add support for Boost 1.61 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b94e855d5fbf5cae975034ce5d7836425c8ad87f commit b94e855d5fbf5cae975034ce5d7836425c8ad87f Author: Sergei Nikulov AuthorDate: Fri Jan 22 10:50:25 2016 +0300 Commit: Brad King CommitDate: Fri Jan 22 08:35:04 2016 -0500 FindBoost: Add support for Boost 1.61 diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake index edfed8e..c3058ea 100644 --- a/Modules/FindBoost.cmake +++ b/Modules/FindBoost.cmake @@ -707,7 +707,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret) set(_Boost_TIMER_DEPENDENCIES chrono system) set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic) set(_Boost_WSERIALIZATION_DEPENDENCIES serialization) - elseif(NOT Boost_VERSION VERSION_LESS 106000 AND Boost_VERSION VERSION_LESS 106100) + elseif(NOT Boost_VERSION VERSION_LESS 106000 AND Boost_VERSION VERSION_LESS 106200) set(_Boost_CHRONO_DEPENDENCIES system) set(_Boost_COROUTINE_DEPENDENCIES context system) set(_Boost_FILESYSTEM_DEPENDENCIES system) @@ -821,7 +821,7 @@ else() # information in _Boost_COMPONENT_DEPENDENCIES. See the # instructions at the top of _Boost_COMPONENT_DEPENDENCIES. set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS} - "1.60.0" "1.60" + "1.61.0" "1.61" "1.60.0" "1.60" "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55" "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51" "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47" "1.46.1" ----------------------------------------------------------------------- Summary of changes: Modules/FindBoost.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 22 09:25:29 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 22 Jan 2016 09:25:29 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-893-g666487a Message-ID: <20160122142529.AB7EAE3717@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 666487a402310ea69ac20b1d6dceb20746d16f6a (commit) via 40249bccdf9c66453433da3608da9cc89cbee675 (commit) from f81ccc575331b4e184622b192deac2865931de19 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=666487a402310ea69ac20b1d6dceb20746d16f6a commit 666487a402310ea69ac20b1d6dceb20746d16f6a Merge: f81ccc5 40249bc Author: Brad King AuthorDate: Fri Jan 22 09:25:27 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 22 09:25:27 2016 -0500 Merge topic 'fix-pkg_search_module-cache' 40249bcc FindPkgConfig: set standard variables in the cache ----------------------------------------------------------------------- Summary of changes: Modules/FindPkgConfig.cmake | 3 +++ .../FindPkgConfig/FindPkgConfig_cache_variables.cmake | 16 ++++++++++++++++ Tests/RunCMake/FindPkgConfig/RunCMakeTest.cmake | 1 + 3 files changed, 20 insertions(+) create mode 100644 Tests/RunCMake/FindPkgConfig/FindPkgConfig_cache_variables.cmake hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 22 09:25:32 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 22 Jan 2016 09:25:32 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-895-gdcf977e Message-ID: <20160122142532.5ED29E371E@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 dcf977ea1a97f41fe19a871235dc75e85891e478 (commit) via 7dbfdddf33ab2d52e471c8533897bc2d7aeb40c9 (commit) from 666487a402310ea69ac20b1d6dceb20746d16f6a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dcf977ea1a97f41fe19a871235dc75e85891e478 commit dcf977ea1a97f41fe19a871235dc75e85891e478 Merge: 666487a 7dbfddd Author: Brad King AuthorDate: Fri Jan 22 09:25:30 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 22 09:25:30 2016 -0500 Merge topic 'fix-use-generator-target' 7dbfdddf cmExportInstallFileGenerator: Fix crash in FindNamespaces ----------------------------------------------------------------------- Summary of changes: Source/cmExportInstallFileGenerator.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 22 09:25:35 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 22 Jan 2016 09:25:35 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-897-gddb09ec Message-ID: <20160122142535.95CD7E3757@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 ddb09ec8f91e7215d867c83d9229d3558bf2c166 (commit) via 9b08c6233052fa1c3d393ee474c874f997491f7b (commit) from dcf977ea1a97f41fe19a871235dc75e85891e478 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ddb09ec8f91e7215d867c83d9229d3558bf2c166 commit ddb09ec8f91e7215d867c83d9229d3558bf2c166 Merge: dcf977e 9b08c62 Author: Brad King AuthorDate: Fri Jan 22 09:25:33 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 22 09:25:33 2016 -0500 Merge topic 'FindPNG-imported-targets' 9b08c623 FindPNG: Create an imported PNG::PNG target (#15911) ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindPNG-imported-targets.rst | 4 ++ Modules/FindPNG.cmake | 50 +++++++++++++++++++++---- Tests/CMakeLists.txt | 4 ++ Tests/{FindTIFF => FindPNG}/CMakeLists.txt | 8 ++-- Tests/FindPNG/Test/CMakeLists.txt | 16 ++++++++ Tests/FindPNG/Test/main.c | 20 ++++++++++ 6 files changed, 91 insertions(+), 11 deletions(-) create mode 100644 Help/release/dev/FindPNG-imported-targets.rst copy Tests/{FindTIFF => FindPNG}/CMakeLists.txt (55%) create mode 100644 Tests/FindPNG/Test/CMakeLists.txt create mode 100644 Tests/FindPNG/Test/main.c hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 22 09:25:38 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 22 Jan 2016 09:25:38 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-899-g1d9c539 Message-ID: <20160122142538.4D9EDE3757@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 1d9c539cf72e29014e1d03cdede0cd15e64426d7 (commit) via f98ae28e3dd633126e7897a593f2d15ba68a75d9 (commit) from ddb09ec8f91e7215d867c83d9229d3558bf2c166 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1d9c539cf72e29014e1d03cdede0cd15e64426d7 commit 1d9c539cf72e29014e1d03cdede0cd15e64426d7 Merge: ddb09ec f98ae28 Author: Brad King AuthorDate: Fri Jan 22 09:25:36 2016 -0500 Commit: CMake Topic Stage CommitDate: Fri Jan 22 09:25:36 2016 -0500 Merge topic 'test-fltk_wrap_ui' f98ae28e Tests: Cover fltk_wrap_ui on an executable that links libraries ----------------------------------------------------------------------- Summary of changes: Tests/Wrapping/CMakeLists.txt | 10 ++++++---- .../IntelVSImplicitPath/hello.f => Tests/Wrapping/fltk2.fl | 0 .../LinkInterfaceLoop/main.c => Wrapping/wrapFLTK.c} | 0 3 files changed, 6 insertions(+), 4 deletions(-) copy Modules/IntelVSImplicitPath/hello.f => Tests/Wrapping/fltk2.fl (100%) copy Tests/{CMakeOnly/LinkInterfaceLoop/main.c => Wrapping/wrapFLTK.c} (100%) hooks/post-receive -- CMake From brad.king at kitware.com Fri Jan 22 09:26:09 2016 From: brad.king at kitware.com (Brad King) Date: Fri, 22 Jan 2016 09:26:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2088-ge9ac370 Message-ID: <20160122142609.5131AE377B@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 e9ac370789a1020b85e7a928ffd97673cf79afad (commit) via 1d9c539cf72e29014e1d03cdede0cd15e64426d7 (commit) via ddb09ec8f91e7215d867c83d9229d3558bf2c166 (commit) via dcf977ea1a97f41fe19a871235dc75e85891e478 (commit) via 666487a402310ea69ac20b1d6dceb20746d16f6a (commit) via f81ccc575331b4e184622b192deac2865931de19 (commit) from 54f9e335ddf7cd14e89f63eb688ad01c56b1a4fa (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e9ac370789a1020b85e7a928ffd97673cf79afad commit e9ac370789a1020b85e7a928ffd97673cf79afad Merge: 54f9e33 1d9c539 Author: Brad King AuthorDate: Fri Jan 22 09:26:02 2016 -0500 Commit: Brad King CommitDate: Fri Jan 22 09:26:02 2016 -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 kwrobot at kitware.com Sat Jan 23 00:01:08 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sat, 23 Jan 2016 00:01:08 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-900-g4a3fa1e Message-ID: <20160123050109.67B3AE36AC@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 4a3fa1e8a09ef1fa674d36c1188bb73aed0de231 (commit) from 1d9c539cf72e29014e1d03cdede0cd15e64426d7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4a3fa1e8a09ef1fa674d36c1188bb73aed0de231 commit 4a3fa1e8a09ef1fa674d36c1188bb73aed0de231 Author: Kitware Robot AuthorDate: Sat Jan 23 00:01:04 2016 -0500 Commit: Kitware Robot CommitDate: Sat Jan 23 00:01:04 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 58d6bee..72ac6eb 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 4) -set(CMake_VERSION_PATCH 20160122) +set(CMake_VERSION_PATCH 20160123) #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 Sun Jan 24 00:01:05 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 24 Jan 2016 00:01:05 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-901-g490483b Message-ID: <20160124050105.BF23FE38E0@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 490483b947fe3fcefc73af3e899b47dcf0eddbde (commit) from 4a3fa1e8a09ef1fa674d36c1188bb73aed0de231 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=490483b947fe3fcefc73af3e899b47dcf0eddbde commit 490483b947fe3fcefc73af3e899b47dcf0eddbde Author: Kitware Robot AuthorDate: Sun Jan 24 00:01:03 2016 -0500 Commit: Kitware Robot CommitDate: Sun Jan 24 00:01:03 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 72ac6eb..6453278 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 4) -set(CMake_VERSION_PATCH 20160123) +set(CMake_VERSION_PATCH 20160124) #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 Jan 25 00:01:06 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Mon, 25 Jan 2016 00:01:06 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-902-gb9dadca Message-ID: <20160125050106.53856E4733@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 b9dadca90b2b10a71ffca87a308dcbfef5058f3c (commit) from 490483b947fe3fcefc73af3e899b47dcf0eddbde (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b9dadca90b2b10a71ffca87a308dcbfef5058f3c commit b9dadca90b2b10a71ffca87a308dcbfef5058f3c Author: Kitware Robot AuthorDate: Mon Jan 25 00:01:03 2016 -0500 Commit: Kitware Robot CommitDate: Mon Jan 25 00:01:03 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 6453278..87792d1 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 4) -set(CMake_VERSION_PATCH 20160124) +set(CMake_VERSION_PATCH 20160125) #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 Mon Jan 25 09:25:43 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:25:43 -0500 (EST) Subject: [Cmake-commits] CMake branch, dashboard, updated. cb56d71de1bd40e06db17cb0266d1fbeabea75a3 Message-ID: <20160125142543.377A5E488D@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, dashboard has been updated via cb56d71de1bd40e06db17cb0266d1fbeabea75a3 (commit) via 3fc78bb9738930ed6eed5f2be3eeb5e0cecc1b0f (commit) via aa516480fd7b593abbbbb004be7037b114d4191a (commit) via 3159d3f588e2842e3d0eb85b410c985203423e2d (commit) via 99d55e896516cdadafd6b926921cdf59c2e09fa3 (commit) from 182b93635464ee35100522dec811abb76b55c742 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cb56d71de1bd40e06db17cb0266d1fbeabea75a3 commit cb56d71de1bd40e06db17cb0266d1fbeabea75a3 Author: Brad King AuthorDate: Thu Jan 21 10:27:11 2016 -0500 Commit: Brad King CommitDate: Thu Jan 21 10:30:37 2016 -0500 cmake_common: Fix use of ctest_empty_binary_directory Make the build directory after using ctest_empty_binary_directory because the command reports an error if asked to delete a directory that exists but does not contain `CMakeCache.txt`. Reported-by: Raffi Enficiaud diff --git a/cmake_common.cmake b/cmake_common.cmake index 322424b..ff91ad1 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -313,11 +313,12 @@ ${dashboard_cache} endmacro(write_cache) # Start with a fresh build tree. -file(MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") -if(NOT "${CTEST_SOURCE_DIRECTORY}" STREQUAL "${CTEST_BINARY_DIRECTORY}") +if(EXISTS "${CTEST_BINARY_DIRECTORY}" AND + NOT "${CTEST_SOURCE_DIRECTORY}" STREQUAL "${CTEST_BINARY_DIRECTORY}") message("Clearing build tree...") ctest_empty_binary_directory(${CTEST_BINARY_DIRECTORY}) endif() +file(MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") set(dashboard_continuous 0) if("${dashboard_model}" STREQUAL "Continuous") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3fc78bb9738930ed6eed5f2be3eeb5e0cecc1b0f commit 3fc78bb9738930ed6eed5f2be3eeb5e0cecc1b0f Author: Brad King AuthorDate: Fri Aug 28 09:08:52 2015 -0400 Commit: Brad King CommitDate: Thu Jan 21 10:30:05 2016 -0500 cmake_common: Use CTEST_TEST_ARGS for ctest_memcheck() call The ctest_memcheck step should run the same tests as the ctest_test step. diff --git a/cmake_common.cmake b/cmake_common.cmake index 9af724a..322424b 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -384,7 +384,7 @@ while(NOT dashboard_done) ctest_coverage() endif() if(dashboard_do_memcheck) - ctest_memcheck() + ctest_memcheck(${CTEST_TEST_ARGS}) endif() if(NOT dashboard_no_submit) ctest_submit() https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aa516480fd7b593abbbbb004be7037b114d4191a commit aa516480fd7b593abbbbb004be7037b114d4191a Author: Brad King AuthorDate: Tue May 20 11:44:07 2014 -0400 Commit: Brad King CommitDate: Tue May 20 11:44:07 2014 -0400 cmake_common: Enable launchers and make program for Ninja generator diff --git a/cmake_common.cmake b/cmake_common.cmake index 7b9d91b..9af724a 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -116,8 +116,8 @@ endif() if(dashboard_bootstrap) # Launchers do not work during bootstrap: no ctest available. set(CTEST_USE_LAUNCHERS 0) -elseif(NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make") - # Launchers work only with Makefile generators. +elseif(NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja") + # Launchers work only with Makefile and Ninja generators. set(CTEST_USE_LAUNCHERS 0) elseif(NOT DEFINED CTEST_USE_LAUNCHERS) # The setting is ignored by CTest < 2.8 so we need no version test. @@ -293,7 +293,7 @@ set(ENV{LC_ALL} C) macro(write_cache) set(cache_build_type "") set(cache_make_program "") - if(CTEST_CMAKE_GENERATOR MATCHES "Make") + if(CTEST_CMAKE_GENERATOR MATCHES "Make|Ninja") set(cache_build_type CMAKE_BUILD_TYPE:STRING=${CTEST_BUILD_CONFIGURATION}) if(CMAKE_MAKE_PROGRAM) set(cache_make_program CMAKE_MAKE_PROGRAM:FILEPATH=${CMAKE_MAKE_PROGRAM}) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3159d3f588e2842e3d0eb85b410c985203423e2d commit 3159d3f588e2842e3d0eb85b410c985203423e2d Author: Brad King AuthorDate: Tue May 20 11:43:53 2014 -0400 Commit: Brad King CommitDate: Tue May 20 11:43:53 2014 -0400 cmake_common: Add dashboard_configure_args option diff --git a/cmake_common.cmake b/cmake_common.cmake index a7b83a0..7b9d91b 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -364,7 +364,7 @@ while(NOT dashboard_done) set(CTEST_CHECKOUT_COMMAND) # checkout on first iteration only safe_message("Found ${count} changed files") if(dashboard_fresh OR NOT dashboard_continuous OR count GREATER 0) - ctest_configure() + ctest_configure(${dashboard_configure_args}) ctest_read_custom_files(${CTEST_BINARY_DIRECTORY}) if(COMMAND dashboard_hook_build) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=99d55e896516cdadafd6b926921cdf59c2e09fa3 commit 99d55e896516cdadafd6b926921cdf59c2e09fa3 Author: Brad King AuthorDate: Tue May 20 11:43:40 2014 -0400 Commit: Brad King CommitDate: Tue May 20 11:43:40 2014 -0400 cmake_common: Add dashboard_no_test option diff --git a/cmake_common.cmake b/cmake_common.cmake index 576db9a..a7b83a0 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -375,7 +375,9 @@ while(NOT dashboard_done) if(COMMAND dashboard_hook_test) dashboard_hook_test() endif() - ctest_test(${CTEST_TEST_ARGS}) + if(NOT dashboard_no_test) + ctest_test(${CTEST_TEST_ARGS}) + endif() set(safe_message_skip 1) # Block furhter messages if(dashboard_do_coverage) ----------------------------------------------------------------------- Summary of changes: cmake_common.cmake | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 25 09:47:10 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:47:10 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-904-g9722f8f Message-ID: <20160125144710.1CFE9E418B@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 9722f8f9a5b1c1ec24b6cb6edf5edd59922e90a5 (commit) via b94e855d5fbf5cae975034ce5d7836425c8ad87f (commit) from b9dadca90b2b10a71ffca87a308dcbfef5058f3c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9722f8f9a5b1c1ec24b6cb6edf5edd59922e90a5 commit 9722f8f9a5b1c1ec24b6cb6edf5edd59922e90a5 Merge: b9dadca b94e855 Author: Brad King AuthorDate: Mon Jan 25 09:47:08 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 25 09:47:08 2016 -0500 Merge topic 'FindBoost-1.61' b94e855d FindBoost: Add support for Boost 1.61 ----------------------------------------------------------------------- Summary of changes: Modules/FindBoost.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 25 09:47:13 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:47:13 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-906-g0586f17 Message-ID: <20160125144713.5AD13E4191@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 0586f1798e5dde39c18f70fb5c411902c2bf5357 (commit) via d7e863c1c1f4962f589e53b42a87a66cf5ab00b7 (commit) from 9722f8f9a5b1c1ec24b6cb6edf5edd59922e90a5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0586f1798e5dde39c18f70fb5c411902c2bf5357 commit 0586f1798e5dde39c18f70fb5c411902c2bf5357 Merge: 9722f8f d7e863c Author: Brad King AuthorDate: Mon Jan 25 09:47:11 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 25 09:47:11 2016 -0500 Merge topic 'vs-win10-sdk' d7e863c1 VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929) ----------------------------------------------------------------------- Summary of changes: Help/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst | 3 ++- Source/cmGlobalVisualStudio14Generator.cxx | 9 +++++---- Source/cmGlobalVisualStudio14Generator.h | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 25 09:47:39 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:47:39 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2094-ga0771e0 Message-ID: <20160125144739.AACDBE41AD@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 a0771e09b7d1fa613ffa19dfb5d3dadf6014fc7e (commit) via 0586f1798e5dde39c18f70fb5c411902c2bf5357 (commit) via 9722f8f9a5b1c1ec24b6cb6edf5edd59922e90a5 (commit) via b9dadca90b2b10a71ffca87a308dcbfef5058f3c (commit) via 490483b947fe3fcefc73af3e899b47dcf0eddbde (commit) via 4a3fa1e8a09ef1fa674d36c1188bb73aed0de231 (commit) from e9ac370789a1020b85e7a928ffd97673cf79afad (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a0771e09b7d1fa613ffa19dfb5d3dadf6014fc7e commit a0771e09b7d1fa613ffa19dfb5d3dadf6014fc7e Merge: e9ac370 0586f17 Author: Brad King AuthorDate: Mon Jan 25 09:47:28 2016 -0500 Commit: Brad King CommitDate: Mon Jan 25 09:47:28 2016 -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 Mon Jan 25 09:50:17 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:50:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-908-gf9cc671 Message-ID: <20160125145017.81F0AE42E3@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 f9cc671364d86a33399f7293aae9b145d7f90d94 (commit) via 7b8bec7a944acbebb71adf6ef1d6a561a3444076 (commit) from 0586f1798e5dde39c18f70fb5c411902c2bf5357 (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 Mon Jan 25 09:50:17 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:50:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2097-g26aec99 Message-ID: <20160125145017.AC181E42E8@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 26aec99782f958f3a048e7074be1f5b9e8592426 (commit) via f9cc671364d86a33399f7293aae9b145d7f90d94 (commit) via 7b8bec7a944acbebb71adf6ef1d6a561a3444076 (commit) from a0771e09b7d1fa613ffa19dfb5d3dadf6014fc7e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=26aec99782f958f3a048e7074be1f5b9e8592426 commit 26aec99782f958f3a048e7074be1f5b9e8592426 Merge: a0771e0 f9cc671 Author: Brad King AuthorDate: Mon Jan 25 09:50:08 2016 -0500 Commit: Brad King CommitDate: Mon Jan 25 09:50:08 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 25 09:50:17 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:50:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.4.2-2-g7b8bec7 Message-ID: <20160125145017.BCCDFE42E3@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 7b8bec7a944acbebb71adf6ef1d6a561a3444076 (commit) via d7e863c1c1f4962f589e53b42a87a66cf5ab00b7 (commit) from 6506dcaa20a7d17737517dbcba6102be564d8d66 (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/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst | 3 ++- Source/cmGlobalVisualStudio14Generator.cxx | 9 +++++---- Source/cmGlobalVisualStudio14Generator.h | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Mon Jan 25 09:51:46 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 09:51:46 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2100-g9b24c2f Message-ID: <20160125145146.AD1B6E43AA@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 9b24c2fbefae8427a67392ca1f92a733c60496d9 (commit) via 52cf1c99ad32867d810a895c3f37a61beb71a750 (commit) via 0aef6f2412177a236deb292654402518777f3cb0 (commit) from 26aec99782f958f3a048e7074be1f5b9e8592426 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9b24c2fbefae8427a67392ca1f92a733c60496d9 commit 9b24c2fbefae8427a67392ca1f92a733c60496d9 Merge: 26aec99 52cf1c9 Author: Brad King AuthorDate: Mon Jan 25 09:51:45 2016 -0500 Commit: CMake Topic Stage CommitDate: Mon Jan 25 09:51:45 2016 -0500 Merge topic 'test-release' into next 52cf1c99 Merge branch 'release' into test-release 0aef6f24 CMake 3.4.3 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=52cf1c99ad32867d810a895c3f37a61beb71a750 commit 52cf1c99ad32867d810a895c3f37a61beb71a750 Merge: f9cc671 0aef6f2 Author: Brad King AuthorDate: Mon Jan 25 09:51:21 2016 -0500 Commit: Brad King CommitDate: Mon Jan 25 09:51:21 2016 -0500 Merge branch 'release' into test-release https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0aef6f2412177a236deb292654402518777f3cb0 commit 0aef6f2412177a236deb292654402518777f3cb0 Author: Brad King AuthorDate: Mon Jan 25 09:50:47 2016 -0500 Commit: Brad King CommitDate: Mon Jan 25 09:50:47 2016 -0500 CMake 3.4.3 diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 4b3e7f7..41da437 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 4) -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 Mon Jan 25 13:23:38 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 13:23:38 -0500 (EST) Subject: [Cmake-commits] CMake branch, release, updated. v3.4.2-3-g0aef6f2 Message-ID: <20160125182338.2CE3AE46F2@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 0aef6f2412177a236deb292654402518777f3cb0 (commit) from 7b8bec7a944acbebb71adf6ef1d6a561a3444076 (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 Mon Jan 25 13:23:44 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 13:23:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.2-910-gc4e1bc6 Message-ID: <20160125182344.13C04E473B@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 c4e1bc6ed24d57ef3136756802aa575642927ff1 (commit) via 0aef6f2412177a236deb292654402518777f3cb0 (commit) from f9cc671364d86a33399f7293aae9b145d7f90d94 (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 Mon Jan 25 13:23:44 2016 From: brad.king at kitware.com (Brad King) Date: Mon, 25 Jan 2016 13:23:44 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.2-2102-gc220f4e Message-ID: <20160125182344.43493E4715@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 c220f4e80728c2b39db6d375c0a8d9667769cd08 (commit) via c4e1bc6ed24d57ef3136756802aa575642927ff1 (commit) from 9b24c2fbefae8427a67392ca1f92a733c60496d9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c220f4e80728c2b39db6d375c0a8d9667769cd08 commit c220f4e80728c2b39db6d375c0a8d9667769cd08 Merge: 9b24c2f c4e1bc6 Author: Brad King AuthorDate: Mon Jan 25 13:23:15 2016 -0500 Commit: Brad King CommitDate: Mon Jan 25 13:23:15 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From robert.maynard at kitware.com Mon Jan 25 14:35:36 2016 From: robert.maynard at kitware.com (Robert Maynard) Date: Mon, 25 Jan 2016 14:35:36 -0500 (EST) Subject: [Cmake-commits] CMake annotated tag, v3.4.3, created. v3.4.3 Message-ID: <20160125193536.668B0E4AAC@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.4.3 has been created at a1ecc5d06c1f86f31da8a0b3a8d58c06aa77417f (tag) tagging 0aef6f2412177a236deb292654402518777f3cb0 (commit) replaces v3.4.2 tagged by Brad King on Mon Jan 25 09:54:04 2016 -0500 - Log ----------------------------------------------------------------- CMake 3.4.3 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJWpjcMAAoJEC0s7xA0khaEKwsP/iWSM84qMWbZqeLsg6lkN9sz a/Hk/eXJEPz8XqbNq9dz6n+j3fBSlFGAe8PTobee+Cv+qndOnnRqjYc7t9r5rxWz tolaKNFoH9vBjz5bELe5DH/Loc7NEzkvY6qVwT0zXU2B9Tn/c8s1YGEkzTGszJZ0 8IGQiPBDbl7OnuB6KwbubIfGXnyPMfaZ0I9mEeWAD8ZPoliLGsTWLyQQTE+ih7/a /4BgQQca8BZq9OM1R3Hr3ZgfWQB8MrCKPazwdRFBjZHI7HI1WsisQL/cxRtHdONH QMENkB0mVLeL+Z/etl7CaihmiPJ7ntjAMUzyXGR/kVssChXCYCE7XAydTgZi+OUF VvPYCB4pbnjVNr+f8/ccsG6pwCcZ3i9C6s+ulUWScQ/4TRXslpadFgffaqfVgTgl NKftB14VKxKE74N+wtmCcbS0AafVOv2cZ99mZ27YadZ7K33xjLQ8OnGrKmnT/HYq eCNz7w91mAdmeAkPYDlz6FmdhJH4Q9wpekAq89FSZFcqFH3+wSvg0mkooYHOGGIe YfOFOFQlP5wCrvFTjMm9SmWtmTA96Q8abNBJtiBawDWcI074YlZ5tl5/8WSWGCLp q0E4GjVzpMd/a40U2fe0wYvUXf6QAtjuLjHZaR/vG1NKZbdqFkZcWV2otw/J47zs GL+cbH3lMX5Pcjr3R1UY =3N0v -----END PGP SIGNATURE----- Brad King (3): VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929) Merge branch 'vs-win10-sdk' into release CMake 3.4.3 ----------------------------------------------------------------------- hooks/post-receive -- CMake From kwrobot at kitware.com Tue Jan 26 00:01:16 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Tue, 26 Jan 2016 00:01:16 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-908-ge7eab0e Message-ID: <20160126050116.48C64E4AF3@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 e7eab0ec40f19a1fc81920bdd0dcf356a5b362d4 (commit) from c4e1bc6ed24d57ef3136756802aa575642927ff1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e7eab0ec40f19a1fc81920bdd0dcf356a5b362d4 commit e7eab0ec40f19a1fc81920bdd0dcf356a5b362d4 Author: Kitware Robot AuthorDate: Tue Jan 26 00:01:13 2016 -0500 Commit: Kitware Robot CommitDate: Tue Jan 26 00:01:13 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 87792d1..18f52bf 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 4) -set(CMake_VERSION_PATCH 20160125) +set(CMake_VERSION_PATCH 20160126) #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 Jan 26 09:35:00 2016 From: brad.king at kitware.com (Brad King) Date: Tue, 26 Jan 2016 09:35:00 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.3-2101-gcec1388 Message-ID: <20160126143500.9F327E4C88@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 cec1388c39796ee79c39c4119e6546cb69a2f65e (commit) via 1053db7b0cbe89acfa693fbd76b20992fe9ba023 (commit) from c220f4e80728c2b39db6d375c0a8d9667769cd08 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cec1388c39796ee79c39c4119e6546cb69a2f65e commit cec1388c39796ee79c39c4119e6546cb69a2f65e Merge: c220f4e 1053db7 Author: Brad King AuthorDate: Tue Jan 26 09:34:59 2016 -0500 Commit: CMake Topic Stage CommitDate: Tue Jan 26 09:34:59 2016 -0500 Merge topic 'UseJava-fix-doc-typo' into next 1053db7b UseJava: Fix documented name of `CLASSDIR` property (#15936) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1053db7b0cbe89acfa693fbd76b20992fe9ba023 commit 1053db7b0cbe89acfa693fbd76b20992fe9ba023 Author: Brad King AuthorDate: Tue Jan 26 09:27:21 2016 -0500 Commit: Brad King CommitDate: Tue Jan 26 09:27:21 2016 -0500 UseJava: Fix documented name of `CLASSDIR` property (#15936) It is not `CLASS_DIR`. diff --git a/Modules/UseJava.cmake b/Modules/UseJava.cmake index adaba02..475ad5e 100644 --- a/Modules/UseJava.cmake +++ b/Modules/UseJava.cmake @@ -184,7 +184,7 @@ # This is used by install_jni_symlink(). # JAR_FILE The location of the jar file so that you can include # it. -# CLASS_DIR The directory where the class files can be found. For +# CLASSDIR The directory where the class files can be found. For # example to use them with javah. # # :: ----------------------------------------------------------------------- Summary of changes: Modules/UseJava.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From kwrobot at kitware.com Wed Jan 27 00:01:05 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Wed, 27 Jan 2016 00:01:05 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-909-g30e294f Message-ID: <20160127050105.CC418E4CAE@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 30e294f68fb78a4d813fa0f9df668e543e4cf991 (commit) from e7eab0ec40f19a1fc81920bdd0dcf356a5b362d4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=30e294f68fb78a4d813fa0f9df668e543e4cf991 commit 30e294f68fb78a4d813fa0f9df668e543e4cf991 Author: Kitware Robot AuthorDate: Wed Jan 27 00:01:03 2016 -0500 Commit: Kitware Robot CommitDate: Wed Jan 27 00:01:03 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 18f52bf..02a3de8 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 4) -set(CMake_VERSION_PATCH 20160126) +set(CMake_VERSION_PATCH 20160127) #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 Jan 27 09:28:17 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 27 Jan 2016 09:28:17 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.3-2106-gde3d01c Message-ID: <20160127142817.ECEE4E4B8F@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 de3d01c33142da1213335e5d6159a9c61d749db5 (commit) via fa78ee97ff30cc066a620cacdfe4144852947dc4 (commit) via facfb52c9fe36c172c4aa21b40c5886efa28e0ae (commit) via 30e294f68fb78a4d813fa0f9df668e543e4cf991 (commit) via e7eab0ec40f19a1fc81920bdd0dcf356a5b362d4 (commit) from cec1388c39796ee79c39c4119e6546cb69a2f65e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=de3d01c33142da1213335e5d6159a9c61d749db5 commit de3d01c33142da1213335e5d6159a9c61d749db5 Merge: cec1388 fa78ee9 Author: Brad King AuthorDate: Wed Jan 27 09:28:17 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 27 09:28:17 2016 -0500 Merge topic 'FindGit-updates' into next fa78ee97 FindGit: Improve documentation formatting facfb52c FindGit: Document Git_FOUND, unset internal var 30e294f6 CMake Nightly Date Stamp e7eab0ec CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fa78ee97ff30cc066a620cacdfe4144852947dc4 commit fa78ee97ff30cc066a620cacdfe4144852947dc4 Author: Brad King AuthorDate: Wed Jan 27 09:23:48 2016 -0500 Commit: Brad King CommitDate: Wed Jan 27 09:26:27 2016 -0500 FindGit: Improve documentation formatting diff --git a/Modules/FindGit.cmake b/Modules/FindGit.cmake index 363ab87..d18f965 100644 --- a/Modules/FindGit.cmake +++ b/Modules/FindGit.cmake @@ -2,19 +2,18 @@ # FindGit # ------- # -# -# # The module defines the following variables: # -# :: -# -# GIT_EXECUTABLE - path to Git command line client -# Git_FOUND / GIT_FOUND - true if the Git command line client was found -# GIT_VERSION_STRING - the version of Git found +# ``GIT_EXECUTABLE`` +# Path to Git command-line client. +# ``Git_FOUND``, ``GIT_FOUND`` +# True if the Git command-line client was found. +# ``GIT_VERSION_STRING`` +# The version of Git found. # # Example usage: # -# :: +# .. code-block:: cmake # # find_package(Git) # if(Git_FOUND) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=facfb52c9fe36c172c4aa21b40c5886efa28e0ae commit facfb52c9fe36c172c4aa21b40c5886efa28e0ae Author: Christoph Gr?ninger AuthorDate: Tue Jan 26 21:53:16 2016 +0100 Commit: Brad King CommitDate: Wed Jan 27 09:21:56 2016 -0500 FindGit: Document Git_FOUND, unset internal var * Git is called Git, not git. * FindGit sets Git_FOUND, too. * Unset internal variable git_names diff --git a/Modules/FindGit.cmake b/Modules/FindGit.cmake index 2c3e5fd..363ab87 100644 --- a/Modules/FindGit.cmake +++ b/Modules/FindGit.cmake @@ -8,21 +8,21 @@ # # :: # -# GIT_EXECUTABLE - path to git command line client -# GIT_FOUND - true if the command line client was found -# GIT_VERSION_STRING - the version of git found (since CMake 2.8.8) +# GIT_EXECUTABLE - path to Git command line client +# Git_FOUND / GIT_FOUND - true if the Git command line client was found +# GIT_VERSION_STRING - the version of Git found # # Example usage: # # :: # # find_package(Git) -# if(GIT_FOUND) -# message("git found: ${GIT_EXECUTABLE}") +# if(Git_FOUND) +# message("Git found: ${GIT_EXECUTABLE}") # endif() #============================================================================= -# Copyright 2010 Kitware, Inc. +# Copyright 2010-2016 Kitware, Inc. # Copyright 2012 Rolf Eike Beer # # Distributed under the OSI-approved BSD License (the "License"); @@ -57,10 +57,11 @@ find_program(GIT_EXECUTABLE NAMES ${git_names} PATHS ${github_path} ${_git_sourcetree_path} PATH_SUFFIXES Git/cmd Git/bin - DOC "git command line client" + DOC "Git command line client" ) mark_as_advanced(GIT_EXECUTABLE) +unset(git_names) unset(_git_sourcetree_path) if(GIT_EXECUTABLE) @@ -74,7 +75,7 @@ if(GIT_EXECUTABLE) unset(git_version) endif() -# Handle the QUIETLY and REQUIRED arguments and set GIT_FOUND to TRUE if +# Handle the QUIETLY and REQUIRED arguments and set Git_FOUND to TRUE if # all listed variables are TRUE include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) ----------------------------------------------------------------------- Summary of changes: Modules/FindGit.cmake | 26 +++++++++++++------------- Source/CMakeVersion.cmake | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 27 09:47:59 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 27 Jan 2016 09:47:59 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-911-g656768c Message-ID: <20160127144759.1A431E4505@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 656768cffe981e02f12fe51d6723d21176a46329 (commit) via 1053db7b0cbe89acfa693fbd76b20992fe9ba023 (commit) from 30e294f68fb78a4d813fa0f9df668e543e4cf991 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=656768cffe981e02f12fe51d6723d21176a46329 commit 656768cffe981e02f12fe51d6723d21176a46329 Merge: 30e294f 1053db7 Author: Brad King AuthorDate: Wed Jan 27 09:47:57 2016 -0500 Commit: CMake Topic Stage CommitDate: Wed Jan 27 09:47:57 2016 -0500 Merge topic 'UseJava-fix-doc-typo' 1053db7b UseJava: Fix documented name of `CLASSDIR` property (#15936) ----------------------------------------------------------------------- Summary of changes: Modules/UseJava.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake From brad.king at kitware.com Wed Jan 27 09:48:15 2016 From: brad.king at kitware.com (Brad King) Date: Wed, 27 Jan 2016 09:48:15 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.3-2108-g701a3fd Message-ID: <20160127144815.7170AE4536@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 701a3fdbcc7d848b0554ff9bdaf8ba74a85b07b0 (commit) via 656768cffe981e02f12fe51d6723d21176a46329 (commit) from de3d01c33142da1213335e5d6159a9c61d749db5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=701a3fdbcc7d848b0554ff9bdaf8ba74a85b07b0 commit 701a3fdbcc7d848b0554ff9bdaf8ba74a85b07b0 Merge: de3d01c 656768c Author: Brad King AuthorDate: Wed Jan 27 09:48:05 2016 -0500 Commit: Brad King CommitDate: Wed Jan 27 09:48:05 2016 -0500 Merge branch 'master' into next ----------------------------------------------------------------------- Summary of changes: hooks/post-receive -- CMake From kwrobot at kitware.com Thu Jan 28 00:01:06 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Thu, 28 Jan 2016 00:01:06 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-912-g5335d27 Message-ID: <20160128050106.5F432E4A4C@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 5335d275527d4f58e4f2992d307c1c62cd94dd3c (commit) from 656768cffe981e02f12fe51d6723d21176a46329 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5335d275527d4f58e4f2992d307c1c62cd94dd3c commit 5335d275527d4f58e4f2992d307c1c62cd94dd3c Author: Kitware Robot AuthorDate: Thu Jan 28 00:01:04 2016 -0500 Commit: Kitware Robot CommitDate: Thu Jan 28 00:01:04 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 02a3de8..d6becbc 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 4) -set(CMake_VERSION_PATCH 20160127) +set(CMake_VERSION_PATCH 20160128) #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 Jan 28 10:37:09 2016 From: brad.king at kitware.com (Brad King) Date: Thu, 28 Jan 2016 10:37:09 -0500 (EST) Subject: [Cmake-commits] CMake branch, next, updated. v3.4.3-2115-g991d04a Message-ID: <20160128153709.CF52EE4F74@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 991d04a395868caa7a33a0ddac9333641ec3295b (commit) via d257d68138a00758910bbca3dd77dcfcc04e65cc (commit) via 4d53e0a75e3ccddf14f556e88302573f14aa8830 (commit) via 8c615af4dfaaec38dfb7f42ec951485644c2e24b (commit) via 63c5808f9328797ef225c0d81d60b0fa39ac7d3b (commit) via a336e438e2dc45ffffcd656cfc81507f94e0cec5 (commit) via 88968265e24bc294b4055d7db8a1f9ffbaf73698 (commit) from 701a3fdbcc7d848b0554ff9bdaf8ba74a85b07b0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=991d04a395868caa7a33a0ddac9333641ec3295b commit 991d04a395868caa7a33a0ddac9333641ec3295b Merge: 701a3fd d257d68 Author: Brad King AuthorDate: Thu Jan 28 10:37:08 2016 -0500 Commit: CMake Topic Stage CommitDate: Thu Jan 28 10:37:08 2016 -0500 Merge topic 'clarify-add_custom_command-TARGET-scope' into next d257d681 add_custom_command: Clarify error when TARGET is out of scope (#15681) 4d53e0a7 Help: Clarify `add_custom_command(TARGET)` scope (#15681) 8c615af4 Help: Clarify policy `CMP0040` documentation (#15681) 63c5808f Help: Clarify scope of `if(TARGET)` expression a336e438 Help: Improve markup in `if` command documentation 88968265 Help: Improve markup in `get_target_property` documentation https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d257d68138a00758910bbca3dd77dcfcc04e65cc commit d257d68138a00758910bbca3dd77dcfcc04e65cc Author: Brad King AuthorDate: Thu Jan 28 10:12:26 2016 -0500 Commit: Brad King CommitDate: Thu Jan 28 10:33:26 2016 -0500 add_custom_command: Clarify error when TARGET is out of scope (#15681) The add_custom_command(TARGET) signature only works for targets defined in the current directory. Clarify this in the error message when the target exists but was defined elsewhere. Inspired-by: Bartosz Kosiorek diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index ba0d672..cba29eb 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -791,7 +791,24 @@ cmMakefile::AddCustomCommandToTarget(const std::string& target, if(issueMessage) { - e << "The target name \"" << target << "\" is unknown in this context."; + if (cmTarget const* t = this->FindTargetToUse(target)) + { + if (t->IsImported()) + { + e << "TARGET '" << target + << "' is IMPORTED and does not build here."; + } + else + { + e << "TARGET '" << target + << "' was not created in this directory."; + } + } + else + { + e << "No TARGET '" << target + << "' has been created in this directory."; + } IssueMessage(messageType, e.str()); } diff --git a/Tests/RunCMake/CMP0040/CMP0040-NEW-missing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-NEW-missing-target-stderr.txt index 3f82d8c..4a1077c 100644 --- a/Tests/RunCMake/CMP0040/CMP0040-NEW-missing-target-stderr.txt +++ b/Tests/RunCMake/CMP0040/CMP0040-NEW-missing-target-stderr.txt @@ -1,4 +1,4 @@ CMake Error at CMP0040-NEW-missing-target.cmake:3 \(add_custom_command\): - The target name "foobar" is unknown in this context. + No TARGET 'foobar' has been created in this directory. Call Stack \(most recent call first\): CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/CMP0040/CMP0040-WARN-missing-target-stderr.txt b/Tests/RunCMake/CMP0040/CMP0040-WARN-missing-target-stderr.txt index e791f0a..e3e3ff4 100644 --- a/Tests/RunCMake/CMP0040/CMP0040-WARN-missing-target-stderr.txt +++ b/Tests/RunCMake/CMP0040/CMP0040-WARN-missing-target-stderr.txt @@ -4,7 +4,7 @@ CMake Warning \(dev\) at CMP0040-WARN-missing-target.cmake:2 \(add_custom_comman policy details. Use the cmake_policy command to set the policy and suppress this warning. + - The target name "foobar" is unknown in this context. + No TARGET 'foobar' has been created in this directory. Call Stack \(most recent call first\): CMakeLists.txt:3 \(include\) This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/add_custom_command/RunCMakeTest.cmake b/Tests/RunCMake/add_custom_command/RunCMakeTest.cmake index 2f5c938..397c63d 100644 --- a/Tests/RunCMake/add_custom_command/RunCMakeTest.cmake +++ b/Tests/RunCMake/add_custom_command/RunCMakeTest.cmake @@ -8,3 +8,5 @@ run_cmake(NoOutputOrTarget) run_cmake(OutputAndTarget) run_cmake(SourceByproducts) run_cmake(SourceUsesTerminal) +run_cmake(TargetImported) +run_cmake(TargetNotInDir) diff --git a/Tests/RunCMake/add_custom_command/TargetImported-result.txt b/Tests/RunCMake/add_custom_command/TargetImported-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetImported-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/add_custom_command/TargetImported-stderr.txt b/Tests/RunCMake/add_custom_command/TargetImported-stderr.txt new file mode 100644 index 0000000..44c4ad8 --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetImported-stderr.txt @@ -0,0 +1,4 @@ +^CMake Error at TargetImported.cmake:2 \(add_custom_command\): + TARGET 'TargetImported' is IMPORTED and does not build here. +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\)$ diff --git a/Tests/RunCMake/add_custom_command/TargetImported.cmake b/Tests/RunCMake/add_custom_command/TargetImported.cmake new file mode 100644 index 0000000..c0f2d66 --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetImported.cmake @@ -0,0 +1,2 @@ +add_library(TargetImported UNKNOWN IMPORTED) +add_custom_command(TARGET TargetImported COMMAND ${CMAKE_COMMAND} -E echo tada) diff --git a/Tests/RunCMake/add_custom_command/TargetNotInDir-result.txt b/Tests/RunCMake/add_custom_command/TargetNotInDir-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetNotInDir-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/add_custom_command/TargetNotInDir-stderr.txt b/Tests/RunCMake/add_custom_command/TargetNotInDir-stderr.txt new file mode 100644 index 0000000..91876a0 --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetNotInDir-stderr.txt @@ -0,0 +1,4 @@ +^CMake Error at TargetNotInDir.cmake:2 \(add_custom_command\): + TARGET 'TargetNotInDir' was not created in this directory. +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\)$ diff --git a/Tests/RunCMake/add_custom_command/TargetNotInDir.cmake b/Tests/RunCMake/add_custom_command/TargetNotInDir.cmake new file mode 100644 index 0000000..a551026 --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetNotInDir.cmake @@ -0,0 +1,2 @@ +add_subdirectory(TargetNotInDir) +add_custom_command(TARGET TargetNotInDir COMMAND ${CMAKE_COMMAND} -E echo tada) diff --git a/Tests/RunCMake/add_custom_command/TargetNotInDir/CMakeLists.txt b/Tests/RunCMake/add_custom_command/TargetNotInDir/CMakeLists.txt new file mode 100644 index 0000000..3d51d27 --- /dev/null +++ b/Tests/RunCMake/add_custom_command/TargetNotInDir/CMakeLists.txt @@ -0,0 +1 @@ +add_custom_target(TargetNotInDir) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4d53e0a75e3ccddf14f556e88302573f14aa8830 commit 4d53e0a75e3ccddf14f556e88302573f14aa8830 Author: Bartosz Kosiorek AuthorDate: Thu Jan 28 10:52:15 2016 +0100 Commit: Brad King CommitDate: Thu Jan 28 10:13:27 2016 -0500 Help: Clarify `add_custom_command(TARGET)` scope (#15681) diff --git a/Help/command/add_custom_command.rst b/Help/command/add_custom_command.rst index ecbf9dd..8726b70 100644 --- a/Help/command/add_custom_command.rst +++ b/Help/command/add_custom_command.rst @@ -178,7 +178,7 @@ target is already built, the command will not execute. :: - add_custom_command(TARGET target + add_custom_command(TARGET PRE_BUILD | PRE_LINK | POST_BUILD COMMAND command1 [ARGS] [args1...] [COMMAND command2 [ARGS] [args2...] ...] @@ -188,7 +188,10 @@ target is already built, the command will not execute. [VERBATIM] [USES_TERMINAL]) This defines a new command that will be associated with building the -specified target. When the command will happen is determined by which +specified ````. The ```` must be defined in the current +directory; targets defined in other directories may not be specified. + +When the command will happen is determined by which of the following is specified: ``PRE_BUILD`` https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8c615af4dfaaec38dfb7f42ec951485644c2e24b commit 8c615af4dfaaec38dfb7f42ec951485644c2e24b Author: Bartosz Kosiorek AuthorDate: Thu Jan 28 10:52:15 2016 +0100 Commit: Brad King CommitDate: Thu Jan 28 10:13:18 2016 -0500 Help: Clarify policy `CMP0040` documentation (#15681) State explicitly that the target must be defined in the current directory. While at it, improve markup formatting. diff --git a/Help/policy/CMP0040.rst b/Help/policy/CMP0040.rst index e746c03..d46baf6 100644 --- a/Help/policy/CMP0040.rst +++ b/Help/policy/CMP0040.rst @@ -1,18 +1,21 @@ CMP0040 ------- -The target in the TARGET signature of add_custom_command() must exist. +The target in the ``TARGET`` signature of :command:`add_custom_command` +must exist and must be defined in current directory. CMake 2.8.12 and lower silently ignored a custom command created with -the TARGET signature of :command:`add_custom_command` -if the target is unknown. +the ``TARGET`` signature of :command:`add_custom_command` +if the target is unknown or was defined outside the current directory. -The OLD behavior for this policy is to ignore custom commands -for unknown targets. The NEW behavior for this policy is to report an error -if the target referenced in :command:`add_custom_command` is unknown. +The ``OLD`` behavior for this policy is to ignore custom commands +for unknown targets. The ``NEW`` behavior for this policy is to report +an error if the target referenced in :command:`add_custom_command` is +unknown or was defined outside the current directory. This policy was introduced in CMake version 3.0. CMake version -|release| warns when the policy is not set and uses OLD behavior. Use -the cmake_policy command to set it to OLD or NEW explicitly. +|release| warns when the policy is not set and uses ``OLD`` behavior. +Use the :command:`cmake_policy` command to set it to ``OLD`` or +``NEW`` explicitly. .. include:: DEPRECATED.txt https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=63c5808f9328797ef225c0d81d60b0fa39ac7d3b commit 63c5808f9328797ef225c0d81d60b0fa39ac7d3b Author: Bartosz Kosiorek AuthorDate: Thu Jan 28 10:52:15 2016 +0100 Commit: Brad King CommitDate: Thu Jan 28 10:13:17 2016 -0500 Help: Clarify scope of `if(TARGET)` expression diff --git a/Help/command/if.rst b/Help/command/if.rst index 9548d0b..56e618c 100644 --- a/Help/command/if.rst +++ b/Help/command/if.rst @@ -67,9 +67,10 @@ Possible expressions are: True if the given name is an existing policy (of the form ``CMP``). ``if(TARGET target-name)`` - True if the given name is an existing logical target name such as those - created by the :command:`add_executable`, :command:`add_library`, or - :command:`add_custom_target` commands. + True if the given name is an existing logical target name created + by a call to the :command:`add_executable`, :command:`add_library`, + or :command:`add_custom_target` command that has already been invoked + (in any directory). ``if(TEST test-name)`` True if the given name is an existing test name created by the https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a336e438e2dc45ffffcd656cfc81507f94e0cec5 commit a336e438e2dc45ffffcd656cfc81507f94e0cec5 Author: Bartosz Kosiorek AuthorDate: Thu Jan 28 10:52:15 2016 +0100 Commit: Brad King CommitDate: Thu Jan 28 10:12:51 2016 -0500 Help: Improve markup in `if` command documentation diff --git a/Help/command/if.rst b/Help/command/if.rst index 2465bde..9548d0b 100644 --- a/Help/command/if.rst +++ b/Help/command/if.rst @@ -80,7 +80,7 @@ Possible expressions are: only for full paths. ``if(file1 IS_NEWER_THAN file2)`` - True if file1 is newer than file2 or if one of the two files doesn't + True if ``file1`` is newer than ``file2`` or if one of the two files doesn't exist. Behavior is well-defined only for full paths. If the file time stamps are exactly the same, an ``IS_NEWER_THAN`` comparison returns true, so that any dependent build operations will occur in the event https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=88968265e24bc294b4055d7db8a1f9ffbaf73698 commit 88968265e24bc294b4055d7db8a1f9ffbaf73698 Author: Bartosz Kosiorek AuthorDate: Thu Jan 28 10:52:15 2016 +0100 Commit: Brad King CommitDate: Thu Jan 28 10:12:50 2016 -0500 Help: Improve markup in `get_target_property` documentation diff --git a/Help/command/get_target_property.rst b/Help/command/get_target_property.rst index 7798252..2a72c3a 100644 --- a/Help/command/get_target_property.rst +++ b/Help/command/get_target_property.rst @@ -13,6 +13,6 @@ the variable ``VAR``. If the property is not found, ``VAR`` will be set to Properties are usually used to control how a target is built, but some query the target instead. This command can get properties for any target so far created. The targets do not need to be in the current -CMakeLists.txt file. +``CMakeLists.txt`` file. See also the more general :command:`get_property` command. ----------------------------------------------------------------------- Summary of changes: Help/command/add_custom_command.rst | 7 +++++-- Help/command/get_target_property.rst | 2 +- Help/command/if.rst | 9 +++++---- Help/policy/CMP0040.rst | 19 +++++++++++-------- Source/cmMakefile.cxx | 19 ++++++++++++++++++- .../CMP0040/CMP0040-NEW-missing-target-stderr.txt | 2 +- .../CMP0040/CMP0040-WARN-missing-target-stderr.txt | 2 +- .../RunCMake/add_custom_command/RunCMakeTest.cmake | 2 ++ .../TargetImported-result.txt} | 0 .../add_custom_command/TargetImported-stderr.txt | 4 ++++ .../add_custom_command/TargetImported.cmake | 2 ++ .../TargetNotInDir-result.txt} | 0 .../add_custom_command/TargetNotInDir-stderr.txt | 4 ++++ .../add_custom_command/TargetNotInDir.cmake | 2 ++ .../TargetNotInDir/CMakeLists.txt | 1 + 15 files changed, 57 insertions(+), 18 deletions(-) copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/TargetImported-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/TargetImported-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/TargetImported.cmake copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => add_custom_command/TargetNotInDir-result.txt} (100%) create mode 100644 Tests/RunCMake/add_custom_command/TargetNotInDir-stderr.txt create mode 100644 Tests/RunCMake/add_custom_command/TargetNotInDir.cmake create mode 100644 Tests/RunCMake/add_custom_command/TargetNotInDir/CMakeLists.txt hooks/post-receive -- CMake From kwrobot at kitware.com Fri Jan 29 00:01:05 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Fri, 29 Jan 2016 00:01:05 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-913-g76a51df Message-ID: <20160129050105.CE341E4ACC@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 76a51dfab8b0ebeadb377862758fdddd555cb10c (commit) from 5335d275527d4f58e4f2992d307c1c62cd94dd3c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=76a51dfab8b0ebeadb377862758fdddd555cb10c commit 76a51dfab8b0ebeadb377862758fdddd555cb10c Author: Kitware Robot AuthorDate: Fri Jan 29 00:01:04 2016 -0500 Commit: Kitware Robot CommitDate: Fri Jan 29 00:01:04 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index d6becbc..7d0d5c1 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 4) -set(CMake_VERSION_PATCH 20160128) +set(CMake_VERSION_PATCH 20160129) #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 Sat Jan 30 00:01:07 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sat, 30 Jan 2016 00:01:07 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-914-gf270404 Message-ID: <20160130050107.3F632E4B1C@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 f270404a3d3cb11a9c57253e5f2a0a45f1595231 (commit) from 76a51dfab8b0ebeadb377862758fdddd555cb10c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f270404a3d3cb11a9c57253e5f2a0a45f1595231 commit f270404a3d3cb11a9c57253e5f2a0a45f1595231 Author: Kitware Robot AuthorDate: Sat Jan 30 00:01:03 2016 -0500 Commit: Kitware Robot CommitDate: Sat Jan 30 00:01:03 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 7d0d5c1..c3f1b62 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 4) -set(CMake_VERSION_PATCH 20160129) +set(CMake_VERSION_PATCH 20160130) #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 Sun Jan 31 00:01:06 2016 From: kwrobot at kitware.com (Kitware Robot) Date: Sun, 31 Jan 2016 00:01:06 -0500 (EST) Subject: [Cmake-commits] CMake branch, master, updated. v3.4.3-915-g13b4ef2 Message-ID: <20160131050106.DA402E4C6E@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 13b4ef24e1abd69b4fd8eec55772670a85bd5aa8 (commit) from f270404a3d3cb11a9c57253e5f2a0a45f1595231 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=13b4ef24e1abd69b4fd8eec55772670a85bd5aa8 commit 13b4ef24e1abd69b4fd8eec55772670a85bd5aa8 Author: Kitware Robot AuthorDate: Sun Jan 31 00:01:03 2016 -0500 Commit: Kitware Robot CommitDate: Sun Jan 31 00:01:03 2016 -0500 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index c3f1b62..7e713e4 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 4) -set(CMake_VERSION_PATCH 20160130) +set(CMake_VERSION_PATCH 20160131) #set(CMake_VERSION_RC 1) ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake