cmMakeDirectoryCommand.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /*=========================================================================
  2. Program: CMake - Cross-Platform Makefile Generator
  3. Module: $RCSfile$
  4. Language: C++
  5. Date: $Date$
  6. Version: $Revision$
  7. Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
  8. See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
  9. This software is distributed WITHOUT ANY WARRANTY; without even
  10. the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  11. PURPOSE. See the above copyright notices for more information.
  12. =========================================================================*/
  13. #ifndef cmMakeDirectoryCommand_h
  14. #define cmMakeDirectoryCommand_h
  15. #include "cmStandardIncludes.h"
  16. #include "cmCommand.h"
  17. /** \class cmMakeDirectoryCommand
  18. * \brief Specify auxiliary source code directories.
  19. *
  20. * cmMakeDirectoryCommand specifies source code directories
  21. * that must be built as part of this build process. This directories
  22. * are not recursively processed like the SUBDIR command (cmSubdirCommand).
  23. * A side effect of this command is to create a subdirectory in the build
  24. * directory structure.
  25. */
  26. class cmMakeDirectoryCommand : public cmCommand
  27. {
  28. public:
  29. /**
  30. * This is a virtual constructor for the command.
  31. */
  32. virtual cmCommand* Clone()
  33. {
  34. return new cmMakeDirectoryCommand;
  35. }
  36. /**
  37. * This is called when the command is first encountered in
  38. * the CMakeLists.txt file.
  39. */
  40. virtual bool InitialPass(std::vector<std::string> const& args);
  41. /**
  42. * The name of the command as specified in CMakeList.txt.
  43. */
  44. virtual const char* GetName() { return "MAKE_DIRECTORY";}
  45. /**
  46. * Succinct documentation.
  47. */
  48. virtual const char* GetTerseDocumentation()
  49. {
  50. return "Create a directory in the build tree if it does not exist.\n"
  51. "Parent directories will be created if the do not exist..";
  52. }
  53. /**
  54. * More documentation.
  55. */
  56. virtual const char* GetFullDocumentation()
  57. {
  58. return
  59. "MAKE_DIRECTORY(directory)";
  60. }
  61. cmTypeMacro(cmMakeDirectoryCommand, cmCommand);
  62. };
  63. #endif