Fix toplevel config.status for HP-UX sed.

/:
	* configure.ac: Do not use $extrasub for replacing @if/@endif
	parts in Makefile; instead, use additional arguments to
	AC_CONFIG_COMMANDS to do the replacement manually, with several
	sed invocations, to avoid HP-UX sed command limits.
	* configure: Regenerate.
This commit is contained in:
Ralf Wildenhues 2009-09-08 17:55:50 +00:00
parent 5566205831
commit 94f4a7b95d
3 changed files with 62 additions and 21 deletions

View File

@ -1,3 +1,11 @@
2009-09-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure.ac: Do not use $extrasub for replacing @if/@endif
parts in Makefile; instead, use additional arguments to
AC_CONFIG_COMMANDS to do the replacement manually, with several
sed invocations, to avoid HP-UX sed command limits.
* configure: Regenerate.
2009-09-04 Alexandre Oliva <aoliva@redhat.com>
* configure.ac (with-build-config): Document. Handle without.

40
configure vendored
View File

@ -6519,12 +6519,13 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
# configuration, so that the top-level Makefile reconfigures them,
# like we used to do when configure itself was recursive.
# Loop over modules. $extrasub must be used with care, limiting as
# much as possible the usage of range addresses. That's because autoconf
# splits the sed script to overcome limits in the number of commands,
# and relying on carefully-timed sed passes may turn out to be very hard
# to maintain later. In this particular case, you just have to be careful
# not to nest @if/@endif pairs, because configure will not warn you at all.
# Loop over modules. We used to use the "$extrasub" feature from Autoconf
# but now we're fixing up the Makefile ourselves with the additional
# commands passed to AC_CONFIG_FILES. Use separate variables
# extrasub-{build,host,target} not because there is any reason to split
# the substitutions up that way, but only to remain below the limit of
# 99 commands in a script, for HP-UX sed.
# Do not nest @if/@endif pairs, because configure will not warn you at all.
# Check whether --enable-bootstrap was given.
if test "${enable_bootstrap+set}" = set; then :
@ -6620,18 +6621,20 @@ fi
$as_echo "$BUILD_CONFIG" >&6; }
extrasub_build=
for module in ${build_configdirs} ; do
if test -z "${no_recursion}" \
&& test -f ${build_subdir}/${module}/Makefile; then
echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure"
rm -f ${build_subdir}/${module}/Makefile
fi
extrasub="$extrasub
extrasub_build="$extrasub_build
/^@if build-$module\$/d
/^@endif build-$module\$/d
/^@if build-$module-$bootstrap_suffix\$/d
/^@endif build-$module-$bootstrap_suffix\$/d"
done
extrasub_host=
for module in ${configdirs} ; do
if test -z "${no_recursion}"; then
for file in stage*-${module}/Makefile prev-${module}/Makefile ${module}/Makefile; do
@ -6641,12 +6644,13 @@ for module in ${configdirs} ; do
fi
done
fi
extrasub="$extrasub
extrasub_host="$extrasub_host
/^@if $module\$/d
/^@endif $module\$/d
/^@if $module-$bootstrap_suffix\$/d
/^@endif $module-$bootstrap_suffix\$/d"
done
extrasub_target=
for module in ${target_configdirs} ; do
if test -z "${no_recursion}" \
&& test -f ${target_subdir}/${module}/Makefile; then
@ -6660,14 +6664,15 @@ for module in ${target_configdirs} ; do
*) target_bootstrap_suffix=no-bootstrap ;;
esac
extrasub="$extrasub
extrasub_target="$extrasub_target
/^@if target-$module\$/d
/^@endif target-$module\$/d
/^@if target-$module-$target_bootstrap_suffix\$/d
/^@endif target-$module-$target_bootstrap_suffix\$/d"
done
extrasub="$extrasub
# Do the final fixup along with target modules.
extrasub_target="$extrasub_target
/^@if /,/^@endif /d"
# Create the serialization dependencies. This uses a temporary file.
@ -14036,6 +14041,13 @@ _ASBOX
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
#
# INIT-COMMANDS
#
extrasub_build="$extrasub_build"
extrasub_host="$extrasub_host"
extrasub_target="$extrasub_target"
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
@ -14491,6 +14503,14 @@ which seems to be undefined. Please make sure it is defined." >&2;}
esac
case $ac_file$ac_mode in
"Makefile":F) sed "$extrasub_build" Makefile |
sed "$extrasub_host" |
sed "$extrasub_target" > mf$$
mv -f mf$$ Makefile ;;
esac
done # for ac_tag

