summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmAuxSourceDirectoryCommand.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/cmAuxSourceDirectoryCommand.h b/Source/cmAuxSourceDirectoryCommand.h
index 35b1ebd..b6cad1d 100644
--- a/Source/cmAuxSourceDirectoryCommand.h
+++ b/Source/cmAuxSourceDirectoryCommand.h
@@ -66,7 +66,19 @@ public:
return
" AUX_SOURCE_DIRECTORY(dir VARIABLE)\n"
"Collects the names of all the source files in the specified "
- "directory and stores the list in the variable provided.";
+ "directory and stores the list in the variable provided. This command "
+ "is intended to be used by projects that use explicit template "
+ "instantiation. Template instantiation files can be stored in a "
+ "\"Templates\" subdirectory and collected automatically using this "
+ "command to avoid manually listing all instantiations.\n"
+ "It is tempting to use this command to avoid writing the list of source "
+ "files for a library or executable target. While this seems to work, "
+ "there is no way for CMake to generate a build system that knows when a "
+ "new source file has been added. Normally the generated build system "
+ "knows when it needs to rerun CMake because the CMakeLists.txt file "
+ "is modified to add a new source. When the source is just added to "
+ "the directory without modifying this file, one would have to manually "
+ "rerun CMake to generate a build system incorporating the new file.";
}
cmTypeMacro(cmAuxSourceDirectoryCommand, cmCommand);