From 303b4312b2c28329a2aecde7d7ddd84137efa1ce Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 23 May 2007 13:30:23 -0400 Subject: [PATCH] BUG: Target names in the COMMAND part of a custom command should not create a file-level dependency that forces the command to rerun when the executable target rebuilds, but the target-level dependency should still be created. Target names in a DEPENDS should do both a target-level and file-level dependency. Updated the BuildDepends test to check that this works. --- Tests/BuildDepends/Project/generator.cxx | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 Tests/BuildDepends/Project/generator.cxx diff --git a/Tests/BuildDepends/Project/generator.cxx b/Tests/BuildDepends/Project/generator.cxx new file mode 100644 index 000000000..92a122de8 --- /dev/null +++ b/Tests/BuildDepends/Project/generator.cxx @@ -0,0 +1,24 @@ +#include + +extern const char* foo(); + +int main(int argc, const char* argv[]) +{ + if(argc < 3) + { + fprintf(stderr, "Must specify output file and symbol prefix!"); + return 1; + } + if(FILE* fout = fopen(argv[1], "w")) + { + fprintf(fout, "static const char* %s_string = \"%s\";\n", argv[2], + foo()); + fclose(fout); + } + else + { + fprintf(stderr, "Could not open output file \"%s\"", argv[1]); + return 1; + } + return 0; +}