diff --git a/Source/cmFindIncludeRule.h b/Source/cmFindIncludeRule.h index c2563d9d3..28da4ad2d 100644 --- a/Source/cmFindIncludeRule.h +++ b/Source/cmFindIncludeRule.h @@ -22,7 +22,7 @@ /** \class cmFindIncludeRule * \brief Define a rule that searches for an include file. * - * cmFindIncludeRule is used to define a variable include + * cmFindIncludeRule is used to define a CMake variable include * path location by specifying a file and list of directories. */ class cmFindIncludeRule : public cmRuleMaker @@ -74,7 +74,7 @@ public: virtual const char* FullDocumentation() { return - "FIND_INCLUDE(DEFINE try1 try2 ...);"; + "FIND_INCLUDE(DEFINE try1 try2 ...)"; } }; diff --git a/Source/cmFindLibraryRule.h b/Source/cmFindLibraryRule.h index 4ab0b07a7..9f5f8dfe4 100644 --- a/Source/cmFindLibraryRule.h +++ b/Source/cmFindLibraryRule.h @@ -1,3 +1,18 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmFindLibraryRule_h #define cmFindLibraryRule_h @@ -5,31 +20,62 @@ #include "cmRuleMaker.h" +/** \class cmFindLibraryRule + * \brief Define a rule to search for a library. + * + * cmFindLibraryRule is used to define a CMake variable + * that specifies a library. The rule searches for a given + * file in a list of directories. + */ class cmFindLibraryRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmFindLibraryRule; + return new cmFindLibraryRule; } - // This is called when the rule is firt encountered in - // the input file - virtual bool Invoke(std::vector& args); - virtual void FinalPass() { } - virtual bool IsInherited() { return true; } - // This is the name used in the input file. - virtual const char* GetName() { return "FIND_LIBRARY";} + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ + virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ + virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} + + /** + * The name of the rule as specified in CMakeList.txt. + */ + virtual const char* GetName() {return "FIND_LIBRARY";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Set a name for the entire project. One argument."; + return "Find a library."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "FIND_LIBRARY(DEFINE try1 try2);"; + return + "FIND_LIBRARY(DEFINE try1 try2)"; } }; diff --git a/Source/cmFindProgramRule.h b/Source/cmFindProgramRule.h index 8907c8670..10ad46e3e 100644 --- a/Source/cmFindProgramRule.h +++ b/Source/cmFindProgramRule.h @@ -1,36 +1,80 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmFindProgramRule_h #define cmFindProgramRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmFindProgramRule + * \brief Define a rule to search for an executable program. + * + * cmFindProgramRule is used to define a CMake variable + * that specifies an executable program. The rule searches + * for a given file in a list of directories. + */ class cmFindProgramRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmFindProgramRule; + return new cmFindProgramRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ virtual bool IsInherited() { return true; } - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "FIND_PROGRARM";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "not implemented."; + return "Find an executable program."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "not implemented.\n" - "FIND_PROGRARM(NAME try1 try2 ...);"; + return + "FIND_PROGRAM(NAME try1 try2 ...)"; } }; diff --git a/Source/cmIncludeDirectoryRule.h b/Source/cmIncludeDirectoryRule.h index ec59614b7..58390fb8f 100644 --- a/Source/cmIncludeDirectoryRule.h +++ b/Source/cmIncludeDirectoryRule.h @@ -1,35 +1,79 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmIncludeDirectoryRule_h #define cmIncludeDirectoryRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmIncludeDirectoryRule + * \brief Add include directories to the build. + * + * cmIncludeDirectoryRule is used to specify directory locations + * to search for included files. + */ class cmIncludeDirectoryRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmIncludeDirectoryRule; + return new cmIncludeDirectoryRule; } - // This is called when the rule is firt encountered in - // the input file - virtual bool Invoke(std::vector& args); - virtual void FinalPass() { } - virtual bool IsInherited() { return true; } - // This is the name used in the input file. + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ + virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ + virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} + + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "INCLUDE_DIRECTORIES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add include directories to the build."; + return "Add include directories to the build."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "INCLUDE_DIRECTORIES(dir1 dir2 ...).\n"; + return + "INCLUDE_DIRECTORIES(dir1 dir2 ...).\n"; } }; diff --git a/Source/cmLibraryRule.h b/Source/cmLibraryRule.h index 61db5e72f..2a4ce2d50 100644 --- a/Source/cmLibraryRule.h +++ b/Source/cmLibraryRule.h @@ -1,3 +1,18 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmLibraryRule_h #define cmLibraryRule_h @@ -5,30 +20,55 @@ #include "cmRuleMaker.h" +/** \class cmLibraryRule + * \brief Specify a name for a library. + * + * cmLibraryRule is used to specify the name of a library to be + * generated by the build process. + */ class cmLibraryRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmLibraryRule; + return new cmLibraryRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "LIBRARY";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Set a name for the Library."; + return "Set a name for a library."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "LIBRARY(libraryname);"; + return + "LIBRARY(libraryname)"; } }; diff --git a/Source/cmLinkDirectoriesRule.h b/Source/cmLinkDirectoriesRule.h index 87df9d534..b30318748 100644 --- a/Source/cmLinkDirectoriesRule.h +++ b/Source/cmLinkDirectoriesRule.h @@ -1,39 +1,84 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmLinkDirectoriesRule_h #define cmLinkDirectoriesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmLinkDirectoriesRule + * \brief Define a list of directories containing files to link. + * + * cmLinkDirectoriesRule is used to specify a list + * of directories containing files to link into executable(s). + * Note that the rule supports the use of CMake built-in variables + * such as CMAKE_BINARY_DIR and CMAKE_SOURCE_DIR. + */ class cmLinkDirectoriesRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmLinkDirectoriesRule; + return new cmLinkDirectoriesRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ virtual bool IsInherited() { return true; } - - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "LINK_DIRECTORIES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Specify link directories."; + return "Specify link directories."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Specify the paths to the libraries that will be linked in.\n" - "LINK_DIRECTORIES(directory1 directory2 ...);\n" - "The directories can use built in definitions like \n" - "CMAKE_BINARY_DIR and CMAKE_SOURCE_DIR."; + return + "Specify the paths to the libraries that will be linked in.\n" + "LINK_DIRECTORIES(directory1 directory2 ...)\n" + "The directories can use built in definitions like \n" + "CMAKE_BINARY_DIR and CMAKE_SOURCE_DIR."; } }; diff --git a/Source/cmLinkLibrariesRule.h b/Source/cmLinkLibrariesRule.h index c98e3fbea..ea8c36e29 100644 --- a/Source/cmLinkLibrariesRule.h +++ b/Source/cmLinkLibrariesRule.h @@ -1,42 +1,86 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmLinkLibrariesRule_h #define cmLinkLibrariesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmLinkLibrariesRule + * \brief Specify a list of libraries to link into executables. + * + * cmLinkLibrariesRule is used to specify a list of libraries to link + * into executable(s) or shared objects. The names of the libraries + * should be those defined by the LIBRARY(library) rule(s). + */ class cmLinkLibrariesRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmLinkLibrariesRule; + return new cmLinkLibrariesRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - virtual bool IsInherited() { return true; } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} - - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "LINK_LIBRARIES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return - "Specify a list of libraries to be linked into executables or \n" - "shared objects."; + return + "Specify a list of libraries to be linked into executables or \n" + "shared objects."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Specify a list of libraries to be linked into executables or \n" - "shared objects. This rule is passed down to all other rules." - "LINK_LIBRARIES(library1 library2).\n" - "The library name should be the same as the name used in the\n" - "LIBRARY(library) rule."; + return + "Specify a list of libraries to be linked into executables or \n" + "shared objects. This rule is passed down to all other rules." + "LINK_LIBRARIES(library1 library2).\n" + "The library name should be the same as the name used in the\n" + "LIBRARY(library) rule."; } }; diff --git a/Source/cmProjectRule.h b/Source/cmProjectRule.h index 22ebf614a..ef9cb2d1a 100644 --- a/Source/cmProjectRule.h +++ b/Source/cmProjectRule.h @@ -1,35 +1,75 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmProjectRule_h #define cmProjectRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmProjectRule + * \brief Specify the name for this build project. + * + * cmProjectRule is used to specify a name for this build project. + * It is defined once per set of CMakeList.txt files (including + * all subdirectories). + */ class cmProjectRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmProjectRule; + return new cmProjectRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - // This is the name used in the input file. - virtual const char* GetName() { return "PROJECT";} + /** + * The name of the rule as specified in CMakeList.txt. + */ + virtual const char* GetName() {return "PROJECT";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Set a name for the entire project. One argument."; + return "Set a name for the entire project. One argument."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Set the name for the entire project. This takes one argument.\n" - "PROJECT(projectname);"; + return + "Set the name for the entire project. This takes one argument.\n" + "PROJECT(projectname)"; } }; diff --git a/Source/cmSourceFilesRequireRule.h b/Source/cmSourceFilesRequireRule.h index 4a7d2c0d1..845c72f32 100644 --- a/Source/cmSourceFilesRequireRule.h +++ b/Source/cmSourceFilesRequireRule.h @@ -1,37 +1,78 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmSourceFilesRequireRule_h #define cmSourceFilesRequireRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmSourceFilesRequireRule + * \brief Add additional sources to the build if certain required files + * or CMake variables are defined. + * + * cmSourceFilesRequireRule conditionally adds source files to the + * build if the specified files of CMake variables are defined. + * This rule can be used to add source files that depend on external + * packages or operating system features. +*/ class cmSourceFilesRequireRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmSourceFilesRequireRule; + return new cmSourceFilesRequireRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "SOURCE_FILES_REQUIRE";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add a list of source files."; + return "Add a list of source files if the required variables are set."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "SOURCE_FILES(file1 file2 ...)"; + return + "SOURCE_FILES_REQUIRE(var1 var2 ... SOURCES_BEGIN file1 file2 ...)"; } }; - #endif diff --git a/Source/cmSourceFilesRule.h b/Source/cmSourceFilesRule.h index 7e4151a01..c41b3a68f 100644 --- a/Source/cmSourceFilesRule.h +++ b/Source/cmSourceFilesRule.h @@ -1,34 +1,78 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmSourceFilesRule_h #define cmSourceFilesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmSourceFilesRule + * \brief Add source files to the build. + * + * cmSourceFilesRule adds source files to the build. The source + * files will be added to the current library (if defined by the + * LIBRARY(library) rule. Use this rule to add source files not + * dependent on other packages (use SOURCE_FILES_REQUIRED() to add + * dependent source files). + * + * \sa cmSourceFilesRequireRule + */ class cmSourceFilesRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmSourceFilesRule; + return new cmSourceFilesRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "SOURCE_FILES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add a list of source files."; + return "Add a list of source files."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "SOURCE_FILES(file1 file2 ...)"; + return + "SOURCE_FILES(file1 file2 ...)"; } }; diff --git a/Source/cmSubdirRule.h b/Source/cmSubdirRule.h index 4a6b1665a..1e081e866 100644 --- a/Source/cmSubdirRule.h +++ b/Source/cmSubdirRule.h @@ -1,37 +1,77 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmSubdirRule_h #define cmSubdirRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmSubdirRule + * \brief Specify a list of subdirectories to build. + * + * cmSubdirRule specifies a list of subdirectories to process + * by CMake. For each subdirectory listed, CMake will descend + * into that subdirectory and process any CMakeLists.txt found. + */ class cmSubdirRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmSubdirRule; + return new cmSubdirRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - // This is the name used in the input file. + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "SUBDIRS";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add a list of subdirectories to the build."; + return "Add a list of subdirectories to the build."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Add a list of subdirectories to the build.\n" - "SUBDIRS(dir1 dir2 ...)\n" - "This will cause any CMakeLists.txt files in the sub directories\n" - "to be parsed by cmake."; + return + "Add a list of subdirectories to the build.\n" + "SUBDIRS(dir1 dir2 ...)\n" + "This will cause any CMakeLists.txt files in the sub directories\n" + "to be processed by CMake."; } }; diff --git a/Source/cmTestsRule.h b/Source/cmTestsRule.h index b0a7b0921..6ccfdab6d 100644 --- a/Source/cmTestsRule.h +++ b/Source/cmTestsRule.h @@ -1,34 +1,77 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmTestsRule_h #define cmTestsRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmTestsRule + * \brief Specify a list of executables to build and which are + * identified as tests. + * + * cmTestsRule specifies a list of executables to be built by CMake. + * These executables are identified as tests. This rule is similar to + * the EXECUTABLES() rule. + * + * \sa cmExecutablesRule + */ class cmTestsRule : public cmRuleMaker { public: + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmTestsRule; + return new cmTestsRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - // This is the name used in the input file. - virtual const char* GetName() { return "TESTS";} + /** + * The name of the rule as specified in CMakeList.txt. + */ + virtual const char* GetName() {return "TESTS";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add a list of executables files that are run as tests."; + return "Add a list of executables files that are run as tests."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "TESTS(file1 file2 ...)"; + return + "TESTS(file1 file2 ...)"; } }; diff --git a/Source/cmUnixDefinesRule.h b/Source/cmUnixDefinesRule.h index 0c216b0e6..fcf0170f1 100644 --- a/Source/cmUnixDefinesRule.h +++ b/Source/cmUnixDefinesRule.h @@ -1,37 +1,85 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmUnixDefinesRule_h #define cmUnixDefinesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmUnixDefinesRule + * \brief Specify a list of compiler defines for Unix platforms. + * + * cmUnixDefinesRule specifies a list of compiler defines for Unix platforms + * only. This defines will be added to the compile command. + */ class cmUnixDefinesRule : public cmRuleMaker { public: + /** + * Constructor. + */ cmUnixDefinesRule(); + + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmUnixDefinesRule; + return new cmUnixDefinesRule; } - // This is called when the rule is firt encountered in - // the input file - virtual bool Invoke(std::vector& args); - virtual void FinalPass() { } - virtual bool IsInherited() { return true; } - // This is the name used in the input file. + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ + virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ + virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} + + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "UNIX_DEFINES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add -D flags to the command line for unix only."; + return "Add -D flags to the command line for Unix only."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Add -D flags to the command line for unix only.\n" - "UNIX_DEFINES(-DFOO -DBAR);"; + return + "Add -D flags to the command line for Unix only.\n" + "UNIX_DEFINES(-DFOO -DBAR)"; } }; diff --git a/Source/cmUnixLibrariesRule.h b/Source/cmUnixLibrariesRule.h index 8b8d5e0fa..fa04a2ba9 100644 --- a/Source/cmUnixLibrariesRule.h +++ b/Source/cmUnixLibrariesRule.h @@ -1,36 +1,84 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmUnixLibrariesRule_h #define cmUnixLibrariesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmUnixLibrariesRule + * \brief Specify a list of libraries for Unix platforms. + * + * cmUnixLibrariesRule specifies a list of libraries for Unix platforms + * only. Both user and system libraries can be listed. + */ class cmUnixLibrariesRule : public cmRuleMaker { public: + /** + * Constructor. + */ cmUnixLibrariesRule(); + + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmUnixLibrariesRule; + return new cmUnixLibrariesRule; } - // This is called when the rule is firt encountered in - // the input file - virtual bool Invoke(std::vector& args); - virtual void FinalPass() { } - virtual bool IsInherited() { return true; } - // This is the name used in the input file. - virtual const char* GetName() { return "UNIX_LIBRARIES";} + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ + virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ + virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} + + /** + * The name of the rule as specified in CMakeList.txt. + */ + virtual const char* GetName() {return "UNIX_LIBRARIES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add libraries that are only used for unix programs."; + return "Add libraries that are only used for Unix programs."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "UNIX_LIBRARIES(library -lm ...);"; + return + "UNIX_LIBRARIES(library -lm ...)"; } }; diff --git a/Source/cmWin32DefinesRule.h b/Source/cmWin32DefinesRule.h index 5f81ee8c8..acb30191b 100644 --- a/Source/cmWin32DefinesRule.h +++ b/Source/cmWin32DefinesRule.h @@ -1,36 +1,85 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmWin32DefinesRule_h #define cmWin32DefinesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmWin32DefinesRule + * \brief Specify a list of compiler defines for Win32 platforms. + * + * cmWin32DefinesRule specifies a list of compiler defines for Win32 platforms + * only. This defines will be added to the compile command. + */ class cmWin32DefinesRule : public cmRuleMaker { public: + /** + * Constructor. + */ cmWin32DefinesRule(); + + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmWin32DefinesRule; + return new cmWin32DefinesRule; } - // This is called when the rule is firt encountered in - // the input file + + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ virtual void FinalPass() { } - virtual bool IsInherited() { return true; } - // This is the name used in the input file. - virtual const char* GetName() { return "WIN32_DEFINES";} + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} + + /** + * The name of the rule as specified in CMakeList.txt. + */ + virtual const char* GetName() {return "WIN32_DEFINES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Add -D define flags to command line for win32 environments."; + return "Add -D define flags to command line for Win32 environments."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Add -D define flags to command line for win32 environments.\n" - "WIN32_DEFINES(-DFOO -DBAR ...);"; + return + "Add -D define flags to command line for Win32 environments.\n" + "WIN32_DEFINES(-DFOO -DBAR ...)"; } }; diff --git a/Source/cmWin32LibrariesRule.h b/Source/cmWin32LibrariesRule.h index 928b5f056..d08bc3f48 100644 --- a/Source/cmWin32LibrariesRule.h +++ b/Source/cmWin32LibrariesRule.h @@ -1,39 +1,84 @@ +/*========================================================================= + + Program: Insight Segmentation & Registration Toolkit + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) 2000 National Library of Medicine + All rights reserved. + + See COPYRIGHT.txt for copyright details. + +=========================================================================*/ #ifndef cmWin32LibrariesRule_h #define cmWin32LibrariesRule_h #include "cmStandardIncludes.h" #include "cmRuleMaker.h" - +/** \class cmWin32LibrariesRule + * \brief Specify a list of libraries for Win32 platforms. + * + * cmWin32LibrariesRule specifies a list of libraries for Win32 platforms + * only. Both user and system libraries can be listed. + */ class cmWin32LibrariesRule : public cmRuleMaker { public: + /** + * Constructor. + */ cmWin32LibrariesRule(); + + /** + * This is a virtual constructor for the rule. + */ virtual cmRuleMaker* Clone() { - return new cmWin32LibrariesRule ; + return new cmWin32LibrariesRule ; } - // This is called when the rule is firt encountered in - // the input file - virtual bool Invoke(std::vector& args); - virtual void FinalPass() { } - virtual bool IsInherited() { return true; } - // This is the name used in the input file. + /** + * This is called when the rule is first encountered in + * the CMakeLists.txt file. + */ + virtual bool Invoke(std::vector& args); + + /** + * This is called at the end after all the information + * specified by the rules is accumulated. + */ + virtual void FinalPass() { } + + /** + * This determines if the rule gets propagated down + * to makefiles located in subdirectories. + */ + virtual bool IsInherited() {return true;} + + /** + * The name of the rule as specified in CMakeList.txt. + */ virtual const char* GetName() { return "WIN32_LIBRARIES";} + + /** + * Succinct documentation. + */ virtual const char* TerseDocumentation() { - return "Set a name for the library to be built. One argument."; + return "Add libraries that are only used for Win32 programs."; } - // Return full documentation for the rule + /** + * More documentation. + */ virtual const char* FullDocumentation() { - return - "Set the name for the library in this makefile. \n" - "This takes one argument.\n" - "LIBRARY(libraryname);\n" - "There can be only one library per CMakeLists.txt file.\n"; + return + "WIN32_LIBRARIES(library -lm ...)"; } };