2006-09-08 Stepan Kasal * tests/local.at (AT_CHECK_M4): Fix this so that the testsuite works with GNU M4 1.4.3 again; make the normalized form match the current m4 message; fix the description. * test/tools.at (autom4te cache): Adapt to the change. Index: tests/local.at =================================================================== RCS file: /cvsroot/autoconf/autoconf/tests/local.at,v retrieving revision 1.34 diff -u -r1.34 local.at --- tests/local.at 24 Aug 2006 22:56:47 -0000 1.34 +++ tests/local.at 8 Sep 2006 15:54:05 -0000 @@ -63,40 +63,50 @@ # AT_CHECK_M4(COMMAND, [EXIT-STATUS = 0], STDOUT, STDERR) # ------------------------------------------------------- -# If stderr is specified, normalize the observed stderr. E.g. (GNU M4 1.5): +# If stderr is specified, normalize the observed stderr. +# This (using GNU M4 1.4.6 or later) # -# /usr/local/bin/m4: script.4s: 1: Cannot open foo: No such file or directory +# /usr/local/bin/m4:script.4s:1: cannot open `foo': No such file or directory # autom4te: /usr/local/bin/m4 failed with exit status: 1 # -# or (using gm4 as GNU M4 1.4): +# or this (GNU M4 1.4 installed as gm4) # # script.4s:1: /usr/local/bin/gm4: Cannot open foo: No such file or directory # autom4te: /usr/local/bin/gm4 failed with exit status: 1 # # becomes # -# m4: script.4s: 1: Cannot open foo: No such file or directory +# m4:script.4s:1: cannot open `foo': No such file or directory # autom4te: m4 failed with exit status: 1 # # We use the following sed patterns: # -# (file): (line): (m4): -# or (m4): (file): (line): -# to m4: (file): (line): +# (m4): ?(file): ?(line): +# or (file): ?(line): ?(m4): +# to m4:(file):(line): +# +# and +# m4:(file):(line): Cannot open foo: +# to m4:(file):(line): cannot open `foo': # # and # autom4te: [^ ]m4 # or autom4te: [^ ]m4.exe # to autom4te: m4 +# +# Moreover, DJGPP error messages include the error code in brackets; +# remove the error code during normalization. +# m4_define([AT_CHECK_M4], [AT_CHECK([$1], [$2], [$3], m4_ifval([$4], [stderr])) m4_ifval([$4], -[AT_CHECK([[sed -e 's/^\([^:]*\): *\([0-9][0-9]*\): *[^:]*m4: /m4: \1: \2: /' \ - -e 's/^[^:]*m4: *\([^:]*\): *\([0-9][0-9]*\): /m4: \1: \2: /' \ - -e 's/^autom4te: [^ ]*m4 /autom4te: m4 /' \ - -e 's/^autom4te: [^ ]*m4\.exe /autom4te: m4 /' \ - -e 's/ (E[A-Z]*)$//' \ - stderr]], [0],[$4])]) +[AT_CHECK([[sed 's/^[^:]*m4: *\([^:]*:\) *\([0-9][0-9]*: \)/m4:\1\2/ + s/^\([^:]*:\) *\([0-9][0-9]*:\)[^:]*m4: /m4:\1\2 / + s/^\(m4:[^:]*:[0-9][0-9]*: \)C\(annot open \)\([^`:]*\):/\1c\2`\3'\'':/ + s/^autom4te: [^ ]*m4 /autom4te: m4 / + s/^autom4te: [^ ]*m4\.exe /autom4te: m4 / + s/ (E[A-Z]*)$// + ' stderr]], [0],[$4])]) ]) # AT_CHECK_AUTOM4TE(FLAGS, [EXIT-STATUS = 0], STDOUT, STDERR) Index: tests/tools.at =================================================================== RCS file: /cvsroot/autoconf/autoconf/tests/tools.at,v retrieving revision 1.91 diff -u -r1.91 tools.at --- tests/tools.at 24 Aug 2006 22:56:47 -0000 1.91 +++ tests/tools.at 8 Sep 2006 15:54:06 -0000 @@ -100,7 +100,7 @@ mkdir sub mv foo sub AT_CHECK_M4SUGAR([], [1], [], -[m4: script.4s: 1: cannot open `foo': No such file or directory +[m4:script.4s:1: cannot open `foo': No such file or directory autom4te: m4 failed with exit status: 1 ])