From bb043289d06c333ab4c53ed77b19a1e56c1171ce Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 8 Aug 2005 12:00:42 -0400 Subject: BUG: Do not convert SOURCE argument from relative to full path. It breaks the old-style SOURCE==TARGET trick and the SOURCE argument is only present for old-style commands anyway. This addresses bug#2120. --- Source/cmAddCustomCommandCommand.cxx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Source/cmAddCustomCommandCommand.cxx b/Source/cmAddCustomCommandCommand.cxx index a4905dd..185c0de 100644 --- a/Source/cmAddCustomCommandCommand.cxx +++ b/Source/cmAddCustomCommandCommand.cxx @@ -120,7 +120,6 @@ bool cmAddCustomCommandCommand::InitialPass(std::vector const& args std::string filename; switch (doing) { - case doing_source: case doing_output: case doing_outputs: if (!cmSystemTools::FileIsFullPath(copy.c_str())) @@ -130,6 +129,12 @@ bool cmAddCustomCommandCommand::InitialPass(std::vector const& args } filename += copy; break; + case doing_source: + // We do not want to convert the argument to SOURCE because + // that option is only available for backward compatibility. + // Old-style use of this command may use the SOURCE==TARGET + // trick which we must preserve. If we convert the source + // to a full path then it will no longer equal the target. default: break; } -- cgit v0.12