Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

Generator Class Reference

Generic command interface to be used by the cmt command driver. More...

#include <cmt_generator.h>

List of all members.

Static Public Member Functions

int build_msdev_workspace (const Constituent::ConstituentVector &constituents)
int build_msdev (const Constituent &constituent)
int build_vsnet_workspace (const Constituent::ConstituentVector &constituents)
int build_vsnet (const Constituent &constituent)
void build_make_setup (const cmt_string &package)
void build_constituents_makefile (const cmt_string &package, const CmtSystem::cmt_string_vector &arguments)
int build_constituent_makefile (const Constituent &constituent)
void build_constituent_makefile (const cmt_string &name)
void build_default_makefile ()
void build_dependencies (const CmtSystem::cmt_string_vector &arguments)
void build_prototype (const cmt_string &file_name)
void build_readme (const CmtSystem::cmt_string_vector &arguments)
void build_windefs (const cmt_string &library_name)


Detailed Description

Generic command interface to be used by the cmt command driver.

Definition at line 139 of file cmt_generator.h.


Member Function Documentation

void Generator::build_constituent_makefile const cmt_string name  )  [static]
 

Definition at line 715 of file cmt_generator.cxx.

References build_constituent_makefile(), and Constituent::find().

00716 {
00717   const Constituent* constituent = Constituent::find (name);
00718   if (constituent != 0) build_constituent_makefile (*constituent);
00719 }

int Generator::build_constituent_makefile const Constituent constituent  )  [static]
 

Definition at line 694 of file cmt_generator.cxx.

References Application, ApplicationContext, DocumentGenerator::build(), LibraryGenerator::build(), Document, DocumentContext, Library, LibraryContext, and Constituent::type.

Referenced by build_constituent_makefile(), Constituent::build_makefile(), and Cmt::do_build_constituent_makefile().

00695 {
00696   const cmt_string& package = Cmt::get_current_package ();
00697 
00698   switch (constituent.type)
00699     {
00700     case Application:
00701       ApplicationContext.build (package, constituent);
00702       break;
00703     case Library:
00704       LibraryContext.build (package, constituent);
00705       break;
00706     case Document:
00707       DocumentContext.build (package, constituent);
00708       break;
00709     }
00710 
00711   return (0);
00712 }

void Generator::build_constituents_makefile const cmt_string package,
const CmtSystem::cmt_string_vector arguments
[static]
 

Definition at line 687 of file cmt_generator.cxx.

References ConstituentsMakefileGenerator::build(), CmtSystem::cmt_string_vector, and ConstituentsMakefileContext.

Referenced by Cmt::do_build_constituents_makefile().

00689 {
00690   ConstituentsMakefileContext.build (package, arguments);
00691 }

void Generator::build_default_makefile  )  [static]
 

Definition at line 722 of file cmt_generator.cxx.

References DefaultMakefileGenerator::build(), and DefaultMakefileContext.

Referenced by Cmt::do_config(), Cmt::do_create(), and Cmt::do_do().

00723 {
00724   DefaultMakefileContext.build ();
00725 }

void Generator::build_dependencies const CmtSystem::cmt_string_vector arguments  )  [static]
 

Definition at line 728 of file cmt_generator.cxx.

References DependencyGenerator::build(), CmtSystem::cmt_string_vector, and DependencyContext.

Referenced by Cmt::do_build_dependencies().

00729 {
00730   DependencyContext.build (arguments);
00731 }

void Generator::build_make_setup const cmt_string package  )  [static]
 

Definition at line 681 of file cmt_generator.cxx.

References MakeSetupGenerator::build(), and MakeSetupContext.

Referenced by Cmt::do_build_make_setup().

00682 {
00683   MakeSetupContext.build (package);
00684 }

int Generator::build_msdev const Constituent constituent  )  [static]
 

Definition at line 663 of file cmt_generator.cxx.

References MSDEVGenerator::build_project(), and MSDEVContext.

Referenced by Constituent::build_msdev_file().

00664 {
00665   return (MSDEVContext.build_project (constituent));
00666 }

int Generator::build_msdev_workspace const Constituent::ConstituentVector constituents  )  [static]
 

Definition at line 657 of file cmt_generator.cxx.

References MSDEVGenerator::build_workspace(), Constituent::ConstituentVector, and MSDEVContext.

Referenced by Constituent::build_all_msdev_files().

00658 {
00659   return (MSDEVContext.build_workspace (constituents));
00660 }

void Generator::build_prototype const cmt_string file_name  )  [static]
 

Definition at line 734 of file cmt_generator.cxx.

References PrototypeGenerator::build(), and PrototypeContext.

Referenced by Cmt::do_build_prototype().

00735 {
00736   PrototypeContext.build (file_name);
00737 }

void Generator::build_readme const CmtSystem::cmt_string_vector arguments  )  [static]
 

Definition at line 740 of file cmt_generator.cxx.

References ReadmeGenerator::build(), CmtSystem::cmt_string_vector, and ReadmeContext.

Referenced by Cmt::do_build_readme().

00741 {
00742   ReadmeContext.build (arguments);
00743 }

int Generator::build_vsnet const Constituent constituent  )  [static]
 

Definition at line 675 of file cmt_generator.cxx.

References VSNETGenerator::build_project(), and VSNETContext.

Referenced by Constituent::build_vsnet_file().

00676 {
00677   return (VSNETContext.build_project (constituent));
00678 }

int Generator::build_vsnet_workspace const Constituent::ConstituentVector constituents  )  [static]
 

Definition at line 669 of file cmt_generator.cxx.

References VSNETGenerator::build_workspace(), Constituent::ConstituentVector, and VSNETContext.

Referenced by Constituent::build_all_vsnet_files().

00670 {
00671   return (VSNETContext.build_workspace (constituents));
00672 }

void Generator::build_windefs const cmt_string library_name  )  [static]
 

Definition at line 811 of file cmt_generator.cxx.

References CmtSystem::basename(), CmtSystem::cd(), CmtSystem::dirname(), CmtSystem::get_dot_suffix(), and PAwk::run().

Referenced by Cmt::do_build_windefs().

00812 {
00813   cmt_string bin;
00814   cmt_string name;
00815   cmt_string suffix;
00816 
00817   CmtSystem::dirname (library_name, bin);
00818   CmtSystem::get_dot_suffix (library_name, suffix);
00819   CmtSystem::basename (library_name, suffix, name);
00820   
00821   if (!CmtSystem::cd (bin)) return;
00822   
00823   cmt_string text;
00824   cmt_string command;
00825   
00826   command = "dumpbin /symbols ";
00827   command += library_name;
00828         
00829   WinDefAwk filter (name);
00830   
00831   filter.run (command, "SECT");
00832 }


The documentation for this class was generated from the following files:
Generated on Mon May 2 10:25:38 2005 for CMT by doxygen 1.3.5