BuildVariants.h 829 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * BuildVariants.h
  3. * ---------------
  4. * Purpose: Handling of various OpenMPT build variants.
  5. * Notes : (currently none)
  6. * Authors: OpenMPT Devs
  7. * The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
  8. */
  9. #pragma once
  10. #include "openmpt/all/BuildSettings.hpp"
  11. OPENMPT_NAMESPACE_BEGIN
  12. class BuildVariants
  13. {
  14. public:
  15. enum Variants {
  16. Standard,
  17. Legacy,
  18. Retro,
  19. Unknown,
  20. };
  21. static bool IsKnownSystem();
  22. static BuildVariants::Variants GetBuildVariant();
  23. static mpt::ustring GetBuildVariantName(BuildVariants::Variants variant);
  24. static mpt::ustring GetBuildVariantDescription(BuildVariants::Variants variant);
  25. static mpt::ustring GuessCurrentBuildName();
  26. static bool ProcessorCanRunCurrentBuild();
  27. static bool SystemCanRunCurrentBuild();
  28. };
  29. OPENMPT_NAMESPACE_END