]> git.saurik.com Git - bison.git/commitdiff
* configure.ac (AC_GNU_SOURCE): Use it instead of hand written code.
authorAkim Demaille <akim@epita.fr>
Sun, 13 Oct 2002 18:49:44 +0000 (18:49 +0000)
committerAkim Demaille <akim@epita.fr>
Sun, 13 Oct 2002 18:49:44 +0000 (18:49 +0000)
(O0FLAGS): New.
(VALGRIND, GXX): New.
* tests/atlocal.in (CFLAGS): Use O0FLAGS.
* tests/bison.in: Run $PREBISON a pre-command.
* tests/Makefile.am (maintainer-check, maintainer-check-valgrind)
(maintainer-check-g++): New.
* Makefile.am (maintainer-check): New.

ChangeLog
HACKING
Makefile.am
configure.ac
tests/Makefile.am
tests/atlocal.in
tests/bison.in

index 99f71fc2ef3b59a0b31727456feac6f9e08e55ff..e677c6150e967db038399c31fc74131abe90ecb6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2002-10-13  Akim Demaille  <akim@epita.fr>
+
+       * configure.ac (AC_GNU_SOURCE): Use it instead of hand written code.
+       (O0FLAGS): New.
+       (VALGRIND, GXX): New.
+       * tests/atlocal.in (CFLAGS): Use O0FLAGS.
+       * tests/bison.in: Run $PREBISON a pre-command.
+       * tests/Makefile.am (maintainer-check, maintainer-check-valgrind)
+       (maintainer-check-g++): New.
+       * Makefile.am (maintainer-check): New.
+
 2002-10-13  Akim Demaille  <akim@epita.fr>
 
        * data/glr.c: Formatting changes.
diff --git a/HACKING b/HACKING
index fa20885a413c28a064347587b318b62e10d3f71e..3db97743b39e33ef5d03b8212bc5089d2a1c3df7 100644 (file)
--- a/HACKING
+++ b/HACKING
@@ -52,11 +52,10 @@ release:
   that 1. Bison compiles cleanly, 2. the parsers it produces compile
   cleanly too.
 