View File

@ -2410,12 +2410,13 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
# configuration, so that the top-level Makefile reconfigures them,
# like we used to do when configure itself was recursive.
# Loop over modules. $extrasub must be used with care, limiting as
# much as possible the usage of range addresses. That's because autoconf
# splits the sed script to overcome limits in the number of commands,
# and relying on carefully-timed sed passes may turn out to be very hard
# to maintain later. In this particular case, you just have to be careful
# not to nest @if/@endif pairs, because configure will not warn you at all.
# Loop over modules. We used to use the "$extrasub" feature from Autoconf
# but now we're fixing up the Makefile ourselves with the additional
# commands passed to AC_CONFIG_FILES. Use separate variables
# extrasub-{build,host,target} not because there is any reason to split
# the substitutions up that way, but only to remain below the limit of
# 99 commands in a script, for HP-UX sed.
# Do not nest @if/@endif pairs, because configure will not warn you at all.
AC_ARG_ENABLE([bootstrap],
[ --enable-bootstrap enable bootstrapping @<:@yes if native build@:>@],,
@ -2502,18 +2503,20 @@ fi
AC_MSG_RESULT($BUILD_CONFIG)
AC_SUBST(BUILD_CONFIG)
extrasub_build=
for module in ${build_configdirs} ; do
if test -z "${no_recursion}" \
&& test -f ${build_subdir}/${module}/Makefile; then
echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure"
rm -f ${build_subdir}/${module}/Makefile
fi
extrasub="$extrasub
extrasub_build="$extrasub_build
/^@if build-$module\$/d
/^@endif build-$module\$/d
/^@if build-$module-$bootstrap_suffix\$/d
/^@endif build-$module-$bootstrap_suffix\$/d"
done
extrasub_host=
for module in ${configdirs} ; do
if test -z "${no_recursion}"; then
for file in stage*-${module}/Makefile prev-${module}/Makefile ${module}/Makefile; do
@ -2523,12 +2526,13 @@ for module in ${configdirs} ; do
fi
done
fi
extrasub="$extrasub
extrasub_host="$extrasub_host
/^@if $module\$/d
/^@endif $module\$/d
/^@if $module-$bootstrap_suffix\$/d
/^@endif $module-$bootstrap_suffix\$/d"
done
extrasub_target=
for module in ${target_configdirs} ; do
if test -z "${no_recursion}" \
&& test -f ${target_subdir}/${module}/Makefile; then
@ -2542,14 +2546,15 @@ for module in ${target_configdirs} ; do
*) target_bootstrap_suffix=no-bootstrap ;;
esac
extrasub="$extrasub
extrasub_target="$extrasub_target
/^@if target-$module\$/d
/^@endif target-$module\$/d
/^@if target-$module-$target_bootstrap_suffix\$/d
/^@endif target-$module-$target_bootstrap_suffix\$/d"
done
extrasub="$extrasub
# Do the final fixup along with target modules.
extrasub_target="$extrasub_target
/^@if /,/^@endif /d"
# Create the serialization dependencies. This uses a temporary file.
@ -3167,4 +3172,12 @@ case "$target" in
esac
AC_SUBST(compare_exclusions)
AC_OUTPUT(Makefile)
AC_CONFIG_FILES([Makefile],
[sed "$extrasub_build" Makefile |
sed "$extrasub_host" |
sed "$extrasub_target" > mf$$
mv -f mf$$ Makefile],
[extrasub_build="$extrasub_build"
extrasub_host="$extrasub_host"
extrasub_target="$extrasub_target"])
AC_OUTPUT