[Cmake-commits] CMake branch, next, updated. v2.8.7-2471-ge09c129
Brad King
brad.king at kitware.com
Mon Feb 6 09:44:05 EST 2012
This is an automated email from 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 e09c1297d8777207dacbb2c35e5b17eec9212452 (commit)
via c8ef6430e09c063b74708ef0cd28f533c15fd8bd (commit)
from 17ea393aa14be17eb7de9145bffbdfd332cda4a0 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e09c1297d8777207dacbb2c35e5b17eec9212452
commit e09c1297d8777207dacbb2c35e5b17eec9212452
Merge: 17ea393 c8ef643
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon Feb 6 09:43:56 2012 -0500
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Mon Feb 6 09:43:56 2012 -0500
Merge topic 'warn-funny-path-names' into next
c8ef643 Allow directory names containing '=' and warn if necessary (#12934)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c8ef6430e09c063b74708ef0cd28f533c15fd8bd
commit c8ef6430e09c063b74708ef0cd28f533c15fd8bd
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon Feb 6 09:40:42 2012 -0500
Commit: Brad King <brad.king at kitware.com>
CommitDate: Mon Feb 6 09:40:42 2012 -0500
Allow directory names containing '=' and warn if necessary (#12934)
The approach taken by commit 8704525f (Reject directory names containing
'=', 2011-01-14) was perhaps too heavy-handed for avoiding the obscure
cases when '=' in the path fails due to limitations of Make syntax.
Only two CMake tests:
LinkDirectory
OutOfSource
fail when the path contains '=' and they cover obscure cases. Instead
of rejecting such paths outright just warn when the problem may occur.
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index ff48009..b10e959 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -561,6 +561,21 @@ cmLocalUnixMakefileGenerator3
space = " ";
}
+ // Warn about paths not supported by Make tools.
+ std::string::size_type pos = tgt.find_first_of("=");
+ if(pos != std::string::npos)
+ {
+ cmOStringStream m;
+ m <<
+ "Make rule for\n"
+ " " << tgt << "\n"
+ "has '=' on left hand side. "
+ "The make tool may not support this.";
+ cmListFileBacktrace bt;
+ this->GlobalGenerator->GetCMakeInstance()
+ ->IssueMessage(cmake::WARNING, m.str(), bt);
+ }
+
// Mark the rule as symbolic if requested.
if(symbolic)
{
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index bc3245e..1b49837 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -1946,32 +1946,8 @@ int cmake::Configure()
}
-bool cmake::RejectUnsupportedPaths(const char* desc, std::string const& path)
-{
- // Some characters are not well-supported by native build systems.
- std::string::size_type pos = path.find_first_of("=");
- if(pos == std::string::npos)
- {
- return false;
- }
- cmOStringStream e;
- e << "The path to the " << desc << " directory:\n"
- << " " << path << "\n"
- << "contains unsupported character '" << path[pos] << "'.\n"
- << "Please use a different " << desc << " directory name.";
- cmListFileBacktrace bt;
- this->IssueMessage(cmake::FATAL_ERROR, e.str(), bt);
- return true;
-}
-
int cmake::ActualConfigure()
{
- if(this->RejectUnsupportedPaths("source", this->cmHomeDirectory) ||
- this->RejectUnsupportedPaths("binary", this->HomeOutputDirectory))
- {
- return 1;
- }
-
// Construct right now our path conversion table before it's too late:
this->UpdateConversionPathTable();
this->CleanupCommandsAndMacros();
diff --git a/Source/cmake.h b/Source/cmake.h
index 6744ca1..435d38b 100644
--- a/Source/cmake.h
+++ b/Source/cmake.h
@@ -435,8 +435,6 @@ protected:
///! Find the full path to one of the cmake programs like ctest, cpack, etc.
std::string FindCMakeProgram(const char* name) const;
-
- bool RejectUnsupportedPaths(const char* desc, std::string const& path);
private:
cmake(const cmake&); // Not implemented.
void operator=(const cmake&); // Not implemented.
-----------------------------------------------------------------------
Summary of changes:
Source/cmLocalUnixMakefileGenerator3.cxx | 15 +++++++++++++++
Source/cmake.cxx | 24 ------------------------
Source/cmake.h | 2 --
3 files changed, 15 insertions(+), 26 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list