12345678910111213141516171819202122232425262728293031323334 |
- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
- file Copyright.txt or https://cmake.org/licensing for details. */
- #ifndef cmVersion_h
- #define cmVersion_h
- #include "cm_kwiml.h"
- /** \class cmVersion
- * \brief Helper class for providing CMake and CTest version information.
- *
- * Finds all version related information.
- */
- class cmVersion
- {
- public:
- /**
- * Return major and minor version numbers for cmake.
- */
- static unsigned int GetMajorVersion();
- static unsigned int GetMinorVersion();
- static unsigned int GetPatchVersion();
- static unsigned int GetTweakVersion();
- static const char* GetCMakeVersion();
- };
- /* Encode with room for up to 1000 minor releases between major releases
- and to encode dates until the year 10000 in the patch level. */
- #define CMake_VERSION_ENCODE__BASE KWIML_INT_UINT64_C(100000000)
- #define CMake_VERSION_ENCODE(major, minor, patch) \
- ((((major)*1000u) * CMake_VERSION_ENCODE__BASE) + \
- (((minor) % 1000u) * CMake_VERSION_ENCODE__BASE) + \
- (((patch) % CMake_VERSION_ENCODE__BASE)))
- #endif
|