From 53dd41451d4cd5f945867ed7a0b1e3015b130aff Mon Sep 17 00:00:00 2001 From: Bill Hoffman Date: Mon, 17 Sep 2001 13:58:07 -0400 Subject: ENH: add Use mangled mesa command --- Source/cmUseMangledMesaCommand.h | 66 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 Source/cmUseMangledMesaCommand.h (limited to 'Source/cmUseMangledMesaCommand.h') diff --git a/Source/cmUseMangledMesaCommand.h b/Source/cmUseMangledMesaCommand.h new file mode 100644 index 0000000000..4fbf1e4bd8 --- /dev/null +++ b/Source/cmUseMangledMesaCommand.h @@ -0,0 +1,66 @@ +#ifndef cmUseMangledMesaCommand_h +#define cmUseMangledMesaCommand_h + +#include "cmStandardIncludes.h" +#include "cmCommand.h" + +/** \class cmUseMangledMesaCommand + * \brief Create Tcl Wrappers for VTK classes. + * + * cmUseMangledMesaCommand is used to define a CMake variable include + * path location by specifying a file and list of directories. + */ +class cmUseMangledMesaCommand : public cmCommand +{ +public: + /** + * This is a virtual constructor for the command. + */ + virtual cmCommand* Clone() + { + return new cmUseMangledMesaCommand; + } + + /** + * This is called when the command is first encountered in + * the CMakeLists.txt file. + */ + virtual bool InitialPass(std::vector& args); + + /** + * The name of the command as specified in CMakeList.txt. + */ + virtual const char* GetName() { return "USE_MANGLED_MESA";} + + /** + * Succinct documentation. + */ + virtual const char* GetTerseDocumentation() + { + return "Create copies of mesa headers for use in combination with system gl."; + } + + /** + * More documentation. + */ + virtual const char* GetFullDocumentation() + { + return + "USE_MANGLED_MESA(\"path to gl_mangle.h\"" + " \"directory for output\" )"; + } + +protected: + void CopyAndFullPathMesaHeader(const char* source, + const char* outdir); +private: + std::vector m_WrapClasses; + std::vector m_WrapHeaders; + std::string m_LibraryName; + std::string m_SourceList; + std::vector m_Commands; +}; + + + +#endif -- cgit v1.2.1