From 2b2c26069aee6c0ead2c6ed95de5f181089025ac Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Thu, 12 Nov 2009 11:20:16 -0700 Subject: Implement support for versioning and release engineering procedures - version 1.2.5.a1 Instead of changing configure.ac AC_INIT for each version change, there is a new file - VERSION.sh. This file also contains support for creating version numbers for pre-releases, and pre-release strings containing git commit hashes. One of the complications is that AC_INIT does not allow you to override the version and package tarname fields. We can override them after the fact everywhere except in config.h. AC_INIT defines the following which we would like to override but cannot: PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_STRING PACKAGE_BUGREPORT Instead, we define DS_ versions of these e.g. DS_PACKAGE_VERSION etc. and make these available with AC_DEFINE(DS_PACKAGE_VERSION,...) etc. As an extra added precaution, we undefine these in Makefile.am like this: DS_DEFINES = ... \ -UPACKAGE_VERSION -UPACKAGE_TARNAME -UPACKAGE_STRING -UPACKAGE_BUGREPORT If someone tries to use PACKAGE_VERSION in C code, they will not be able to, and will have to use DS_PACKAGE_VERSION instead. All of the DS code that used PACKAGE_VERSION has been changed to use DS_PACKAGE_VERSION instead. There is a new make target - git-archive - as a convenience for creating source tarballs from git. By default, the source archive will be placed in the build directory - you can specify SRCDISTDIR=/path/to/SOURCES to use an alternate dir (e.g. make SRCDISTDIR=/path/to/rpmbuild/SOURCES git-archive to make a source tarball for rpmbuild) configure will print the branded package name and version Reviewed by: nkinder (Thanks!) --- config.h.in | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'config.h.in') diff --git a/config.h.in b/config.h.in index b16fa696..ec970a22 100644 --- a/config.h.in +++ b/config.h.in @@ -21,6 +21,18 @@ /* cpu type x86_64 */ #undef CPU_x86_64 +/* package bug report url */ +#undef DS_PACKAGE_BUGREPORT + +/* package string */ +#undef DS_PACKAGE_STRING + +/* package tarball name */ +#undef DS_PACKAGE_TARNAME + +/* package version */ +#undef DS_PACKAGE_VERSION + /* enable ldapi auto bind support in the server */ #undef ENABLE_AUTOBIND @@ -327,7 +339,7 @@ /* OS SOLARIS */ #undef OS_solaris -/* Name of package */ +/* package tar name */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ @@ -375,7 +387,7 @@ /* If defined, using OpenLDAP for LDAP SDK */ #undef USE_OPENLDAP -/* Version number of package */ +/* package version */ #undef VERSION /* UNIX */ -- cgit