Changeset: 5cc11eacd3be for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5cc11eacd3be
Modified Files:
        cmake/monetdb-versions.cmake
Branch: oscar
Log Message:

Fix library version numbering.
We use the old scheme from libtool since it is relatively easy to use
and does the right thing.


diffs (95 lines):

diff --git a/cmake/monetdb-versions.cmake b/cmake/monetdb-versions.cmake
--- a/cmake/monetdb-versions.cmake
+++ b/cmake/monetdb-versions.cmake
@@ -6,26 +6,6 @@
 # Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
 #]]
 
-set(GDK_VERSION_MAJOR "20")
-set(GDK_VERSION_MINOR "3")
-set(GDK_VERSION_PATCH "0")
-set(GDK_VERSION 
"${GDK_VERSION_MAJOR}.${GDK_VERSION_MINOR}.${GDK_VERSION_PATCH}")
-
-set(MAPI_VERSION_MAJOR "12")
-set(MAPI_VERSION_MINOR "4")
-set(MAPI_VERSION_PATCH "0")
-set(MAPI_VERSION 
"${MAPI_VERSION_MAJOR}.${MAPI_VERSION_MINOR}.${MAPI_VERSION_PATCH}")
-
-set(MONETDB5_VERSION_MAJOR "29")
-set(MONETDB5_VERSION_MINOR "3")
-set(MONETDB5_VERSION_PATCH "0")
-set(MONETDB5_VERSION 
"${MONETDB5_VERSION_MAJOR}.${MONETDB5_VERSION_MINOR}.${MONETDB5_VERSION_PATCH}")
-
-set(STREAM_VERSION_MAJOR "13")
-set(STREAM_VERSION_MINOR "5")
-set(STREAM_VERSION_PATCH "0")
-set(STREAM_VERSION 
"${STREAM_VERSION_MAJOR}.${STREAM_VERSION_MINOR}.${STREAM_VERSION_PATCH}")
-
 set(MONETDB_VERSION_MAJOR "11")
 set(MONETDB_VERSION_MINOR "38")
 set(MONETDB_VERSION_PATCH "0")
@@ -42,3 +22,64 @@ if(RELEASE_VERSION)
 #  set(MONETDB_RELEASE "unreleased")
 endif()
 set(MONETDB_VERSION 
"${MONETDB_VERSION_MAJOR}.${MONETDB_VERSION_MINOR}.${MONETDB_VERSION_PATCH}")
+
+# Version numbers for the shared libraries that we provide
+# the numbers are: <CURRENT>:<REVISION>:<AGE>
+# The scheme used here comes from libtool but is also usable in the
+# current context.
+# These numbers must be changed according to the following rules
+# (follow them all in order):
+
+#   1. Update the version information only immediately before a public
+#      release.
+#   2. If the library source code has changed at all since the last
+#      update, then increment REVISION (`C:R:A' becomes `C:r+1:A').
+#   3. If any interfaces have been added, removed, or changed since the
+#      last update, increment CURRENT, and set REVISION to 0.
+#   4. If any interfaces have been added since the last public release,
+#      then increment AGE.
+#   5. If any interfaces have been removed or changed since the last
+#      public release, then set AGE to 0.
+
+# In other words
+# X   if there are no code changes, don't change version numbers;
+# FIX if there are changes to the code (bug fixes) but no API changes,
+#     just increment REVISION;
+# NEW if there are only backward compatible API changes (new
+#     interfaces), increment both CURRENT and AGE, and set REVISION to
+#     0;
+# BRK if there are also incompatible API changes (interfaces removed or
+#     changed), increment CURRENT, and set AGE and REVISION to 0.
+#     IMPORTANT: also change debian package names for the relevant
+#     library.  This involves renaming the file in debian/ and
+#     updating references to the package in debian/control.  The version
+#     number should match the ELF SONAME
+
+# version of the GDK library (subdirectory gdk; also includes
+# common/options and common/utils)
+set(GDK_VERSION_CURRENT "20")
+set(GDK_VERSION_REVISION "3")
+set(GDK_VERSION_AGE "0")
+math(EXPR GDK_VERSION_MAJOR "${GDK_VERSION_CURRENT} - ${GDK_VERSION_AGE}")
+set(GDK_VERSION 
"${GDK_VERSION_MAJOR}.${GDK_VERSION_AGE}.${GDK_VERSION_REVISION}")
+
+# version of the MAPI library (subdirectory clients/mapilib)
+set(MAPI_VERSION_CURRENT "12")
+set(MAPI_VERSION_REVISION "4")
+set(MAPI_VERSION_AGE "0")
+math(EXPR MAPI_VERSION_MAJOR "${MAPI_VERSION_CURRENT} - ${MAPI_VERSION_AGE}")
+set(MAPI_VERSION 
"${MAPI_VERSION_MAJOR}.${MAPI_VERSION_AGE}.${MAPI_VERSION_REVISION}")
+
+# version of the MONETDB5 library (subdirectory monetdb5, not including extras 
or sql)
+set(MONETDB5_VERSION_CURRENT "29")
+set(MONETDB5_VERSION_REVISION "3")
+set(MONETDB5_VERSION_AGE "0")
+math(EXPR MONETDB5_VERSION_MAJOR "${MONETDB5_VERSION_CURRENT} - 
${MONETDB5_VERSION_AGE}")
+set(MONETDB5_VERSION 
"${MONETDB5_VERSION_MAJOR}.${MONETDB5_VERSION_AGE}.${MONETDB5_VERSION_REVISION}")
+
+# version of the STREAM library (subdirectory common/stream)
+set(STREAM_VERSION_CURRENT "13")
+set(STREAM_VERSION_REVISION "5")
+set(STREAM_VERSION_AGE "0")
+math(EXPR STREAM_VERSION_MAJOR "${STREAM_VERSION_CURRENT} - 
${STREAM_VERSION_AGE}")
+set(STREAM_VERSION 
"${STREAM_VERSION_MAJOR}.${STREAM_VERSION_AGE}.${STREAM_VERSION_REVISION}")
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to