-- Change tests/bison to run `valgrind -q bison' to run Bison under
-  Valgrind.
-
-- Run the test suite with `./testsuite PREPARSER='valgrind -q' to make
-  sure the parser behave properly.
+- run `make maintainer-check' which:
+  - runs `valgrind -q bison' to run Bison under Valgrind.
+  - runs the parsers under Valdrind.
+  - runs the test suite with G++ as C compiler...
 
 - Change tests/atlocal/CFLAGS to add your preferred options.  For
   instance, `-traditional' to check that the parsers are K&R.  Note
@@ -64,8 +63,6 @@ release:
   but currently is actually GNU C, nor for lalr1.cc, which anyway is
   not exercised yet in the test suite.
 
-- Change tests/atlocal/CC to use a C++ compiler.
-
 
 * Release Procedure
 
index 400831cba6f993c07dea2c77d43e3d4f70c45b7c..77c96e98165bcdbc2467081521086e4e6ed0ee23 100644 (file)
@@ -22,6 +22,9 @@ SUBDIRS = config po lib data src doc m4 tests
 
 EXTRA_DIST = REFERENCES OChangeLog Makefile.maint GNUmakefile
 
+.PHONY: maintainer-check
+maintainer-check:
+       cd tests && $(MAKE) $(AM_MAKEFLAGS) $@
 
 ## ---------------------------- ##
 ## Customizing Makefile.maint.  ##
index b777e27cfde6627574fb119e219341a6f0406314..bafaaa78892337b90384e94f94164b642eb47ead 100644 (file)
@@ -26,28 +26,13 @@ AC_CONFIG_AUX_DIR(config)
 AM_INIT_AUTOMAKE([1.7 check-news readme-alpha dist-bzip2])
 AC_CONFIG_HEADERS([config.h:config.hin])
 
-# Initialize the test suite.
-AC_CONFIG_TESTDIR(tests)
-AC_CONFIG_FILES([tests/Makefile tests/atlocal])
-AC_CONFIG_FILES([tests/bison], [chmod +x tests/bison])
-# Needed by tests/atlocal.in.
-AC_SUBST([GCC])
-
-# Checks for programs.
+# Checks for the compiler.
 AC_PROG_CC
-AM_PROG_LEX
-AC_PROG_YACC
-AC_MINIX
+# Remove with Automake 1.8.
 AC_ISC_POSIX
+AC_GNU_SOURCE
+AC_MINIX
 AM_PROG_CC_STDC
-AC_PROG_RANLIB
-AM_MISSING_PROG([AUTOM4TE], [autom4te])
-BISON_PROG_GNU_M4
-if test x"$ac_cv_prog_gnu_m4" != xyes; then
-  AC_MSG_ERROR([GNU M4 1.4 is required])
-fi
-AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the GNU M4 executable name.])
-
 AC_ARG_ENABLE(gcc-warnings,
 [  --enable-gcc-warnings   turn on lots of GCC warnings (not recommended)],
 [case "${enableval}" in
@@ -73,8 +58,15 @@ if test "${enableval}" = yes; then
   BISON_WARNING(-Wwrite-strings)
 fi
 
-# Checks for libraries.
-AC_DEFINE([_GNU_SOURCE],1,[Define to 1 for GNU C library extensions.])
+# Checks for programs.
+AM_PROG_LEX
+AC_PROG_YACC
+AC_PROG_RANLIB
+BISON_PROG_GNU_M4
+if test x"$ac_cv_prog_gnu_m4" != xyes; then
+  AC_MSG_ERROR([GNU M4 1.4 is required])
+fi
+AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the GNU M4 executable name.])
 
 # Checks for header files.
 AC_HEADER_STDC
@@ -110,6 +102,18 @@ BISON_PREREQ_TIMEVAR
 AM_GNU_GETTEXT(external, need-ngettext)
 AM_GNU_GETTEXT_VERSION(0.11.5)
 
+# Initialize the test suite.
+AC_CONFIG_TESTDIR(tests)
+AC_CONFIG_FILES([tests/Makefile tests/atlocal])
+AC_CONFIG_FILES([tests/bison], [chmod +x tests/bison])
+AC_CHECK_PROGS([VALGRIND], [valgrind])
+AC_CHECK_PROGS([GXX], [g++])
+AM_MISSING_PROG([AUTOM4TE], [autom4te])
+# Needed by tests/atlocal.in.
+AC_SUBST([GCC])
+O0CFLAGS=`echo $CFLAGS | sed 's/-O[0-9] *//'`
+AC_SUBST([O0CFLAGS])
+
 AC_CONFIG_FILES([Makefile
                  config/Makefile
                  po/Makefile.in
index 0bb522c910415d1ff7ebe9e097796d8029280eed..d41846ac2d56585175156895e70a15d318ad6935 100644 (file)
@@ -71,3 +71,23 @@ check_SCRIPTS = bison
 # Run the test suite on the *installed* tree.
 installcheck-local:
        $(SHELL) $(TESTSUITE) AUTOTEST_PATH=$(exec_prefix)/bin
+
+# Be real mean with it.
+.PHONY: maintainer-check-valgrind
+maintainer-check-valgrind: $(TESTSUITE)
+       if test -n "$(VALGRIND)"; then                                      \
+          $(TESTSUITE) PREBISON='$(VALGRIND) -q' PREPARSER='$(VALGRIND) -q'; \
+       else                                                                \
+         true;                                                             \
+       fi
+
+.PHONY: maintainer-check-g++
+maintainer-check-g++: $(TESTSUITE)
+       if test -n "$(VALGRIND)"; then          \
+          $(TESTSUITE) CC='$(GXX)'             \
+       else                                    \
+         true;                                 \
+       fi
+
+.PHONY: maintainer-check
+maintainer-check: maintainer-check-valgrind maintainer-check-g++
index 31cc12cfd889906e70672ae1d0b8e72599a7e254..356833c9e04f74f22abcacae4ecbc436c613df47 100644 (file)
@@ -1,10 +1,12 @@
 # @configure_input@                                    -*- shell-script -*-
 # Configurable variable values for Bison test suite.
-# Copyright 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
 
 # We need a C compiler.
 CC='@CC@'
-CFLAGS='@CFLAGS@ @WARNING_CFLAGS@ @WERROR_CFLAGS@'
+
+# We want no optimization.
+CFLAGS='@O0CFLAGS@ @WARNING_CFLAGS@ @WERROR_CFLAGS@'
 
 # We need `config.h'.
 CPPFLAGS="-I$abs_top_builddir @CPPFLAGS@"
index 6a582f77dd0c7ff8ef696567edc7afed19f096f0..6d0de7e341d6e29be44e95ca8feb63f85053ff8b 100644 (file)
@@ -5,4 +5,4 @@
 # We want to use the files shipped with Bison.
 BISON_PKGDATADIR='@abs_top_srcdir@/data'
 export BISON_PKGDATADIR
-exec '@abs_top_builddir@/src/bison' ${1+"$@"}
+exec $PREBISON '@abs_top_builddir@/src/bison' ${1+"$@"}