mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Between Bison releases, manually append `+' to the previous Bison
release number, and use that as a signal to automatically print the ChangeLog's CVS Id keyword from --version. Discussed starting at <http://lists.gnu.org/archive/html/bison-patches/2006-05/msg00028.html>. * ChangeLog: Add Id header. * configure.ac (AC_INIT): Append `+' to `2.3'. * src/.cvsignore: Add revision.c. * src/Makefile.am (bison_SOURCES): Add revision.c and revision.h. (BUILT_SOURCES): Add revision.c. (revision.c): New target rule. This file defines a new global variable named revision. It initializes it with either the Id from ChangeLog or, if VERSION doesn't contain `+', with the empty string. * src/getargs.c (version): Print the value of revision. * src/revision.h: Extern revision.
This commit is contained in:
19
ChangeLog
19
ChangeLog
@@ -1,3 +1,22 @@
|
||||
$Id$
|
||||
|
||||
2006-06-06 Joel E. Denny <jdenny@ces.clemson.edu>
|
||||
|
||||
Between Bison releases, manually append `+' to the previous Bison
|
||||
release number, and use that as a signal to automatically print the
|
||||
ChangeLog's CVS Id keyword from --version. Discussed starting at
|
||||
<http://lists.gnu.org/archive/html/bison-patches/2006-05/msg00028.html>.
|
||||
* ChangeLog: Add Id header.
|
||||
* configure.ac (AC_INIT): Append `+' to `2.3'.
|
||||
* src/.cvsignore: Add revision.c.
|
||||
* src/Makefile.am (bison_SOURCES): Add revision.c and revision.h.
|
||||
(BUILT_SOURCES): Add revision.c.
|
||||
(revision.c): New target rule. This file defines a new global variable
|
||||
named revision. It initializes it with either the Id from ChangeLog
|
||||
or, if VERSION doesn't contain `+', with the empty string.
|
||||
* src/getargs.c (version): Print the value of revision.
|
||||
* src/revision.h: Extern revision.
|
||||
|
||||
2006-06-05 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* NEWS: Version 2.3.
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
# least Autoconf 2.59.
|
||||
AC_PREREQ(2.59)
|
||||
|
||||
AC_INIT([GNU Bison], [2.3], [bug-bison@gnu.org])
|
||||
AC_INIT([GNU Bison], [2.3+], [bug-bison@gnu.org])
|
||||
AC_CONFIG_AUX_DIR([build-aux])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
bison
|
||||
revision.c
|
||||
scan-gram.c
|
||||
scan-skel.c
|
||||
yacc
|
||||
|
||||
@@ -52,6 +52,7 @@ bison_SOURCES = \
|
||||
print_graph.c print_graph.h \
|
||||
reader.c reader.h \
|
||||
reduce.c reduce.h \
|
||||
revision.c revision.h \
|
||||
relation.c relation.h \
|
||||
scan-gram-c.c \
|
||||
scan-skel-c.c scan-skel.h \
|
||||
@@ -66,7 +67,7 @@ bison_SOURCES = \
|
||||
|
||||
EXTRA_bison_SOURCES = scan-skel.l scan-gram.l
|
||||
|
||||
BUILT_SOURCES = scan-skel.c scan-gram.c parse-gram.c parse-gram.h
|
||||
BUILT_SOURCES = revision.c scan-skel.c scan-gram.c parse-gram.c parse-gram.h
|
||||
|
||||
MOSTLYCLEANFILES = yacc
|
||||
|
||||
@@ -78,6 +79,16 @@ yacc:
|
||||
echo:
|
||||
echo $(bison_SOURCES) $(noinst_HEADERS)
|
||||
|
||||
revision.c: $(top_srcdir)/configure $(top_srcdir)/ChangeLog
|
||||
case "$(VERSION)" in \
|
||||
*+*) sed -n \
|
||||
's/^\$$\(Id.*\)\$$$$/const char *revision = "\1\\n";/p' \
|
||||
$(top_srcdir)/ChangeLog \
|
||||
;; \
|
||||
*) echo 'const char *revision = "";' \
|
||||
;; \
|
||||
esac >$@
|
||||
|
||||
# The following rule is not designed to be portable,
|
||||
# and relies on tools that not everyone has.
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
|
||||
#include <config.h>
|
||||
#include "system.h"
|
||||
#include "revision.h"
|
||||
|
||||
#include <argmatch.h>
|
||||
#include <error.h>
|
||||
@@ -272,6 +273,7 @@ version (void)
|
||||
continue. */
|
||||
printf (_("bison (GNU Bison) %s"), VERSION);
|
||||
putc ('\n', stdout);
|
||||
printf ("%s", revision);
|
||||
fputs (_("Written by Robert Corbett and Richard Stallman.\n"), stdout);
|
||||
putc ('\n', stdout);
|
||||
|
||||
|
||||
27
src/revision.h
Normal file
27
src/revision.h
Normal file
@@ -0,0 +1,27 @@
|
||||
/* Between Bison releases, define a precise revision string.
|
||||
|
||||
Copyright (C) 2006 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of Bison, the GNU Compiler Compiler.
|
||||
|
||||
Bison 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 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
Bison 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 Bison; see the file COPYING. If not, write to the Free
|
||||
Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
02110-1301, USA. */
|
||||
|
||||
#ifndef REVISION_H_
|
||||
# define REVISION_H_
|
||||
|
||||
extern const char *revision;
|
||||
|
||||
#endif /* !REVISION_H_ */
|
||||
Reference in New Issue
Block a user