[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
config.cache madness
From: |
Karl Berry |
Subject: |
config.cache madness |
Date: |
Sun, 19 Jan 2003 20:27:47 -0500 |
Dear Autoconfers,
I'm using autoconf 2.57 with Texinfo. Thomas Esser found a strange
problem when he incorporated Texinfo into the upcoming teTeX release,
which is using autoconf 2.13 (unfortunately it's not practical to
upgrade teTeX/web2c autoconf at this time, since the long-awaited teTeX
release is too close.)
texinfo/configure is being called with --cache-file=config.cache, since
it's one of the subdirs. ac_cv_prog_CPP and a number of other settings
end up with a bogus value.
I could reproduce the error like this (with or without the -v):
$ make distclean >&/dev/null
$ rm -f config.cache
$ /bin/sh -v configure --cache-file=config.cache >&config.out
$ fgrep \$\' config.cache
ac_cv_path_install=${ac_cv_path_install=$'/usr/bin/install -c'}
ac_cv_prog_CPP=${ac_cv_prog_CPP=$'gcc -E'}
ac_cv_prog_egrep=${ac_cv_prog_egrep=$'grep -E'}
test "${acl_cv_hardcode_libdir_flag_spec+set}" = set ||
acl_cv_hardcode_libdir_flag_spec=$'${wl}-rpath ${wl}$libdir'
acl_cv_sys_lib_dlsearch_path_spec=${acl_cv_sys_lib_dlsearch_path_spec=$'/lib
/usr/lib'}
acl_cv_sys_lib_search_path_spec=${acl_cv_sys_lib_search_path_spec=$'/lib
/usr/lib /usr/local/lib'}
am_cv_proto_iconv=${am_cv_proto_iconv=$'extern size_t iconv (iconv_t cd, char
* *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);'}
The $'...' syntax in these assignments is invalid.
But if I add -x, the result is ok!
$ make distclean >&/dev/null; rm -f config.cache; /bin/sh -vx configure
--cache-file=config.cache >&config.out; fgrep \$\' config.cache
ac_cv_path_install=${ac_cv_path_install='$'\''/usr/bin/install -c'\'''}
...
This must be one obscure bug, to depend on whether -x is set or not!
And without -x, debugging is a lot harder, so I'm writing this mail
instead :).
This happens with this version of bash (from red hat 7.2):
GNU bash, version 2.05.8(1)-release (i386-redhat-linux-gnu)
Copyright 2000 Free Software Foundation, Inc.
We have reports that it also happens with solaris 9 /bin/sh.
But it does not happen with this newer bash (from redhat 8.0):
GNU bash, version 2.05b.0(1)-release (i686-pc-linux-gnu)
Copyright (C) 2002 Free Software Foundation, Inc.
At the moment, the best workaround Thomas and I can think of is to hack
the top-level configure script (via sed postprocessing or whatever) so
that it does not pass the --cache-file argument to the texinfo
subconfigure.
Is there a better way? Any suggestions?
Thanks,
karl
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- config.cache madness,
Karl Berry <=