cmUnixMakefileGenerator.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*=========================================================================
  2. Program: Insight Segmentation & Registration Toolkit
  3. Module: $RCSfile$
  4. Language: C++
  5. Date: $Date$
  6. Version: $Revision$
  7. Copyright (c) 2000 National Library of Medicine
  8. All rights reserved.
  9. See COPYRIGHT.txt for copyright details.
  10. =========================================================================*/
  11. #ifndef cmUnixMakefileGenerator_h
  12. #define cmUnixMakefileGenerator_h
  13. #include "cmMakefile.h"
  14. #include "cmMakefileGenerator.h"
  15. /** \class cmUnixMakefileGenerator
  16. * \brief Write a Unix makefiles.
  17. *
  18. * cmUnixMakefileGenerator produces a Unix makefile from its
  19. * member m_Makefile.
  20. */
  21. class cmUnixMakefileGenerator : public cmMakefileGenerator
  22. {
  23. public:
  24. /**
  25. * Produce the makefile (in this case a Unix makefile).
  26. */
  27. virtual void GenerateMakefile();
  28. /**
  29. * Output the depend information for all the classes
  30. * in the makefile. These would have been generated
  31. * by the class cmMakeDepend.
  32. */
  33. void OutputObjectDepends(std::ostream&);
  34. protected:
  35. void OutputMakefile(const char* file);
  36. void OutputMakeFlags(std::ostream&);
  37. void OutputVerbatim(std::ostream&);
  38. void OutputTargetRules(std::ostream& fout);
  39. void OutputLinkLibs(std::ostream& fout);
  40. void OutputTargets(std::ostream&);
  41. void OutputSubDirectoryRules(std::ostream&);
  42. void OutputDependInformation(std::ostream&);
  43. void OutputDependencies(std::ostream&);
  44. void OutputCustomRules(std::ostream&);
  45. };
  46. #endif