From 4294cbb03034099f59238eee28accabf790866d0 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Thu, 12 Jul 2012 14:52:44 +0200 Subject: ylwrap: refactor: less duplication * lib/ylwrap (guard): New function. Move functions before actual code. --- lib/ylwrap | 48 ++++++++++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index 6879d8deb..fd29af852 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -1,7 +1,7 @@ #! /bin/sh # ylwrap - wrapper for lex/yacc invocations. -scriptversion=2011-08-25.18; # UTC +scriptversion=2012-07-12.12; # UTC # Copyright (C) 1996-2012 Free Software Foundation, Inc. # @@ -29,6 +29,31 @@ scriptversion=2011-08-25.18; # UTC # bugs to or send patches to # . +get_dirname () +{ + case $1 in + */*|*\\*) printf '%s\n' "$1" | sed -e 's,\([\\/]\)[^\\/]*$,\1,';; + # Otherwise, we want the empty string (not "."). + esac +} + +# guard FILE +# ---------- +# The CPP macro used to guard inclusion of FILE. +guard() +{ + echo "$from" \ + | sed \ + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ + -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g' +} + +quote_for_sed () +{ + # FIXME: really we should care about more than '.' and '\'. + sed -e 's,[\\.],\\&,g' +} + case "$1" in '') echo "$0: No files given. Try '$0 --help' for more information." 1>&2 @@ -62,19 +87,6 @@ EOF ;; esac -get_dirname () -{ - case $1 in - */*|*\\*) printf '%s\n' "$1" | sed -e 's,\([\\/]\)[^\\/]*$,\1,';; - # Otherwise, we want the empty string (not "."). - esac -} - -quote_for_sed () -{ - # FIXME: really we should care about more than '.' and '\'. - sed -e 's,[\\.],\\&,g' -} # The input. input="$1" @@ -178,12 +190,8 @@ if test $ret -eq 0; then # We want to use the real output file name, not yy.lex.c for # instance. # We want the include guards to be adjusted too. - FROM=`echo "$from" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` - TARGET=`echo "$2" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` + FROM=`guard "$from"` + TARGET=`guard "$2"` sed -e "/^#/!b" -e "s,$input_rx,$input_sub_rx," -e "s,$from,$2," \ -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? -- cgit v1.2.1 From 1a871ca02705c1225a75bb024119efbf56ab19c4 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Thu, 12 Jul 2012 15:13:29 +0200 Subject: ylwrap: simplify the list of renamings * lib/ylwrap (pairwise): Instead of being a straightforward copy from the command line arguments, and having to deal with y.tab vs. y_tab later, let pairwise store the real file names to process, y_tab conversion included when needed. (main loop): Use $to instead of $2, for symmetry with $from. --- lib/ylwrap | 57 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index fd29af852..8a9f2b069 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -1,7 +1,7 @@ #! /bin/sh # ylwrap - wrapper for lex/yacc invocations. -scriptversion=2012-07-12.12; # UTC +scriptversion=2012-07-13.10; # UTC # Copyright (C) 1996-2012 Free Software Foundation, Inc. # @@ -103,14 +103,33 @@ case "$input" in ;; esac +# Since DOS filename conventions don't allow two dots, +# the DOS version of Bison writes out y_tab.c instead of y.tab.c +# and y_tab.h instead of y.tab.h. Test to see if this is the case. +y_tab_nodot=false +if test -f y_tab.c || test -f y_tab.h; then + y_tab_nodot=true +fi + +# The list of file to rename: FROM TO... pairlist= while test "$#" -ne 0; do if test "$1" = "--"; then shift break fi - pairlist="$pairlist $1" + from=$1 + # Handle y_tab.c and y_tab.h output by DOS + if $y_tab_nodot; then + case $from in + "y.tab.c") from=y_tab.c;; + "y.tab.h") from=y_tab.h;; + esac + fi + shift + to=$1 shift + pairlist="$pairlist $from $to" done # The program to run. @@ -144,34 +163,18 @@ if test $ret -eq 0; then set X $pairlist shift first=yes - # Since DOS filename conventions don't allow two dots, - # the DOS version of Bison writes out y_tab.c instead of y.tab.c - # and y_tab.h instead of y.tab.h. Test to see if this is the case. - y_tab_nodot="no" - if test -f y_tab.c || test -f y_tab.h; then - y_tab_nodot="yes" - fi input_rx=`get_dirname "$input" | quote_for_sed` while test "$#" -ne 0; do - from="$1" - # Handle y_tab.c and y_tab.h output by DOS - if test $y_tab_nodot = "yes"; then - if test $from = "y.tab.c"; then - from="y_tab.c" - else - if test $from = "y.tab.h"; then - from="y_tab.h" - fi - fi - fi + from=$1 + to=$2 if test -f "$from"; then # If $2 is an absolute path name, then just use that, # otherwise prepend '../'. - case "$2" in - [\\/]* | ?:[\\/]*) target="$2";; - *) target="../$2";; + case $to in + [\\/]* | ?:[\\/]*) target=$to;; + *) target="../$to";; esac # We do not want to overwrite a header file if it hasn't @@ -191,18 +194,18 @@ if test $ret -eq 0; then # instance. # We want the include guards to be adjusted too. FROM=`guard "$from"` - TARGET=`guard "$2"` + TARGET=`guard "$to"` - sed -e "/^#/!b" -e "s,$input_rx,$input_sub_rx," -e "s,$from,$2," \ + sed -e "/^#/!b" -e "s,$input_rx,$input_sub_rx," -e "s,$from,$to," \ -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? # Check whether header files must be updated. if test $first = no; then if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then - echo "$2" is unchanged + echo "$to is unchanged" rm -f "$target" else - echo updating "$2" + echo "updating $to" mv -f "$target" "$realtarget" fi fi -- cgit v1.2.1 From be2bb639757a723d44809678d0c21cd429a321cd Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Fri, 13 Jul 2012 14:32:22 +0200 Subject: ylwrap: rename header inclusion in generated parsers Some types of Bison parsers, such as the GLR ones, generate a header file that they include. ylwrap, which renames the generated files, does not rename the included file. Fix this shortcoming, reported for instance here: . Fixes t/yacc-bison-skeleton.sh, see Automake bug#7648 and PR automake/491. * lib/ylwrap (quote_for_sed): Accept arguments. Catch more special characters. (rename_sed): New. Improve the previous renaming sed commands using quote_for_sed. Suggested by Stefano Lattarini here: . (main loop): Use rename_sed to rename the dependencies to other files. * t/yacc-d-basic.sh: Exercise this case, even if bison/yacc was not issuing such an include. * t/list-of-tests.mk (XFAIL_TESTS): Adjust. --- lib/ylwrap | 19 +++++++++++++++---- t/list-of-tests.mk | 1 - t/yacc-d-basic.sh | 9 ++++++++- 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index 8a9f2b069..8e02e9ae0 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -1,7 +1,7 @@ #! /bin/sh # ylwrap - wrapper for lex/yacc invocations. -scriptversion=2012-07-13.10; # UTC +scriptversion=2012-07-13.14; # UTC # Copyright (C) 1996-2012 Free Software Foundation, Inc. # @@ -48,10 +48,16 @@ guard() -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g' } +# quote_for_sed [STRING] +# ---------------------- +# Return STRING (or stdin) quoted to be used as a sed pattern. quote_for_sed () { - # FIXME: really we should care about more than '.' and '\'. - sed -e 's,[\\.],\\&,g' + case $# in + 0) cat;; + 1) printf '%s\n' "$1";; + esac \ + | sed -e 's|[][\\.*]|\\&|g' } case "$1" in @@ -113,6 +119,10 @@ fi # The list of file to rename: FROM TO... pairlist= +# A sed program to s/FROM/TO/g for all the FROM/TO so that, for +# instance, we rename #include "y.tab.h" into #include "parse.h" +# during the conversion from y.tab.c to parse.c. +rename_sed= while test "$#" -ne 0; do if test "$1" = "--"; then shift @@ -130,6 +140,7 @@ while test "$#" -ne 0; do to=$1 shift pairlist="$pairlist $from $to" + rename_sed="${rename_sed}s|"`quote_for_sed "$from"`"|$to|g;" done # The program to run. @@ -196,7 +207,7 @@ if test $ret -eq 0; then FROM=`guard "$from"` TARGET=`guard "$to"` - sed -e "/^#/!b" -e "s,$input_rx,$input_sub_rx," -e "s,$from,$to," \ + sed -e "/^#/!b" -e "s,$input_rx,$input_sub_rx," -e "$rename_sed" \ -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? # Check whether header files must be updated. diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk index 78d7d9b2e..9f0e12319 100644 --- a/t/list-of-tests.mk +++ b/t/list-of-tests.mk @@ -31,7 +31,6 @@ t/pm/Version3.pl XFAIL_TESTS = \ t/all.sh \ t/yacc-bison-skeleton-cxx.sh \ -t/yacc-bison-skeleton.sh \ t/cond17.sh \ t/gcj6.sh \ t/override-conditional-2.sh \ diff --git a/t/yacc-d-basic.sh b/t/yacc-d-basic.sh index 91fbc62d8..72872f24f 100755 --- a/t/yacc-d-basic.sh +++ b/t/yacc-d-basic.sh @@ -54,7 +54,14 @@ void yyerror (char *s) {} x : 'x' {}; %% END -cp foo/parse.y bar/parse.y +# Using ylwrap, we actually generate y.tab.[ch]. Unfortunately, we +# forgot to rename #include "y.tab.h" into #include "parse.h" during +# the conversion from y.tab.c to parse.c. This was OK when Bison was +# not issuing such an #include (up to 2.6). +# +# To make sure that we perform this conversion, in bar/parse.y, use +# y.tab.h instead of parse.c. +sed -e 's/parse\.h/y.tab.h/' bar/parse.y cat > foo/main.c << 'END' #include "parse.h" -- cgit v1.2.1 From 0a25f35b5d0a4d2acb5a72f25cf25ecc0d8e84dd Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Fri, 13 Jul 2012 14:33:38 +0200 Subject: ylwrap: modernize idioms * lib/ylwrap: Prefer printf to echo when special characters may occur. Replace the historical ',' sed separator with '|'. --- lib/ylwrap | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index 8e02e9ae0..f64b2b58a 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -32,7 +32,7 @@ scriptversion=2012-07-13.14; # UTC get_dirname () { case $1 in - */*|*\\*) printf '%s\n' "$1" | sed -e 's,\([\\/]\)[^\\/]*$,\1,';; + */*|*\\*) printf '%s\n' "$1" | sed -e 's|\([\\/]\)[^\\/]*$|\1|';; # Otherwise, we want the empty string (not "."). esac } @@ -42,7 +42,7 @@ get_dirname () # The CPP macro used to guard inclusion of FILE. guard() { - echo "$from" \ + printf '%s\n' "$from" \ | sed \ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g' @@ -196,7 +196,7 @@ if test $ret -eq 0; then # file so we can compare them to existing versions. if test $first = no; then realtarget="$target" - target="tmp-`echo $target | sed s/.*[\\/]//g`" + target=tmp-`printf '%s\n' "$target" | sed s/.*[\\/]//g` fi # Munge "#line" or "#" directives. # We don't want the resulting debug information to point at @@ -207,8 +207,8 @@ if test $ret -eq 0; then FROM=`guard "$from"` TARGET=`guard "$to"` - sed -e "/^#/!b" -e "s,$input_rx,$input_sub_rx," -e "$rename_sed" \ - -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? + sed -e "/^#/!b" -e "s|$input_rx|$input_sub_rx|" -e "$rename_sed" \ + -e "s|$FROM|$TARGET|" "$from" >"$target" || ret=$? # Check whether header files must be updated. if test $first = no; then -- cgit v1.2.1 From 7e31ff5cb4b744454774c73032e95bba0a481506 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Fri, 13 Jul 2012 13:14:44 +0200 Subject: ylwrap: comment changes * lib/ylwrap: Improve some comments. --- lib/ylwrap | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index f64b2b58a..725b38838 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -188,25 +188,22 @@ if test $ret -eq 0; then *) target="../$to";; esac - # We do not want to overwrite a header file if it hasn't - # changed. This avoid useless recompilations. However the - # parser itself (the first file) should always be updated, - # because it is the destination of the .y.c rule in the - # Makefile. Divert the output of all other files to a temporary - # file so we can compare them to existing versions. + # Do not overwrite unchanged header files to avoid useless + # recompilations. Always update the parser itself (the first + # file): it is the destination of the .y.c rule in the Makefile. + # Divert the output of all other files to a temporary file so we + # can compare them to existing versions. if test $first = no; then realtarget="$target" target=tmp-`printf '%s\n' "$target" | sed s/.*[\\/]//g` fi - # Munge "#line" or "#" directives. - # We don't want the resulting debug information to point at - # an absolute srcdir. - # We want to use the real output file name, not yy.lex.c for - # instance. - # We want the include guards to be adjusted too. + + # Munge "#line" or "#" directives. Don't let the resulting + # debug information point at an absolute srcdir. Use the real + # output file name, not yy.lex.c for instance. Adjust the + # include guards too. FROM=`guard "$from"` TARGET=`guard "$to"` - sed -e "/^#/!b" -e "s|$input_rx|$input_sub_rx|" -e "$rename_sed" \ -e "s|$FROM|$TARGET|" "$from" >"$target" || ret=$? -- cgit v1.2.1 From 9404f529bc178d75ee8003853e1fa67281cd080d Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 14 Jul 2012 09:07:52 +0200 Subject: tests: fix bison input file Do not provide implementations in the %{...%} section, especially if the header is included elsewhere, since then the linker will complain about multiple definitions. Reported by Stefano Lattarini, . * t/yacc-bison-skeleton.sh (zardoz.y): Define yylex and yyerror in the epilogue. --- t/yacc-bison-skeleton.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/t/yacc-bison-skeleton.sh b/t/yacc-bison-skeleton.sh index 5bf909239..9e9f514f0 100755 --- a/t/yacc-bison-skeleton.sh +++ b/t/yacc-bison-skeleton.sh @@ -35,11 +35,14 @@ END # Parser. cat > zardoz.y << 'END' %{ -int yylex () { return 0; } -void yyerror (const char *s) { return; } +int yylex (); +void yyerror (const char *s); %} %% foobar : 'f' 'o' 'o' 'b' 'a' 'r' {}; +%% +int yylex () { return 0; } +void yyerror (const char *s) { return; } END cat > foo.c << 'END' -- cgit v1.2.1 From 9a6a600138d30d36e02d186625cc3932d4624aec Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 14 Jul 2012 10:01:40 +0200 Subject: tests: upgrade and fix Bison test case * t/yacc-bison-skeleton-cxx.sh: Request locations, to be even more stressful. Use %union to make sure the %{...%} is inserted where appropriate. Fix some indentation/coding style issues. --- t/yacc-bison-skeleton-cxx.sh | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/t/yacc-bison-skeleton-cxx.sh b/t/yacc-bison-skeleton-cxx.sh index 609ebc24e..a02a25a8c 100755 --- a/t/yacc-bison-skeleton-cxx.sh +++ b/t/yacc-bison-skeleton-cxx.sh @@ -40,10 +40,15 @@ END cat > zardoz.yy << 'END' %skeleton "lalr1.cc" %defines +%locations +%union +{ + int ival; +}; %{ -#define YYSTYPE int -int yylex(YYSTYPE* yylval_param); +int yylex (yy::parser::semantic_type *yylval, + yy::parser::location_type *yylloc); %} %% @@ -51,23 +56,22 @@ start : /* empty */ %% int -yylex(YYSTYPE*) +yylex (yy::parser::semantic_type *yylval, + yy::parser::location_type *yylloc) { - return 0; + return 0; } void -yy::parser::error(const yy::parser::location_type&, const std::string& m) +yy::parser::error(const yy::parser::location_type&, const std::string&) { - return; + return; } END cat > foo.cc << 'END' #include "zardoz.hh" -using namespace std; - int main(int argc, char** argv) { -- cgit v1.2.1 From cfda11fb768888fb2802e265ed8d5438cef2f123 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 14 Jul 2012 10:08:52 +0200 Subject: ylwrap: refactoring: don't rely on the file order Forthcoming changes will make us iterate over the files in a different order. lib/ylwrap (first): Remove, replaced by... (parser): this. --- lib/ylwrap | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index 725b38838..d245ba098 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -117,6 +117,9 @@ if test -f y_tab.c || test -f y_tab.h; then y_tab_nodot=true fi +# The parser itself, the first file, is the destination of the .y.c +# rule in the Makefile. +parser=$1 # The list of file to rename: FROM TO... pairlist= # A sed program to s/FROM/TO/g for all the FROM/TO so that, for @@ -173,7 +176,6 @@ ret=$? if test $ret -eq 0; then set X $pairlist shift - first=yes input_rx=`get_dirname "$input" | quote_for_sed` @@ -189,11 +191,11 @@ if test $ret -eq 0; then esac # Do not overwrite unchanged header files to avoid useless - # recompilations. Always update the parser itself (the first - # file): it is the destination of the .y.c rule in the Makefile. - # Divert the output of all other files to a temporary file so we - # can compare them to existing versions. - if test $first = no; then + # recompilations. Always update the parser itself: it is the + # destination of the .y.c rule in the Makefile. Divert the + # output of all other files to a temporary file so we can + # compare them to existing versions. + if test $from != $parser; then realtarget="$target" target=tmp-`printf '%s\n' "$target" | sed s/.*[\\/]//g` fi @@ -207,8 +209,8 @@ if test $ret -eq 0; then sed -e "/^#/!b" -e "s|$input_rx|$input_sub_rx|" -e "$rename_sed" \ -e "s|$FROM|$TARGET|" "$from" >"$target" || ret=$? - # Check whether header files must be updated. - if test $first = no; then + # Check whether files must be updated. + if test "$from" != "$parser"; then if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then echo "$to is unchanged" rm -f "$target" @@ -218,17 +220,15 @@ if test $ret -eq 0; then fi fi else - # A missing file is only an error for the first file. This - # is a blatant hack to let us support using "yacc -d". If -d - # is not specified, we don't want an error when the header - # file is "missing". - if test $first = yes; then + # A missing file is only an error for the parser. This is a + # blatant hack to let us support using "yacc -d". If -d is not + # specified, don't fail when the header file is "missing". + if test "$from" = "$parser"; then ret=1 fi fi shift shift - first=no done else ret=$? -- cgit v1.2.1 From 4ce3d13166d90a8be9f00b66c9e3a8275cd0d0ac Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 14 Jul 2012 10:09:15 +0200 Subject: ylwrap: refactor: move loop invariant * lib/ylwrap (input_rx): Move its definition next to its sibling's, outside of the main loop. --- lib/ylwrap | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index d245ba098..30e8a6c68 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -108,6 +108,7 @@ case "$input" in input="`pwd`/$input" ;; esac +input_rx=`get_dirname "$input" | quote_for_sed` # Since DOS filename conventions don't allow two dots, # the DOS version of Bison writes out y_tab.c instead of y.tab.c @@ -176,9 +177,6 @@ ret=$? if test $ret -eq 0; then set X $pairlist shift - - input_rx=`get_dirname "$input" | quote_for_sed` - while test "$#" -ne 0; do from=$1 to=$2 -- cgit v1.2.1 From fa10457919d195957bae104cce6be8ccebd53347 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 14 Jul 2012 16:57:02 +0200 Subject: ylwrap: fix C++ support for Bison Fixes automake bug#7648. The current logic of ylwrap is to call yacc in a sub directory, and pull out of it all the files that were requested on its command line. Reverse this approach: export *all* the files created in the subdirectory, but rename them according to what the command says. This way, extra files, such as position.hh, location.hh and stack.hh for C++ parsers, but also parser.xml or parser.dot if XML or Dot output is enabled, will be preserved. * lib/ylwrap (pairlist): Remove. (main loop): Don't loop over pairlist, but over the files in the temporary directory. * t/list-of-tests.mk (XFAIL_TESTS): Fixes t/yacc-bison-skeleton-cxx.sh. * THANKS (James Bostock): Add, he reported bug#7648. Signed-off-by: Stefano Lattarini --- THANKS | 1 + lib/ylwrap | 15 ++++----------- t/list-of-tests.mk | 1 - 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/THANKS b/THANKS index afdd33a72..ca95db802 100644 --- a/THANKS +++ b/THANKS @@ -150,6 +150,7 @@ Imacat imacat@mail.imacat.idv.tw Inoue inoue@ainet.or.jp Jack Kelly jack@jackkelly.name James Amundson amundson@users.sourceforge.net +James Bostock james.bostock@gmail.com James Henstridge james@daa.com.au James R. Van Zandt jrv@vanzandt.mv.com James Youngman jay@gnu.org diff --git a/lib/ylwrap b/lib/ylwrap index 30e8a6c68..49116e5fd 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -1,7 +1,7 @@ #! /bin/sh # ylwrap - wrapper for lex/yacc invocations. -scriptversion=2012-07-13.14; # UTC +scriptversion=2012-07-14.08; # UTC # Copyright (C) 1996-2012 Free Software Foundation, Inc. # @@ -121,8 +121,6 @@ fi # The parser itself, the first file, is the destination of the .y.c # rule in the Makefile. parser=$1 -# The list of file to rename: FROM TO... -pairlist= # A sed program to s/FROM/TO/g for all the FROM/TO so that, for # instance, we rename #include "y.tab.h" into #include "parse.h" # during the conversion from y.tab.c to parse.c. @@ -143,7 +141,6 @@ while test "$#" -ne 0; do shift to=$1 shift - pairlist="$pairlist $from $to" rename_sed="${rename_sed}s|"`quote_for_sed "$from"`"|$to|g;" done @@ -175,11 +172,9 @@ esac ret=$? if test $ret -eq 0; then - set X $pairlist - shift - while test "$#" -ne 0; do - from=$1 - to=$2 + for from in * + do + to=`printf '%s\n' "$from" | sed "$rename_sed"` if test -f "$from"; then # If $2 is an absolute path name, then just use that, # otherwise prepend '../'. @@ -225,8 +220,6 @@ if test $ret -eq 0; then ret=1 fi fi - shift - shift done else ret=$? diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk index 9f0e12319..a0209d41e 100644 --- a/t/list-of-tests.mk +++ b/t/list-of-tests.mk @@ -30,7 +30,6 @@ t/pm/Version3.pl XFAIL_TESTS = \ t/all.sh \ -t/yacc-bison-skeleton-cxx.sh \ t/cond17.sh \ t/gcj6.sh \ t/override-conditional-2.sh \ -- cgit v1.2.1 From ae387d32c1ae8173cffb5019bf6db12a4de0177c Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Sat, 14 Jul 2012 11:04:42 +0200 Subject: ylwrap: don't uselessly reset the exit status in case of failure * lib/ylwrap: Here. In case of a failure in the wrapped yacc/lex invocation, '$ret' (holding the final exit status of ylwrap) was being uselessly reset to '1' in the later if/else. Signed-off-by: Stefano Lattarini --- lib/ylwrap | 2 -- 1 file changed, 2 deletions(-) diff --git a/lib/ylwrap b/lib/ylwrap index 49116e5fd..73dba2b1a 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -221,8 +221,6 @@ if test $ret -eq 0; then fi fi done -else - ret=$? fi # Remove the directory. -- cgit v1.2.1 From aad12dcc668dfdfdb193e4e734ceb7235ea6edfc Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Sat, 14 Jul 2012 11:07:34 +0200 Subject: ylwrap: use proper quoting inside a `...` substitution * lib/ylwrap ($target): Here, when redefining this to a temporary file. Signed-off-by: Stefano Lattarini --- lib/ylwrap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ylwrap b/lib/ylwrap index 73dba2b1a..7befa46de 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -190,7 +190,7 @@ if test $ret -eq 0; then # compare them to existing versions. if test $from != $parser; then realtarget="$target" - target=tmp-`printf '%s\n' "$target" | sed s/.*[\\/]//g` + target=tmp-`printf '%s\n' "$target" | sed 's|.*[\\/]||g'` fi # Munge "#line" or "#" directives. Don't let the resulting -- cgit v1.2.1 From b67f8fde3a8052881dfa78b3b04d5b917b750a7f Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Sat, 14 Jul 2012 12:31:19 +0200 Subject: yacc tests: fix a spurious failure with parallel make * t/yacc-bison-skeleton.sh (Makefile.am): Add 'zardoz.h' to BUILT_SOURCES. Signed-off-by: Stefano Lattarini --- t/yacc-bison-skeleton.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/t/yacc-bison-skeleton.sh b/t/yacc-bison-skeleton.sh index 9e9f514f0..f4fdf327d 100755 --- a/t/yacc-bison-skeleton.sh +++ b/t/yacc-bison-skeleton.sh @@ -30,6 +30,7 @@ cat > Makefile.am << 'END' bin_PROGRAMS = zardoz zardoz_SOURCES = zardoz.y foo.c AM_YFLAGS = -d --skeleton glr.c +BUILT_SOURCES = zardoz.h END # Parser. -- cgit v1.2.1 From c08068901f025912c8bd442f9e167546b8805753 Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Sat, 14 Jul 2012 18:38:31 +0200 Subject: configure: ${#param} must be supported by the shell for the testsuite This will be required at least by the Automake-NG branch. * configure.ac: Require the $AM_TEST_RUNNER_SHELL supports ${#param} as a way to obtain the length of the expansion of the variable $param. Signed-off-by: Stefano Lattarini --- configure.ac | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/configure.ac b/configure.ac index d49da6c61..a8db0614e 100644 --- a/configure.ac +++ b/configure.ac @@ -296,6 +296,14 @@ AC_DEFUN([_AM_CHECK_CANDIDATE_SHELL], [test $((1 + 2 * 3)) = 7], [], [am_score=1; break]) + _AM_CHECK_SHELL_FEATURE([$1], + [supports \${@%:@var}], + [zero='' one='x' twelve=' foobar baz!' \ + && test ${@%:@zero} -eq 0 \ + && test ${@%:@one} -eq 1 \ + && test ${@%:@twelve} -eq 12], + [], [am_score=1; break]) + _AM_CHECK_SHELL_FEATURE([$1], [supports \${var@%:@glob} and \${var%glob}], [v=a/b/c \ -- cgit v1.2.1 From 6e3c0b92fdef5119ea2ca508061a9b46ef4c251b Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Sat, 14 Jul 2012 18:49:25 +0200 Subject: m4: get rid of "# serial" lines The "#serial" lines are only considered by aclocal for the system-wide third-party '.m4' files, not for the Automake-provided ones. So they serve no real purpose in the Automake '.m4' files. In addition, now that we use git and topic branches, and that we are also writing the Automake-NG fork, the "#serial" lines are becoming more and more unreliable (e.g., different version of the same file in different branches can easily end up having the same serial numbers). So let's just nuke all the "#serial" lines. See also automake bug#11932. * m4/*.m4: All "# serial" lines removed. Signed-off-by: Stefano Lattarini --- NEWS | 6 ++++++ m4/amversion.m4 | 2 -- m4/ar-lib.m4 | 2 -- m4/as.m4 | 2 -- m4/auxdir.m4 | 2 -- m4/ccstdc.m4 | 2 -- m4/cond-if.m4 | 3 --- m4/cond.m4 | 2 -- m4/depend.m4 | 1 - m4/depout.m4 | 1 - m4/dmalloc.m4 | 2 -- m4/gcj.m4 | 2 -- m4/header.m4 | 2 -- m4/init.m4 | 2 -- m4/install-sh.m4 | 2 -- m4/lead-dot.m4 | 2 -- m4/lex.m4 | 2 -- m4/lispdir.m4 | 2 -- m4/maintainer.m4 | 2 -- m4/make.m4 | 2 -- m4/minuso.m4 | 2 -- m4/missing.m4 | 3 --- m4/mkdirp.m4 | 2 -- m4/obsol-gt.m4 | 2 -- m4/obsol-lt.m4 | 2 -- m4/obsolete.m4 | 2 -- m4/options.m4 | 2 -- m4/protos.m4 | 2 -- m4/python.m4 | 1 - m4/runlog.m4 | 2 -- m4/sanity.m4 | 2 -- m4/silent.m4 | 2 -- m4/strip.m4 | 2 -- m4/substnot.m4 | 2 -- m4/tar.m4 | 2 -- m4/upc.m4 | 2 -- m4/vala.m4 | 2 -- 37 files changed, 6 insertions(+), 71 deletions(-) diff --git a/NEWS b/NEWS index a18e36e28..77344f888 100644 --- a/NEWS +++ b/NEWS @@ -66,6 +66,12 @@ New in 1.12.3: giving more useful warnings than a bare "command not found" from a make recipe would. +* M4 files: + + - The '.m4' files provided by Automake does not define serial numbers + anymore. This should cause no difference in the behaviour of aclocal + though. + * Automake Testsuite: - Some testsuite weaknesses and spurious failures have been fixed. diff --git a/m4/amversion.m4 b/m4/amversion.m4 index 3182ffb2e..4dbc326cf 100644 --- a/m4/amversion.m4 +++ b/m4/amversion.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been diff --git a/m4/ar-lib.m4 b/m4/ar-lib.m4 index 470def48c..b6b6b0f76 100644 --- a/m4/ar-lib.m4 +++ b/m4/ar-lib.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 1 - # AM_PROG_AR([ACT-IF-FAIL]) # ------------------------- # Try to determine the archiver interface, and trigger the ar-lib wrapper diff --git a/m4/as.m4 b/m4/as.m4 index fa6d3c8e6..27b322016 100644 --- a/m4/as.m4 +++ b/m4/as.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 5 - # AM_PROG_AS # ---------- AC_DEFUN([AM_PROG_AS], diff --git a/m4/auxdir.m4 b/m4/auxdir.m4 index 3dda02b26..9cd72c3e8 100644 --- a/m4/auxdir.m4 +++ b/m4/auxdir.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to # '$srcdir', '$srcdir/..', or '$srcdir/../..'. diff --git a/m4/ccstdc.m4 b/m4/ccstdc.m4 index d57f0554a..66060d9bd 100644 --- a/m4/ccstdc.m4 +++ b/m4/ccstdc.m4 @@ -9,8 +9,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 5 - # This was merged into AC_PROG_CC in Autoconf. AU_DEFUN([AM_PROG_CC_STDC], diff --git a/m4/cond-if.m4 b/m4/cond-if.m4 index 80e687b17..38f5ec979 100644 --- a/m4/cond-if.m4 +++ b/m4/cond-if.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 - # _AM_COND_IF # _AM_COND_ELSE # _AM_COND_ENDIF @@ -17,7 +15,6 @@ m4_define([_AM_COND_IF]) m4_define([_AM_COND_ELSE]) m4_define([_AM_COND_ENDIF]) - # AM_COND_IF(COND, [IF-TRUE], [IF-FALSE]) # --------------------------------------- # If the shell condition COND is true, execute IF-TRUE, otherwise execute diff --git a/m4/cond.m4 b/m4/cond.m4 index 03644abe0..9ea857e55 100644 --- a/m4/cond.m4 +++ b/m4/cond.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 10 - # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. diff --git a/m4/depend.m4 b/m4/depend.m4 index cee31991b..cd9306173 100644 --- a/m4/depend.m4 +++ b/m4/depend.m4 @@ -5,7 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 17 # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, diff --git a/m4/depout.m4 b/m4/depout.m4 index 749e592df..f592b0019 100644 --- a/m4/depout.m4 +++ b/m4/depout.m4 @@ -6,7 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ diff --git a/m4/dmalloc.m4 b/m4/dmalloc.m4 index be1a5b3c9..f9d600f5b 100644 --- a/m4/dmalloc.m4 +++ b/m4/dmalloc.m4 @@ -9,8 +9,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 - AC_DEFUN([AM_WITH_DMALLOC], [AC_MSG_CHECKING([if malloc debugging is wanted]) AC_ARG_WITH([dmalloc], diff --git a/m4/gcj.m4 b/m4/gcj.m4 index e7cdd694c..fd2a5df3d 100644 --- a/m4/gcj.m4 +++ b/m4/gcj.m4 @@ -7,8 +7,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - AC_DEFUN([AM_PROG_GCJ], [AC_CHECK_TOOLS([GCJ], [gcj], [gcj]) test -z "$GCJ" && AC_MSG_ERROR([no acceptable gcj found in \$PATH]) diff --git a/m4/header.m4 b/m4/header.m4 index 2555b9679..e649ba479 100644 --- a/m4/header.m4 +++ b/m4/header.m4 @@ -5,7 +5,5 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - # AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) diff --git a/m4/init.m4 b/m4/init.m4 index cf47e76d2..5e1bbe3b1 100644 --- a/m4/init.m4 +++ b/m4/init.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 19 - # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. diff --git a/m4/install-sh.m4 b/m4/install-sh.m4 index 8061e7e12..f51c02757 100644 --- a/m4/install-sh.m4 +++ b/m4/install-sh.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. diff --git a/m4/lead-dot.m4 b/m4/lead-dot.m4 index 8a8680539..633694fdd 100644 --- a/m4/lead-dot.m4 +++ b/m4/lead-dot.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], diff --git a/m4/lex.m4 b/m4/lex.m4 index 4cda8a9f4..6eb4a9142 100644 --- a/m4/lex.m4 +++ b/m4/lex.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 - # AM_PROG_LEX # ----------- # Autoconf leaves LEX=: if lex or flex can't be found. Change that to a diff --git a/m4/lispdir.m4 b/m4/lispdir.m4 index 2dd6a0f5c..6dca47e8a 100644 --- a/m4/lispdir.m4 +++ b/m4/lispdir.m4 @@ -9,8 +9,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 11 - # AM_PATH_LISPDIR # --------------- AC_DEFUN([AM_PATH_LISPDIR], diff --git a/m4/maintainer.m4 b/m4/maintainer.m4 index a8f39a343..604eb8963 100644 --- a/m4/maintainer.m4 +++ b/m4/maintainer.m4 @@ -7,8 +7,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 7 - # AM_MAINTAINER_MODE([DEFAULT-MODE]) # ---------------------------------- # Control maintainer-specific portions of Makefiles. diff --git a/m4/make.m4 b/m4/make.m4 index c4ba1a6d0..245c2e676 100644 --- a/m4/make.m4 +++ b/m4/make.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 5 - # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. diff --git a/m4/minuso.m4 b/m4/minuso.m4 index 7787ddf4b..50af200cb 100644 --- a/m4/minuso.m4 +++ b/m4/minuso.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 - # AM_PROG_CC_C_O # -------------- # Like AC_PROG_CC_C_O, but changed for automake. diff --git a/m4/missing.m4 b/m4/missing.m4 index e12480334..6c2a55d10 100644 --- a/m4/missing.m4 +++ b/m4/missing.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 7 - # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], @@ -15,7 +13,6 @@ AC_DEFUN([AM_MISSING_PROG], $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) - # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it supports --run. diff --git a/m4/mkdirp.m4 b/m4/mkdirp.m4 index d362b0b95..9155ace20 100644 --- a/m4/mkdirp.m4 +++ b/m4/mkdirp.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 - # AM_PROG_MKDIR_P # --------------- # Check for 'mkdir -p'. diff --git a/m4/obsol-gt.m4 b/m4/obsol-gt.m4 index bd2400d73..66721d321 100644 --- a/m4/obsol-gt.m4 +++ b/m4/obsol-gt.m4 @@ -6,7 +6,5 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # See comment in obsolete.m4. AU_DEFUN([ud_GNU_GETTEXT], [AM_GNU_GETTEXT]) diff --git a/m4/obsol-lt.m4 b/m4/obsol-lt.m4 index af8fb1b98..1fcc21184 100644 --- a/m4/obsol-lt.m4 +++ b/m4/obsol-lt.m4 @@ -6,7 +6,5 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # See comment in obsolete.m4. AU_DEFUN([gm_PROG_LIBTOOL], [AM_PROG_LIBTOOL]) diff --git a/m4/obsolete.m4 b/m4/obsolete.m4 index 9a26cacc6..c77c45233 100644 --- a/m4/obsolete.m4 +++ b/m4/obsolete.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # Obsolete Automake macros. # We put here only the macros whose substitution is not an Automake diff --git a/m4/options.m4 b/m4/options.m4 index 76ad6428c..ebf3cf00d 100644 --- a/m4/options.m4 +++ b/m4/options.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 - # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], diff --git a/m4/protos.m4 b/m4/protos.m4 index 942154b58..c8c7adc2c 100644 --- a/m4/protos.m4 +++ b/m4/protos.m4 @@ -7,8 +7,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 - AC_DEFUN([AM_C_PROTOTYPES], [AC_FATAL([automatic de-ANSI-fication support has been removed])]) diff --git a/m4/python.m4 b/m4/python.m4 index 35488868e..a2478181f 100644 --- a/m4/python.m4 +++ b/m4/python.m4 @@ -9,7 +9,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 9 # AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # --------------------------------------------------------------------------- diff --git a/m4/runlog.m4 b/m4/runlog.m4 index 6d127a830..d983b718e 100644 --- a/m4/runlog.m4 +++ b/m4/runlog.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 1 - # AM_RUN_LOG(COMMAND) # ------------------- # Run COMMAND, save the exit status in ac_status, and log it. diff --git a/m4/sanity.m4 b/m4/sanity.m4 index c90bc9809..0415711b8 100644 --- a/m4/sanity.m4 +++ b/m4/sanity.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 9 - # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], diff --git a/m4/silent.m4 b/m4/silent.m4 index d499ecb65..6746c6fa6 100644 --- a/m4/silent.m4 +++ b/m4/silent.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 - # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT diff --git a/m4/strip.m4 b/m4/strip.m4 index 42833ca09..d66f3f2e4 100644 --- a/m4/strip.m4 +++ b/m4/strip.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 - # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor 'install' (even GNU) is that you can't diff --git a/m4/substnot.m4 b/m4/substnot.m4 index 64d91ff3e..1830e796d 100644 --- a/m4/substnot.m4 +++ b/m4/substnot.m4 @@ -5,8 +5,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 - # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. diff --git a/m4/tar.m4 b/m4/tar.m4 index 244c7295a..d3e23dd43 100644 --- a/m4/tar.m4 +++ b/m4/tar.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 - # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. diff --git a/m4/upc.m4 b/m4/upc.m4 index 9ba1025ea..0df8197b6 100644 --- a/m4/upc.m4 +++ b/m4/upc.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 1 - AC_DEFUN([AM_PROG_UPC], [dnl We need OBJEXT and EXEEXT, but Autoconf doesn't offer any public dnl macro to compute them. Use AC_PROG_CC instead. diff --git a/m4/vala.m4 b/m4/vala.m4 index cc6ba53cc..5dad452bf 100644 --- a/m4/vala.m4 +++ b/m4/vala.m4 @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 6 - # Check whether the Vala compiler exists in $PATH. If it is found, the # variable VALAC is set. Optionally a minimum release number of the # compiler can be requested. -- cgit v1.2.1 From eef78e2c35ec51b607e767d544770d57c587c06d Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sun, 15 Jul 2012 11:23:59 +0200 Subject: news: update about recent ylwrap changes and fixes * NEWS: In ylwrap, renamings are properly propagated, and unknown files are preserved. Signed-off-by: Stefano Lattarini --- NEWS | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/NEWS b/NEWS index a18e36e28..08318523a 100644 --- a/NEWS +++ b/NEWS @@ -66,6 +66,18 @@ New in 1.12.3: giving more useful warnings than a bare "command not found" from a make recipe would. +* Long-standing bugs: + + - Instead of renaming only self-references of files (typically for + #lines), ylwrap now also renames references to the other generated + files. This fixes support for GLR and C++ parsers from Bison (PR + automake/491 and automake bug#7648): 'parser.c' now properly + #includes 'parser.h' instead of 'y.tab.h'. + + - Generated files unknown to ylwrap are now preserved. This fixes + C++ support for Bison (automake bug#7648): location.hh and the + like are no longer discarded. + * Automake Testsuite: - Some testsuite weaknesses and spurious failures have been fixed. -- cgit v1.2.1 From 455437e864ee89f3e09b2d18a7215a79291925d1 Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Mon, 16 Jul 2012 11:11:34 +0200 Subject: fixup: delete "# serial" line in m4/amversion.in Otherwise, when m4/amversion.m4 is regenerated, it will contain a serial line as well. Signed-off-by: Stefano Lattarini --- m4/amversion.in | 2 -- 1 file changed, 2 deletions(-) diff --git a/m4/amversion.in b/m4/amversion.in index e44ace137..3661259a3 100644 --- a/m4/amversion.in +++ b/m4/amversion.in @@ -6,8 +6,6 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 - # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been -- cgit v1.2.1