From e36538b53a408cdcbf37c02f8f4eb0f1009a02c5 Mon Sep 17 00:00:00 2001 From: Giuseppe Scrivano Date: Mon, 10 May 2010 00:47:17 +0200 Subject: [PATCH] Use a script to generate the version string. --- ChangeLog | 12 +++++++++ Makefile.am | 15 ++++++++++- build-aux/bzr-version-gen | 57 +++++++++++++++++++++++++++++++++++++++ configure.ac | 2 +- 4 files changed, 84 insertions(+), 2 deletions(-) create mode 100755 build-aux/bzr-version-gen diff --git a/ChangeLog b/ChangeLog index 42f96b63..838d4376 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2010-05-09 Giuseppe Scrivano + + * build-aux/bzr-version-gen: New file. + + * Makefile.am (EXTRA_DIST): Add .version. + (BUILT_SOURCES): New defition. + (.version): New rule. + (dist-hook): Likewise. + + * configure.ac (AC_INIT): Use build-aux/bzr-version-gen to generate the + version string. + 2010-05-08 Giuseppe Scrivano * Makefile.am: Update copyright years. diff --git a/Makefile.am b/Makefile.am index 81630614..44ded6d7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -46,6 +46,19 @@ SUBDIRS = lib md5 src doc po tests util windows EXTRA_DIST = ChangeLog.README configure.bat MAILING-LIST \ msdos/ChangeLog msdos/config.h msdos/Makefile.DJ \ msdos/Makefile.WC ABOUT-NLS \ - build-aux/build_info.pl + build-aux/build_info.pl .version CLEANFILES = *~ *.bak $(DISTNAME).tar.gz + +BUILT_SOURCES = .version + +clean-generic: + rm -f install-info + +.version: + echo $(VERSION) > $@-t && mv $@-t $@ + +# Arrange so that .tarball-version appears only in the distribution +# tarball, and never in a checked-out repository. +dist-hook: + $(AM_V_GEN)echo $(VERSION) > $(distdir)/.tarball-version diff --git a/build-aux/bzr-version-gen b/build-aux/bzr-version-gen new file mode 100755 index 00000000..f5804c9a --- /dev/null +++ b/build-aux/bzr-version-gen @@ -0,0 +1,57 @@ +#!/bin/sh + +scriptversion=2010-05-09.22; # UTC + +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Additional permission under GNU GPL version 3 section 7 + + +# Written by Giuseppe Scrivano. + +if test -f .tarball-version +then + cat .tarball-version | tr -d '\n' + exit 0 +fi + +DIRTY="" + +test -n "$(bzr diff | tr -d '\n')" && DIRTY="-dirty" + +REVNO=$(bzr revno) + +TAG=$(bzr tags -r $REVNO | cut -d' ' -f1) +if test -z "$TAG" +then + TAG=$(bzr tags -r ..$REVNO | cut -d' ' -f1) + + # No tags yet + test -z "$TAG" && TAG="unknown" + + TAG=$TAG-$REVNO +fi + + +printf "%s%s" "$TAG" "$DIRTY" + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/configure.ac b/configure.ac index 46cf94e7..4928c46d 100644 --- a/configure.ac +++ b/configure.ac @@ -31,7 +31,7 @@ dnl Process this file with autoconf to produce a configure script. dnl AC_INIT([wget], - [1.12.1-devel], + [m4_esyscmd([build-aux/bzr-version-gen])], [bug-wget@gnu.org]) AC_PREREQ(2.61) -- 2.39.2