[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: AC_CHECK_TOOL AC_SUBSTs more than necessary
From: |
Ralf Wildenhues |
Subject: |
Re: AC_CHECK_TOOL AC_SUBSTs more than necessary |
Date: |
Tue, 8 Nov 2005 09:53:59 +0100 |
User-agent: |
Mutt/1.5.11 |
Darn.
* Ralf Wildenhues wrote on Sat, Nov 05, 2005 at 07:42:32AM CET:
>
> * lib/autoconf/programs.m4 (AC_CHECK_PROG, AC_PATH_PROG):
> Factor functionality to..
> (_AC_CHECK_PROG, _AC_PATH_PROG): these new macros, but only
> `AC_SUBST($1)' in the public version.
> (AC_CHECK_TOOL, AC_PATH_TOOL, AC_PATH_TARGET_TOOL)
> (AC_CHECK_TARGET_TOOL): Use internal versions for ac_ct_* and
> ac_pt_* variables.
This patch breaks/exposes an issue with the status.m4 code in CVS
HEAD Libtool tests 34, 35 (early-libtool.at tests). I have no idea
whether autoconf or Libtool's LT_OUTPUT code is at fault; in any
case, to me it looks like the patch has absolutely _nothing_ to do
with the part that suddenly breaks.
lib/autoconf/status.m4 is sufficiently obscure that I have no idea
about what's going on.
May a diff of the created configure script sheds some light (several
whitespace-only and LINENO-only differences snipped; note the extra
_ACEOF which remains):
--- configure-bad 2005-11-08 09:39:34.000000000 +0100
+++ configure-good 2005-11-08 09:37:29.000000000 +0100
@@ -771,7 +771,6 @@
MAKEINFO
install_sh
STRIP
-ac_ct_STRIP
INSTALL_STRIP_PROGRAM
mkdir_p
AWK
@@ -815,9 +814,7 @@
NM
LN_S
AR
-ac_ct_AR
RANLIB
-ac_ct_RANLIB
lt_ECHO
CPP
LIBOBJS
@@ -2103,6 +2100,7 @@
echo "${ECHO_T}no" >&6; }
fi
+
test -n "$AWK" && break
done
@@ -11809,7 +11818,6 @@
MAKEINFO!$MAKEINFO$ac_delim
install_sh!$install_sh$ac_delim
STRIP!$STRIP$ac_delim
-ac_ct_STRIP!$ac_ct_STRIP$ac_delim
INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim
mkdir_p!$mkdir_p$ac_delim
AWK!$AWK$ac_delim
@@ -11853,10 +11861,11 @@
NM!$NM$ac_delim
LN_S!$LN_S$ac_delim
AR!$AR$ac_delim
-ac_ct_AR!$ac_ct_AR$ac_delim
RANLIB!$RANLIB$ac_delim
-ac_ct_RANLIB!$ac_ct_RANLIB$ac_delim
lt_ECHO!$lt_ECHO$ac_delim
+CPP!$CPP$ac_delim
+LIBOBJS!$LIBOBJS$ac_delim
+LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
if test `grep -c "$ac_delim\$" conf$$subs.sed` = 98; then
@@ -11894,16 +11903,9 @@
CEOF$ac_eof
_ACEOF
-
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- cat >conf$$subs.sed <<_ACEOF
-CPP!$CPP$ac_delim
-LIBOBJS!$LIBOBJS$ac_delim
-LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `grep -c "$ac_delim\$" conf$$subs.sed` = 3; then
+ if test `grep -c "$ac_delim\$" conf$$subs.sed` = 0; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
@@ -12126,7 +12128,7 @@
s&@abs_builddir@&$ac_abs_builddir&;t t
s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
s&@INSTALL@&$ac_INSTALL&;t t
-" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed"
>$tmp/out
+" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed 's/|#_!!_#|//g' | sed -f
"$tmp/subs-2.sed" >$tmp/out
rm -f "$tmp/stdin"
case $ac_file in
The output of the broken configure script ends with:
| checking whether to build shared libraries... yes
| checking whether to build static libraries... yes
| configure: creating ./config.lt
| config.lt: creating libtool
| libtool: compile: gcc -I. -I. -c hello.c -fPIC -DPIC -o .libs/hello.o
| libtool: compile: gcc -I. -I. -c hello.c -o hello.o >/dev/null 2>&1
| libtool: link: rm -fr .libs/libhello.a .libs/libhello.la .libs/libhello.lai
.libs/libhello.so .libs/libhello.so.0 .libs/libhello.so.0.0.0
| libtool: link: gcc -shared .libs/hello.o -Wl,-soname -Wl,libhello.so.0 -o
.libs/libhello.so.0.0.0
| libtool: link: (cd ".libs" && rm -f "libhello.so.0" && ln -s
"libhello.so.0.0.0" "libhello.so.0")
| libtool: link: (cd ".libs" && rm -f "libhello.so" && ln -s
"libhello.so.0.0.0" "libhello.so")
| libtool: link: ar cru .libs/libhello.a hello.o
| libtool: link: ranlib .libs/libhello.a
| libtool: link: creating libhello.la
| libtool: link: ( cd ".libs" && rm -f "libhello.la" && ln -s "../libhello.la"
"libhello.la" )
| configure: creating ./config.status
| ./configure: line 11906: _ACEOF: command not found
| grep: conf26380subs.sed: No such file or directory
| ./configure: line 11908: test: =: unary operator expected
| ./configure: line 11917: syntax error near unexpected token `done'
| ./configure: line 11917: `done'
Cheers,
Ralf