aboutsummaryrefslogtreecommitdiff
path: root/brep/version
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-12-18 12:12:29 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-12-18 12:12:29 +0200
commit0dbe4e64dd04df8cece55203d3b18cd63f080407 (patch)
tree0de71d5687b74cc062f968f11667c3a548cc27ff /brep/version
parent0b69ab0367d83da4a86d9f9d429d72e00d9e8f7f (diff)
Add <brep/version>
Diffstat (limited to 'brep/version')
-rw-r--r--brep/version51
1 files changed, 51 insertions, 0 deletions
diff --git a/brep/version b/brep/version
new file mode 100644
index 0000000..8bcca9b
--- /dev/null
+++ b/brep/version
@@ -0,0 +1,51 @@
+// file : brep/version -*- C++ -*-
+// copyright : Copyright (c) 2014-2015 Code Synthesis Ltd
+// license : MIT; see accompanying LICENSE file
+
+#ifndef LIBBREP_VERSION // Note: using the version macro itself.
+
+#include <butl/version> // LIBBUTL_VERSION
+#include <bpkg/version> // LIBBPKG_VERSION
+
+// Version format is AABBCCDD 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
+//
+// AABBCCDD
+#define LIBBREP_VERSION 10000
+#define LIBBREP_VERSION_STR "0.1.0"
+
+// For now these are the same.
+//
+#define BREP_VERSION LIBBREP_VERSION
+#define BREP_VERSION_STR LIBBREP_VERSION_STR
+
+// Generally, we expect minor versions to be source code backwards-
+// compatible, thought we might have a minimum version requirement.
+//
+// Note: does not apply during early development.
+//
+// AABBCCDD
+#if (LIBBUTL_VERSION < 10000 || \
+ LIBBUTL_VERSION > 10000)
+# error incompatible libbutl version
+#endif
+
+#if (LIBBPKG_VERSION < 10000 || \
+ LIBBPKG_VERSION > 10000)
+# error incompatible libbpkg version
+#endif
+
+#endif // LIBBREP_VERSION