cmSetTargetPropertiesCommand.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  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 cmSetTargetsPropertiesCommand_h
  4. #define cmSetTargetsPropertiesCommand_h
  5. #include "cmConfigure.h" // IWYU pragma: keep
  6. #include <string>
  7. #include <vector>
  8. #include <cm/memory>
  9. #include "cmCommand.h"
  10. class cmExecutionStatus;
  11. class cmMakefile;
  12. class cmSetTargetPropertiesCommand : public cmCommand
  13. {
  14. public:
  15. std::unique_ptr<cmCommand> Clone() override
  16. {
  17. return cm::make_unique<cmSetTargetPropertiesCommand>();
  18. }
  19. /**
  20. * This is called when the command is first encountered in
  21. * the input file.
  22. */
  23. bool InitialPass(std::vector<std::string> const& args,
  24. cmExecutionStatus& status) override;
  25. /**
  26. * Used by this command and cmSetPropertiesCommand
  27. */
  28. static bool SetOneTarget(const std::string& tname,
  29. std::vector<std::string>& propertyPairs,
  30. cmMakefile* mf);
  31. };
  32. #endif