Subject: Re: pkg/13625: /bin/sh eval fails in common configure test when $MAKE contains '/'
To: None <gnats-admin@netbsd.org, pkg-manager@netbsd.org>
From: John Darrow <John.P.Darrow@wheaton.edu>
List: netbsd-bugs
Date: 08/03/2001 16:57:24
Okay, it turns out that the supposed "success/failure" on bash had more
to do with the number of slashes instead of starting with '.', since
bash does search-and-replace in variable expansions using '/'...
It looks like a fix has been added to autoconf somewhere between 2.1
(the buggy version in devel/m4) and 2.13 (present in sysutils/amanda).
The 2.13 fixed version is as follows:
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
echo "configure:894: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
^^^^^^^^^^^^^^^^^^^^
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
[...]
The sed expression marked by ^^^^^ above is what fixes this.
The question is, how do we handle this for source tarballs which
contain pre-2.13 configure scripts? Do we simply start BUILD_DEPENDing
on autoconf everywhere? And what about things like devel/m4 which are
required to build autoconf in the first place?
At least the following packages are broken, there may be others (the
bulk build got this far before I restarted it with just 'make' instead
of '/usr/bin/make'):
sysutils/findutils
net/ncftp2
misc/logsurfer
misc/linuxls
graphics/qvplay
devel/m4
math/snns
Also, the error message from sh could be more helpful in this case:
something like "ac_cv_prog_make_/usr/bin/make_set: illegal variable
name" would actually give you a clue as to what's wrong, instead of
forcing you to guess which part of the whole convoluted line is
actually causing the error...
jdarrow
--
John Darrow - Senior Technical Specialist Office: 630/752-5201
Computing Services, Wheaton College, Wheaton, IL 60187 Fax: 630/752-5968
Pager via email: 6303160707@alphapage.airtouch.com Pager: 630/316-0707
Email: John.P.Darrow@wheaton.edu