GNU bug report logs -
#17471
On Solaris 10, grep snapshot apparently hit by bleeding-edge Autoconf bug
Previous Next
Reported by: Paul Eggert <eggert <at> cs.ucla.edu>
Date: Sun, 11 May 2014 20:50:02 UTC
Severity: normal
Done: Paul Eggert <eggert <at> cs.ucla.edu>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Mon, 12 May 2014 11:44:46 -0700
with message-id <5371169E.4060103 <at> cs.ucla.edu>
and subject line Re: bug#17471: On Solaris 10, grep snapshot apparently hit by bleeding-edge Autoconf bug
has caused the debbugs.gnu.org bug report #17471,
regarding On Solaris 10, grep snapshot apparently hit by bleeding-edge Autoconf bug
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
17471: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17471
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
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.
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
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 (text/x-patch, attachment)]
This bug report was last modified 11 years and 15 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.