summaryrefslogtreecommitdiffstats
path: root/Source/cmLinkLibrariesRule.h
diff options
context:
space:
mode:
authorWill Schroeder <will.schroeder@kitware.com>2001-01-11 13:04:28 (GMT)
committerWill Schroeder <will.schroeder@kitware.com>2001-01-11 13:04:28 (GMT)
commit5faa3b9f289ac18884f05ffb66a17908d1982487 (patch)
treee45894f6c3a7699011dd37eeeb3c44985f09cbe1 /Source/cmLinkLibrariesRule.h
parentbe6b895a3a523729a3d497f7c100fb140044b538 (diff)
downloadCMake-5faa3b9f289ac18884f05ffb66a17908d1982487.zip
CMake-5faa3b9f289ac18884f05ffb66a17908d1982487.tar.gz
CMake-5faa3b9f289ac18884f05ffb66a17908d1982487.tar.bz2
ENH:Added documentation; clean-up
Diffstat (limited to 'Source/cmLinkLibrariesRule.h')
-rw-r--r--Source/cmLinkLibrariesRule.h78
1 files changed, 61 insertions, 17 deletions
diff --git a/Source/cmLinkLibrariesRule.h b/Source/cmLinkLibrariesRule.h
index c98e3fb..ea8c36e 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<std::string>& 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.";
}
};