From 30b967e2a439ce76b1141d34fa3c8ee9f87a88a8 Mon Sep 17 00:00:00 2001 From: Martin Lucina Date: Thu, 11 Feb 2010 17:49:40 +0100 Subject: [PATCH] Integrate version numbering into autoconf configure.in is now the master source for the package version number, this propagates to src/platform.hpp (for zmq_version) and doc/Makefile.am (for documentation generation) automagically. --- configure.in | 28 +++++++++++++++++++++++++++- doc/Makefile.am | 6 ++++-- doc/asciidoc.conf | 2 +- src/config.hpp | 5 ----- src/zmq.cpp | 6 +++--- 5 files changed, 35 insertions(+), 12 deletions(-) diff --git a/configure.in b/configure.in index af69a599..a3e27fbc 100644 --- a/configure.in +++ b/configure.in @@ -1,12 +1,38 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. AC_PREREQ(2.61) -AC_INIT([zeromq],[dev],[http://www.zeromq.org]) +# +# Change the version number below after doing a public release. +# The version in git should reflect the *next* version planned. +# Version must be MAJOR.MINOR.PATCH otherwise things will break. +# +AC_INIT([zeromq],[0.0.0],[zeromq-dev@lists.zeromq.org]) + AC_CONFIG_AUX_DIR(config) AC_CONFIG_MACRO_DIR(config) AM_CONFIG_HEADER(src/platform.hpp) AM_INIT_AUTOMAKE(tar-ustar) +# This defines PACKAGE_VERSION_... in src/platform.hpp +PV_MAJOR=`echo $PACKAGE_VERSION | cut -d . -f 1` +PV_MINOR=`echo $PACKAGE_VERSION | cut -d . -f 2` +PV_PATCH=`echo $PACKAGE_VERSION | cut -d . -f 3` +AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],[$PV_MAJOR], + [0MQ major version]) +AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],[$PV_MINOR], + [0MQ minor version]) +AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCH],[$PV_PATCH], + [0MQ patchlevel]) +# This lets us use PACKAGE_VERSION in Makefiles +AC_SUBST(PACKAGE_VERSION) + +# +# Libtool -version-info (ABI version) +# +# Currently 0.0.0 ("unstable"). Don't change this unless you +# know exactly what you're doing and have read and understand +# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html +# # libzmq -version-info LTVER="0:0:0" AC_SUBST(LTVER) diff --git a/doc/Makefile.am b/doc/Makefile.am index c57eb7cd..c91c8086 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -29,9 +29,11 @@ dist-hook : $(MAN_DOC) $(MAN_HTML) SUFFIXES=.html .txt .xml .1 .3 .7 .txt.html: - asciidoc -d manpage -b xhtml11 -f asciidoc.conf $< + asciidoc -d manpage -b xhtml11 -f asciidoc.conf \ + -azmq_version=@PACKAGE_VERSION@ $< .txt.xml: - asciidoc -d manpage -b docbook -f asciidoc.conf $< + asciidoc -d manpage -b docbook -f asciidoc.conf \ + -azmq_version=@PACKAGE_VERSION@ $< .xml.1: xmlto man $< .xml.3: diff --git a/doc/asciidoc.conf b/doc/asciidoc.conf index d1dac780..18273f25 100644 --- a/doc/asciidoc.conf +++ b/doc/asciidoc.conf @@ -23,7 +23,7 @@ template::[header-declarations] {mantitle} {manvolnum} 0MQ -2.0.0 +{zmq_version} 0MQ Manual diff --git a/src/config.hpp b/src/config.hpp index a0d5755c..12e29ca0 100644 --- a/src/config.hpp +++ b/src/config.hpp @@ -27,11 +27,6 @@ namespace zmq enum { - // Current version of 0MQ. - version_major = 0, - version_minor = 0, - version_patch = 0, - // Number of new messages in message pipe needed to trigger new memory // allocation. Setting this parameter to 256 decreases the impact of // memory allocation by approximately 99.6% diff --git a/src/zmq.cpp b/src/zmq.cpp index 609c8f27..e6f1a614 100644 --- a/src/zmq.cpp +++ b/src/zmq.cpp @@ -52,9 +52,9 @@ void zmq_version (int *major_, int *minor_, int *patch_) { - *major_ = zmq::version_major; - *minor_ = zmq::version_minor; - *patch_ = zmq::version_patch; + *major_ = PACKAGE_VERSION_MAJOR; + *minor_ = PACKAGE_VERSION_MINOR; + *patch_ = PACKAGE_VERSION_PATCH; } const char *zmq_strerror (int errnum_)