Subject: On Solaris 10, grep snapshot apparently hit by bleeding-edge Autoconf bug
From: Paul Eggert <[email-masked]>
To: grep mailing list <[email-masked]>
Cc: Autoconf bugs <[email-masked]>
Date: Sun, 11 May 2014 13:48:32 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Following up to the grep snapshot announcement in:

http://lists.gnu.org/archive/html/platform-testers/2014-05/msg00000.html

That snapshot failed to build the shell scripts egrep and fgrep properly 
on Solaris 10, because it set "SHELL = /bin/sh" in src/Makefile, which 
caused the makefile to put "#!/bin/sh" at the top of the shell scripts, 
which breaks because the shell scripts use a construct '${0%/*}' that 
Solaris 10 /bin/sh doesn't grok.  The build should have used SHELL = 
/bin/bash, which is what grep does with my test builds.

We could work around the problem by avoiding that shell construct, but 
I'd rather fix the build machinery because this bug could affect any 
package that uses POSIX shell scripts.  The snapshot was built with an 
experimental version of Autoconf (2.69.117-1717), whereas I had tested 
with the latest stable version (2.69 as shipped with Fedora 20).  The 
two versions differ in how they compute the name of a working shell, so 
it appears that there's a bug in the experimental version of Autoconf.

A quick workaround for grep is to build the next snapshot with Autoconf 
2.69.  In the long run, though, we should fix the Autoconf bug.  I'll 
CC: this to bug-autoconf to give them a heads-up.