1 | #ifndef __cmt_generator_h__ |
---|
2 | #define __cmt_generator_h__ |
---|
3 | |
---|
4 | #include "cmt_parser.h" |
---|
5 | #include "cmt_constituent.h" |
---|
6 | |
---|
7 | class Generator |
---|
8 | { |
---|
9 | public: |
---|
10 | // Build the MSDEV workspace file |
---|
11 | static int build_msdev_workspace (const Constituent::ConstituentVector& constituents); |
---|
12 | |
---|
13 | // Build the MSDEV project file (one per constituent) |
---|
14 | static int build_msdev (const Constituent& constituent); |
---|
15 | |
---|
16 | // Build the Make setup file |
---|
17 | static void build_make_setup (const cmt_string& package); |
---|
18 | |
---|
19 | // Build the constituents.make file |
---|
20 | static void build_constituents_makefile (const cmt_string& package); |
---|
21 | |
---|
22 | // Build the makefile fragment for one constituent |
---|
23 | static int build_constituent_makefile (const Constituent& constituent); |
---|
24 | static void build_constituent_makefile (const cmt_string& name); |
---|
25 | |
---|
26 | static void build_default_makefile (); |
---|
27 | |
---|
28 | // Build the dependencies for one module |
---|
29 | static cmt_string build_dependencies (const cmt_string& file_name); |
---|
30 | static void build_dependencies (const cmt_string& name, |
---|
31 | int argc, char* argv[]); |
---|
32 | |
---|
33 | // Build prototype file for one module |
---|
34 | static void build_prototype (const cmt_string& file_name); |
---|
35 | |
---|
36 | // Build README.html file |
---|
37 | static void build_readme (const CmtSystem::cmt_string_vector& arguments); |
---|
38 | |
---|
39 | // Build def files for Windows shared libraries |
---|
40 | static void build_windefs (const cmt_string& library_name); |
---|
41 | |
---|
42 | // Commit changes made to a temporary output file. |
---|
43 | static void commit (const cmt_string& name); |
---|
44 | // Commit changes made to a temporary output file only if the |
---|
45 | // differences are non null. |
---|
46 | static void check (const cmt_string& name); |
---|
47 | }; |
---|
48 | |
---|
49 | #endif |
---|