cmLocalCommonGenerator.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing for details. */
  3. #ifndef cmLocalCommonGenerator_h
  4. #define cmLocalCommonGenerator_h
  5. #include <cmConfigure.h>
  6. #include <string>
  7. #include "cmLocalGenerator.h"
  8. class cmGeneratorTarget;
  9. class cmGlobalGenerator;
  10. class cmMakefile;
  11. /** \class cmLocalCommonGenerator
  12. * \brief Common infrastructure for Makefile and Ninja local generators.
  13. */
  14. class cmLocalCommonGenerator : public cmLocalGenerator
  15. {
  16. public:
  17. cmLocalCommonGenerator(cmGlobalGenerator* gg, cmMakefile* mf,
  18. std::string const& wd);
  19. ~cmLocalCommonGenerator() CM_OVERRIDE;
  20. std::string const& GetConfigName() { return this->ConfigName; }
  21. std::string GetWorkingDirectory() const { return this->WorkingDirectory; }
  22. std::string GetTargetFortranFlags(cmGeneratorTarget const* target,
  23. std::string const& config) CM_OVERRIDE;
  24. protected:
  25. std::string WorkingDirectory;
  26. void SetConfigName();
  27. std::string ConfigName;
  28. friend class cmCommonTargetGenerator;
  29. };
  30. #endif