cmLinkLineComputer.h 1.1 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 cmLinkLineComputer_h
  4. #define cmLinkLineComputer_h
  5. #include "cmState.h"
  6. class cmComputeLinkInformation;
  7. class cmOutputConverter;
  8. class cmLinkLineComputer
  9. {
  10. public:
  11. cmLinkLineComputer(cmOutputConverter* outputConverter,
  12. cmState::Directory stateDir);
  13. virtual ~cmLinkLineComputer();
  14. void SetUseWatcomQuote(bool useWatcomQuote);
  15. void SetForResponse(bool forResponse);
  16. virtual std::string ConvertToLinkReference(std::string const& input) const;
  17. std::string ComputeLinkLibs(cmComputeLinkInformation& cli);
  18. std::string ComputeLinkPath(cmComputeLinkInformation& cli,
  19. std::string const& libPathFlag,
  20. std::string const& libPathTerminator);
  21. private:
  22. std::string ConvertToOutputFormat(std::string const& input);
  23. std::string ConvertToOutputForExisting(std::string const& input);
  24. cmState::Directory StateDir;
  25. cmOutputConverter* OutputConverter;
  26. bool ForResponse;
  27. bool UseWatcomQuote;
  28. };
  29. #endif