tests: avoid a "grep -E" portability issue
authorStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 18 Dec 2012 10:46:40 +0000 (11:46 +0100)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 18 Dec 2012 13:47:29 +0000 (14:47 +0100)
As stated in the Autoconf manual, the empty alternative is not portable
with "grep -E".  For example, while with GNU grep we have:

    $ echo b | grep -E '(|a)b'; echo status = $?
    b
    status = 0

with Solaris 10 /usr/xpg4/bin/grep we have:

    $ echo b | grep -E '(|a)b'; echo status = $?
    1
    status = 1

* t/silent-texi.sh: That was causing a spurious failure here.  Fix it
by simply using '?' instead (as suggested by the Autoconf manual).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
t/silent-texi.sh

index 358d068..3ddbc40 100755 (executable)
@@ -55,13 +55,13 @@ test $st -eq 0
 grep '^  DVIPS    foo\.ps$'         stdout
 grep '^  MAKEINFO foo\.html$'       stdout
 # NetBSD make will print './foo.info' instead of 'foo.info'.
-$EGREP '^  MAKEINFO (|\./)foo\.info$'       stdout
+$EGREP '^  MAKEINFO (\./)?foo\.info$' stdout
 grep '^  TEXI2DVI foo\.dvi$'        stdout
 grep '^  TEXI2PDF foo\.pdf$'        stdout
 grep '^  DVIPS    sub/zardoz.ps$'   stdout
 grep '^  MAKEINFO sub/zardoz.html$' stdout
 # NetBSD make will print './sub/zardoz.info' instead of 'zardoz.info'.
-$EGREP '^  MAKEINFO (|\./)sub/zardoz.info$' stdout
+$EGREP '^  MAKEINFO (\./)?sub/zardoz.info$' stdout
 grep '^  TEXI2DVI sub/zardoz.dvi$'  stdout
 grep '^  TEXI2PDF sub/zardoz.pdf$'  stdout
 # No make recipe is displayed before being executed.