--- Begin Message ---
Subject: |
On Solaris 10, grep snapshot apparently hit by bleeding-edge Autoconf bug |
Date: |
Sun, 11 May 2014 13:48:32 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 |
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.
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#17471: On Solaris 10, grep snapshot apparently hit by bleeding-edge Autoconf bug |
Date: |
Mon, 12 May 2014 11:44:46 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 |
On 05/12/2014 10:33 AM, Jim Meyering wrote:
Does anyone see a way to make it more efficient with a POSIX shell?
Yes. Eric's earlier message convinced me that grep shouldn't rely on
Autoconf guaranteeing a shell that supports substrings in parameter
expansion, so I came up with the attached patch (which keeps the shell
efficient with a POSIX shell) and pushed it before I got around to
reading your message. I tested on Solaris 10 with the shell
artificially set to /bin/sh, so I'm marking this as done.
From an Autoconf point of view it might be nice to have a good way to
say "I need a POSIX shell" or at least "I need a shell that does
substrings", but that's merely a wishlist item.
0001-egrep-fgrep-port-to-Solaris-10-bin-sh.patch
Description: Text Data
--- End Message ---