#ifndef __cmt_generator_h__ #define __cmt_generator_h__ #include "cmt_parser.h" #include "cmt_constituent.h" class Generator { public: // Build the MSDEV workspace file static int build_msdev_workspace (const Constituent::ConstituentVector& constituents); // Build the MSDEV project file (one per constituent) static int build_msdev (const Constituent& constituent); // Build the Make setup file static void build_make_setup (const cmt_string& package); // Build the constituents.make file static void build_constituents_makefile (const cmt_string& package); // Build the makefile fragment for one constituent static int build_constituent_makefile (const Constituent& constituent); static void build_constituent_makefile (const cmt_string& name); static void build_default_makefile (); // Build the dependencies for one module static cmt_string build_dependencies (const cmt_string& file_name); static void build_dependencies (const cmt_string& name, int argc, char* argv[]); // Build prototype file for one module static void build_prototype (const cmt_string& file_name); // Build README.html file static void build_readme (const CmtSystem::cmt_string_vector& arguments); // Build def files for Windows shared libraries static void build_windefs (const cmt_string& library_name); // Commit changes made to a temporary output file. static void commit (const cmt_string& name); // Commit changes made to a temporary output file only if the // differences are non null. static void check (const cmt_string& name); }; #endif