diff options
author | Andy Cedilnik <andy.cedilnik@kitware.com> | 2004-04-23 20:20:36 (GMT) |
---|---|---|
committer | Andy Cedilnik <andy.cedilnik@kitware.com> | 2004-04-23 20:20:36 (GMT) |
commit | aff8c7bcd6fe751974c2e82147d1a29928236209 (patch) | |
tree | 9be11469b702704fb44204b91ca5e50e6d1a9a41 /Source/cmGetDirectoryPropertyCommand.h | |
parent | 0b7d154ebd1e2ab713a8f5018e26c4b0d8b823c4 (diff) | |
download | CMake-aff8c7bcd6fe751974c2e82147d1a29928236209.zip CMake-aff8c7bcd6fe751974c2e82147d1a29928236209.tar.gz CMake-aff8c7bcd6fe751974c2e82147d1a29928236209.tar.bz2 |
ENH: Add GET/SET_DIRECTORY_PROPERTY/PROPERTIES commands so that we can change include directories and get all sorts of things. Closes Bug #25 - Get_CMAKE_PROPERTIES
Diffstat (limited to 'Source/cmGetDirectoryPropertyCommand.h')
-rw-r--r-- | Source/cmGetDirectoryPropertyCommand.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Source/cmGetDirectoryPropertyCommand.h b/Source/cmGetDirectoryPropertyCommand.h new file mode 100644 index 0000000..44297e3 --- /dev/null +++ b/Source/cmGetDirectoryPropertyCommand.h @@ -0,0 +1,68 @@ +/*========================================================================= + + Program: CMake - Cross-Platform Makefile Generator + Module: $RCSfile$ + Language: C++ + Date: $Date$ + Version: $Revision$ + + Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. + See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ +#ifndef cmGetDirectoryPropertyCommand_h +#define cmGetDirectoryPropertyCommand_h + +#include "cmCommand.h" + +class cmGetDirectoryPropertyCommand : public cmCommand +{ +public: + virtual cmCommand* Clone() + { + return new cmGetDirectoryPropertyCommand; + } + + /** + * This is called when the command is first encountered in + * the input file. + */ + virtual bool InitialPass(std::vector<std::string> const& args); + + /** + * The name of the command as specified in CMakeList.txt. + */ + virtual const char* GetName() { return "GET_DIRECTORY_PROPERTY";} + + /** + * Succinct documentation. + */ + virtual const char* GetTerseDocumentation() + { + return "Get a property of the directory."; + } + + /** + * Longer documentation. + */ + virtual const char* GetFullDocumentation() + { + return + " GET_DIRECTORY_PROPERTY(VAR property)\n" + "Get a property from the Directory. The value of the property is" + "stored in the variable VAR. If the property is not found," + "CMake will report an error. The properties include: VARIABLES, " + "CACHE_VARIABLES, COMMANDS, MACROS, INCLUDE_DIRECTORIES, " + "LINK_DIRECTORIES, and INCLUDE_REGULAR_EXPRESSION."; + } + + cmTypeMacro(cmGetDirectoryPropertyCommand, cmCommand); +}; + + + +#endif |