Add macro GPGME_VERSION_NUMBER.
authorWerner Koch <wk@gnupg.org>
Tue, 12 Feb 2013 13:02:08 +0000 (14:02 +0100)
committerWerner Koch <wk@gnupg.org>
Tue, 12 Feb 2013 13:02:08 +0000 (14:02 +0100)
* src/gpgme.h.in (GPGME_VERSION_NUMBER): New.
* configure.ac (my_version_major, my_version_minor)
(my_version_micro): New m4 macros.
(my_version): Build from new m4 macros.
(VERSION_NUMBER): New ac_subst.

NEWS
configure.ac
src/gpgme.h.in

diff --git a/NEWS b/NEWS
index 1690272..2678a21 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,7 @@ Noteworthy changes in version 1.3.3 (unreleased)
 
  * Interface changes relative to the 1.3.1 release:
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ GPGME_VERSION_NUMBER           NEW.
  gpgme_io_writen                NEW.
  gpgme_set_global_flag          NEW.
  gpgme_set_pinentry_mode        NEW.
index 75b6fcb..af3788d 100644 (file)
@@ -33,9 +33,12 @@ min_automake_version="1.11"
 # for a specific feature can already be done under the assumption that
 # the GIT version is the most recent one in a branch.  To disable the
 # GIT version for the real release, set the my_isgit macro to no.
-m4_define(my_version, [1.3.3])
+m4_define(my_version_major, [1])
+m4_define(my_version_minor, [3])
+m4_define(my_version_micro, [3])
 m4_define(my_isgit, [yes])
 
+m4_define(my_version, [my_version_major.my_version_minor.my_version_micro])
 m4_define([svn_revision], m4_esyscmd([printf "%d" $( (svn info 2>/dev/null \
             || echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')]))
 m4_define([git_revision],
@@ -64,9 +67,10 @@ GPGME_CONFIG_API_VERSION=1
 NEED_LIBASSUAN_API=2
 NEED_LIBASSUAN_VERSION=2.0.2
 
-
 m4_define([git_brevis],m4_esyscmd(printf "%u" 0x[]m4_substr(git_revision,0,4)))
 BUILD_REVISION=m4_if(git_revision,[],[svn_revision],[git_brevis])
+VERSION_NUMBER=m4_esyscmd(printf "0x%02x%02x%02x" \
+                          my_version_major my_version_minor my_version_micro)
 PACKAGE=$PACKAGE_NAME
 VERSION=$PACKAGE_VERSION
 
@@ -100,6 +104,7 @@ AC_SUBST(LIBGPGME_LT_REVISION)
 
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
+AC_SUBST(VERSION_NUMBER)
 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package])
 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package])
 
index 9d9a556..12bd4ac 100644 (file)
@@ -80,6 +80,10 @@ extern "C" {
    library.  */
 #define GPGME_VERSION "@PACKAGE_VERSION@"
 
+/* The version number of this header.  It may be used to handle minor
+   API incompatibilities.  */
+#define GPGME_VERSION_NUMBER @VERSION_NUMBER@
+
 /* Check for a matching _FILE_OFFSET_BITS definition.  */
 #if @NEED__FILE_OFFSET_BITS@
 #ifndef _FILE_OFFSET_BITS
@@ -95,7 +99,7 @@ extern "C" {
 \f
 /* Some opaque data types used by GPGME.  */
 
-/* The context holds some global state and configration options, as
+/* The context holds some global state and configuration options, as
    well as the results of a crypto operation.  */
 struct gpgme_context;
 typedef struct gpgme_context *gpgme_ctx_t;