| In fact, this macro (also from gcc/aclocal.m4) seems to be the cause
| of the recursion problem:
|
| dnl Locate a program and check that its version is acceptable.
| dnl AC_PROG_CHECK_VER(var, name, version-switch,
| dnl version-extract-regexp, version-glob)
| AC_DEFUN(gcc_AC_CHECK_PROG_VER,
They should quote the name.
| [AC_CHECK_PROG([$1], [$2], [$2])
| if test -n "[$]$1"; then
[] is useless here.
| # Found it, now check the version.
| AC_CACHE_CHECK(for modern $2, gcc_cv_prog_$2_modern,
They should quote.
| [changequote(<<,>>)dnl
| ac_prog_version=`<<$>>$1 $3 2>&1 |
| sed -n 's/^.*patsubst(<<$4>>,/,\/).*$/\1/p'`
| echo "configure:__oline__: version of $2 is $ac_prog_version" >&AC_FD_CC
| case $ac_prog_version in
| '') gcc_cv_prog_$2_modern=no;;
| <<$5>>)
| gcc_cv_prog_$2_modern=yes;;
| *) gcc_cv_prog_$2_modern=no;;
| esac
| changequote([,])dnl
| ])
| else
| gcc_cv_prog_$2_modern=no
| fi
| ])
At first sight, I see nothing really dangerous in here. The problem
might be with what they pass to this macro.
| OK - I'll look into possible problems (I expect there'll be some issue
| with FDs/redirection again). For further evidence, is autoheader
| supposed to clean up after itself if traces.sh fails (for me, traces.sh
| gets left behind).
Unless you used -d.
I'm a bit lost: did you fix all the problems, or some are remaining?