FIX: stupid pb fixed (close to being medieval'ed by The Ken)
[cmake.git] / Source / cmITKWrapTclCommand.h
blob1281a18461b9f185bf2d88a8732bcf543e01b3f5
1 /*=========================================================================
3 Program: Insight Segmentation & Registration Toolkit
4 Module: $RCSfile: cmITKWrapTclCommand.h,v $
5 Language: C++
6 Date: $Date: 2002-07-26 14:15:04 $
7 Version: $Revision: 1.2 $
9 Copyright (c) 2002 Insight Consortium. All rights reserved.
10 See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
17 #ifndef cmITKWrapTclCommand_h
18 #define cmITKWrapTclCommand_h
20 #include "cmStandardIncludes.h"
21 #include "cmCommand.h"
23 class cmMakeDepend;
25 /** \class cmITKWrapTclCommand
26 * \brief Run CABLE to generate Tcl wrappers.
28 * cmITKWrapTclCommand runs CABLE on the specified configuration files
29 * and combines them into a package on a given target.
31 class cmITKWrapTclCommand : public cmCommand
33 public:
34 cmITKWrapTclCommand();
35 ~cmITKWrapTclCommand();
37 /** This is a virtual constructor for the command. */
38 virtual cmCommand* Clone() { return new cmITKWrapTclCommand; }
40 /** This is called when the command is first encountered in
41 * the CMakeLists.txt file. */
42 virtual bool InitialPass(std::vector<std::string> const& args);
44 /** The name of the command as specified in CMakeList.txt. */
45 virtual const char* GetName() {return "ITK_WRAP_TCL";}
47 /** Succinct documentation. */
48 virtual const char* GetTerseDocumentation()
49 { return "Run CABLE to generate Tcl wrappers."; }
51 /** More documentation. */
52 virtual const char* GetFullDocumentation()
54 return
55 "ITK_WRAP_TCL(target-name config-file1 [config-file2 ...])\n"
56 "Run CABLE on all the configuration files to generate Tcl wrappers.\n"
57 "The generated sources are added to a target of the given name.";
60 cmTypeMacro(cmITKWrapTclCommand, cmCommand);
61 protected:
62 cmStdString m_TargetName;
63 cmTarget* m_Target;
65 bool CreateCableRule(const char* configFile);
66 std::string GetCableFromCache() const;
68 cmMakeDepend* m_MakeDepend;
71 #endif