diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-04-28 09:04:14 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-04-28 09:04:14 +0200 |
commit | c27b069ab3049e566738bc7a63e9b8fa57657553 (patch) | |
tree | 7161f16d995f956aca75c66cd0ff3881f73956de /build2/utility | |
parent | 593fd960891027b97567b2622ed4b6c16070ab36 (diff) |
Use standard_version for module versioning checks
Diffstat (limited to 'build2/utility')
-rw-r--r-- | build2/utility | 41 |
1 files changed, 7 insertions, 34 deletions
diff --git a/build2/utility b/build2/utility index 95766a4..860c841 100644 --- a/build2/utility +++ b/build2/utility @@ -17,7 +17,6 @@ #include <butl/ft/lang> #include <butl/utility> // combine_hash(), reverse_iterate(), case*(), etc -#include <butl/standard-version> #include <unordered_set> @@ -104,9 +103,14 @@ namespace build2 // extern process_path argv0; - // Build system driver version. + // Build system driver version and check. // - extern butl::standard_version build_version; + extern standard_version build_version; + + class location; + + void + check_build_version (const standard_version_constraint&, const location&); // Work/home directories (must be initialized in main()) and relative path // calculation. @@ -418,37 +422,6 @@ namespace build2 string apply_pattern (const char* stem, const string* pattern); - // Parse version string in the X.Y.Z[-{a|b}N] to a version integer in the - // AABBCCDD form, where: - // - // AA - major version number - // BB - minor version number - // CC - bugfix version number - // DD - alpha / beta (DD + 50) version number - // - // When DD is not 00, 1 is subtracted from AABBCC. For example: - // - // Version AABBCCDD - // 2.0.0 02000000 - // 2.1.0 02010000 - // 2.1.1 02010100 - // 2.2.0-a1 02019901 - // 3.0.0-b2 02999952 - // - // For a version in the 1.2.3- form, it returns (AABBCC-1)01, which is the - // lowest possible version in the 1.2.3 release set. For example: - // - // Version AABBCCDD - // 2.2.0- 02019901 - // 1.2.3- 01020201 - // - // In fact versions 1.2.3- and 1.2.3-a1 are equivalent. - // - // Throw invalid_argument if the passed string is not a valid version. - // - unsigned int - to_version (const string&); - // Initialize build2 global state (verbosity, home/work directories, etc). // Should be called early in main() once. // |