summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Nerode <neroden@gcc.gnu.org>2003-05-18 15:49:06 +0000
committerNathanael Nerode <neroden@gcc.gnu.org>2003-05-18 15:49:06 +0000
commitf6c32a6eb9849542348e8e16acbb99230d30e473 (patch)
treedd25ee8b9dfb37693c4b884f143de62f1aff4b29
parentef42156b578c8eb731e5746f3c458d53b6d91462 (diff)
downloadgdb-f6c32a6eb9849542348e8e16acbb99230d30e473.tar.gz
<top level>
* configure.in: Switch more things to use maybe dependencies. Rearrange a little. Use GCC_TOPLEV_SUBDIRS. * configure: Regenerate. * Makefile.tpl: Switch more things to use maybe dependencies. * Makefile.in: Regenerate. <config> * config/acx.m4: Introduce _GCC_TOPLEV_NONCANONICAL_BUILD, _GCC_TOPLEV_NONCANOICAL_HOST, _GCC_TOPLEV_NONCANONICAL_TARGET, GCC_TOPLEV_SUBDIRS.
-rw-r--r--ChangeLog8
-rw-r--r--Makefile.in270
-rw-r--r--Makefile.tpl48
-rw-r--r--config/ChangeLog6
-rw-r--r--config/acx.m461
-rwxr-xr-xconfigure219
-rw-r--r--configure.in116
7 files changed, 547 insertions, 181 deletions
diff --git a/ChangeLog b/ChangeLog
index 523aabc7e54..2692f7c0ee3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2003-05-18 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Switch more things to use maybe dependencies.
+ Rearrange a little. Use GCC_TOPLEV_SUBDIRS.
+ * configure: Regenerate.
+ * Makefile.tpl: Switch more things to use maybe dependencies.
+ * Makefile.in: Regenerate.
+
2003-05-16 Andreas Schwab <schwab@suse.de>
* Makefile.tpl (install-opcodes): Define.
diff --git a/Makefile.in b/Makefile.in
index 057906ea379..d90b1aeac14 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -551,8 +551,90 @@ EXTRA_GCC_FLAGS = \
GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS)
-configure-host: @configure_host_modules@
-configure-target: @configure_target_modules@
+.PHONY: configure-host
+configure-host: maybe-configure-gcc \
+ maybe-configure-ash \
+ maybe-configure-autoconf \
+ maybe-configure-automake \
+ maybe-configure-bash \
+ maybe-configure-bfd \
+ maybe-configure-opcodes \
+ maybe-configure-binutils \
+ maybe-configure-bison \
+ maybe-configure-byacc \
+ maybe-configure-bzip2 \
+ maybe-configure-dejagnu \
+ maybe-configure-diff \
+ maybe-configure-dosutils \
+ maybe-configure-etc \
+ maybe-configure-fastjar \
+ maybe-configure-fileutils \
+ maybe-configure-findutils \
+ maybe-configure-find \
+ maybe-configure-flex \
+ maybe-configure-gas \
+ maybe-configure-gawk \
+ maybe-configure-gettext \
+ maybe-configure-gnuserv \
+ maybe-configure-gprof \
+ maybe-configure-gzip \
+ maybe-configure-hello \
+ maybe-configure-indent \
+ maybe-configure-intl \
+ maybe-configure-tcl \
+ maybe-configure-itcl \
+ maybe-configure-ld \
+ maybe-configure-libgui \
+ maybe-configure-libiberty \
+ maybe-configure-libtool \
+ maybe-configure-m4 \
+ maybe-configure-make \
+ maybe-configure-mmalloc \
+ maybe-configure-patch \
+ maybe-configure-perl \
+ maybe-configure-prms \
+ maybe-configure-rcs \
+ maybe-configure-readline \
+ maybe-configure-release \
+ maybe-configure-recode \
+ maybe-configure-sed \
+ maybe-configure-send-pr \
+ maybe-configure-shellutils \
+ maybe-configure-sid \
+ maybe-configure-sim \
+ maybe-configure-tar \
+ maybe-configure-texinfo \
+ maybe-configure-textutils \
+ maybe-configure-time \
+ maybe-configure-uudecode \
+ maybe-configure-wdiff \
+ maybe-configure-zip \
+ maybe-configure-zlib \
+ maybe-configure-gdb \
+ maybe-configure-expect \
+ maybe-configure-guile \
+ maybe-configure-tk \
+ maybe-configure-tix \
+ maybe-configure-libtermcap \
+ maybe-configure-utils
+.PHONY: configure-target
+configure-target: \
+ maybe-configure-target-libstdc++-v3 \
+ maybe-configure-target-newlib \
+ maybe-configure-target-libf2c \
+ maybe-configure-target-libobjc \
+ maybe-configure-target-libtermcap \
+ maybe-configure-target-winsup \
+ maybe-configure-target-libgloss \
+ maybe-configure-target-libiberty \
+ maybe-configure-target-gperf \
+ maybe-configure-target-examples \
+ maybe-configure-target-libffi \
+ maybe-configure-target-libjava \
+ maybe-configure-target-zlib \
+ maybe-configure-target-boehm-gc \
+ maybe-configure-target-qthreads \
+ maybe-configure-target-rda
# This is a list of the targets for which we can do a clean-{target}.
CLEAN_MODULES = \
@@ -642,14 +724,93 @@ CLEAN_X11_MODULES = \
clean-tix
# The target built for a native build.
-# This list only includes modules actually being configured and built.
.PHONY: all.normal
-all.normal: @all_build_modules@ \
- @all_host_modules@ \
- @all_target_modules@
-
-all-host: @all_host_modules@
-all-target: @all_target_modules@
+all.normal: @all_build_modules@ all-host all-target
+
+.PHONY: all-host
+all-host: maybe-all-gcc \
+ maybe-all-ash \
+ maybe-all-autoconf \
+ maybe-all-automake \
+ maybe-all-bash \
+ maybe-all-bfd \
+ maybe-all-opcodes \
+ maybe-all-binutils \
+ maybe-all-bison \
+ maybe-all-byacc \
+ maybe-all-bzip2 \
+ maybe-all-dejagnu \
+ maybe-all-diff \
+ maybe-all-dosutils \
+ maybe-all-etc \
+ maybe-all-fastjar \
+ maybe-all-fileutils \
+ maybe-all-findutils \
+ maybe-all-find \
+ maybe-all-flex \
+ maybe-all-gas \
+ maybe-all-gawk \
+ maybe-all-gettext \
+ maybe-all-gnuserv \
+ maybe-all-gprof \
+ maybe-all-gzip \
+ maybe-all-hello \
+ maybe-all-indent \
+ maybe-all-intl \
+ maybe-all-tcl \
+ maybe-all-itcl \
+ maybe-all-ld \
+ maybe-all-libgui \
+ maybe-all-libiberty \
+ maybe-all-libtool \
+ maybe-all-m4 \
+ maybe-all-make \
+ maybe-all-mmalloc \
+ maybe-all-patch \
+ maybe-all-perl \
+ maybe-all-prms \
+ maybe-all-rcs \
+ maybe-all-readline \
+ maybe-all-release \
+ maybe-all-recode \
+ maybe-all-sed \
+ maybe-all-send-pr \
+ maybe-all-shellutils \
+ maybe-all-sid \
+ maybe-all-sim \
+ maybe-all-tar \
+ maybe-all-texinfo \
+ maybe-all-textutils \
+ maybe-all-time \
+ maybe-all-uudecode \
+ maybe-all-wdiff \
+ maybe-all-zip \
+ maybe-all-zlib \
+ maybe-all-gdb \
+ maybe-all-expect \
+ maybe-all-guile \
+ maybe-all-tk \
+ maybe-all-tix \
+ maybe-all-libtermcap \
+ maybe-all-utils
+.PHONY: all-target
+all-target: \
+ maybe-all-target-libstdc++-v3 \
+ maybe-all-target-newlib \
+ maybe-all-target-libf2c \
+ maybe-all-target-libobjc \
+ maybe-all-target-libtermcap \
+ maybe-all-target-winsup \
+ maybe-all-target-libgloss \
+ maybe-all-target-libiberty \
+ maybe-all-target-gperf \
+ maybe-all-target-examples \
+ maybe-all-target-libffi \
+ maybe-all-target-libjava \
+ maybe-all-target-zlib \
+ maybe-all-target-boehm-gc \
+ maybe-all-target-qthreads \
+ maybe-all-target-rda
# Do a target for all the subdirectories. A ``make do-X'' will do a
# ``make X'' in all subdirectories (because, in general, there is a
@@ -1197,9 +1358,92 @@ mail-report-with-warnings.log: warning.log
# Installation targets.
.PHONY: install uninstall
-install: installdirs @install_host_modules@ @install_target_modules@
-
-install-target: @install_target_modules@
+install: installdirs install-host install-target
+
+.PHONY: install-host
+install-host: maybe-install-gcc \
+ maybe-install-ash \
+ maybe-install-autoconf \
+ maybe-install-automake \
+ maybe-install-bash \
+ maybe-install-bfd \
+ maybe-install-opcodes \
+ maybe-install-binutils \
+ maybe-install-bison \
+ maybe-install-byacc \
+ maybe-install-bzip2 \
+ maybe-install-dejagnu \
+ maybe-install-diff \
+ maybe-install-dosutils \
+ maybe-install-etc \
+ maybe-install-fastjar \
+ maybe-install-fileutils \
+ maybe-install-findutils \
+ maybe-install-find \
+ maybe-install-flex \
+ maybe-install-gas \
+ maybe-install-gawk \
+ maybe-install-gettext \
+ maybe-install-gnuserv \
+ maybe-install-gprof \
+ maybe-install-gzip \
+ maybe-install-hello \
+ maybe-install-indent \
+ maybe-install-intl \
+ maybe-install-tcl \
+ maybe-install-itcl \
+ maybe-install-ld \
+ maybe-install-libgui \
+ maybe-install-libiberty \
+ maybe-install-libtool \
+ maybe-install-m4 \
+ maybe-install-make \
+ maybe-install-mmalloc \
+ maybe-install-patch \
+ maybe-install-perl \
+ maybe-install-prms \
+ maybe-install-rcs \
+ maybe-install-readline \
+ maybe-install-release \
+ maybe-install-recode \
+ maybe-install-sed \
+ maybe-install-send-pr \
+ maybe-install-shellutils \
+ maybe-install-sid \
+ maybe-install-sim \
+ maybe-install-tar \
+ maybe-install-texinfo \
+ maybe-install-textutils \
+ maybe-install-time \
+ maybe-install-uudecode \
+ maybe-install-wdiff \
+ maybe-install-zip \
+ maybe-install-zlib \
+ maybe-install-gdb \
+ maybe-install-expect \
+ maybe-install-guile \
+ maybe-install-tk \
+ maybe-install-tix \
+ maybe-install-libtermcap \
+ maybe-install-utils
+.PHONY: install-target
+install-target: \
+ maybe-install-target-libstdc++-v3 \
+ maybe-install-target-newlib \
+ maybe-install-target-libf2c \
+ maybe-install-target-libobjc \
+ maybe-install-target-libtermcap \
+ maybe-install-target-winsup \
+ maybe-install-target-libgloss \
+ maybe-install-target-libiberty \
+ maybe-install-target-gperf \
+ maybe-install-target-examples \
+ maybe-install-target-libffi \
+ maybe-install-target-libjava \
+ maybe-install-target-zlib \
+ maybe-install-target-boehm-gc \
+ maybe-install-target-qthreads \
+ maybe-install-target-rda
uninstall:
@echo "the uninstall target is not supported in this tree"
@@ -1219,7 +1463,7 @@ install.all: install-no-fixedincludes
# the fixed header files.
.PHONY: install-no-fixedincludes
install-no-fixedincludes: installdirs @install_host_modules_nogcc@ \
- @install_target_modules@ gcc-no-fixedincludes
+ install-target gcc-no-fixedincludes
### other supporting targets
diff --git a/Makefile.tpl b/Makefile.tpl
index 2028e942c33..419bf42b58b 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -554,8 +554,16 @@ EXTRA_GCC_FLAGS = \
GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS)
-configure-host: @configure_host_modules@
-configure-target: @configure_target_modules@
+.PHONY: configure-host
+configure-host: maybe-configure-gcc [+
+ FOR host_modules +] \
+ maybe-configure-[+module+][+
+ ENDFOR host_modules +]
+.PHONY: configure-target
+configure-target: [+
+ FOR target_modules +] \
+ maybe-configure-target-[+module+][+
+ ENDFOR target_modules +]
# This is a list of the targets for which we can do a clean-{target}.
CLEAN_MODULES =[+
@@ -578,14 +586,19 @@ CLEAN_X11_MODULES = [+ FOR host_modules +][+ IF with_x +]\
clean-[+module+] [+ ENDIF with_x +][+ ENDFOR host_modules +]
# The target built for a native build.
-# This list only includes modules actually being configured and built.
.PHONY: all.normal
-all.normal: @all_build_modules@ \
- @all_host_modules@ \
- @all_target_modules@
-
-all-host: @all_host_modules@
-all-target: @all_target_modules@
+all.normal: @all_build_modules@ all-host all-target
+
+.PHONY: all-host
+all-host: maybe-all-gcc [+
+ FOR host_modules +] \
+ maybe-all-[+module+][+
+ ENDFOR host_modules +]
+.PHONY: all-target
+all-target: [+
+ FOR target_modules +] \
+ maybe-all-target-[+module+][+
+ ENDFOR target_modules +]
# Do a target for all the subdirectories. A ``make do-X'' will do a
# ``make X'' in all subdirectories (because, in general, there is a
@@ -757,9 +770,18 @@ mail-report-with-warnings.log: warning.log
# Installation targets.
.PHONY: install uninstall
-install: installdirs @install_host_modules@ @install_target_modules@
-
-install-target: @install_target_modules@
+install: installdirs install-host install-target
+
+.PHONY: install-host
+install-host: maybe-install-gcc [+
+ FOR host_modules +] \
+ maybe-install-[+module+][+
+ ENDFOR host_modules +]
+.PHONY: install-target
+install-target: [+
+ FOR target_modules +] \
+ maybe-install-target-[+module+][+
+ ENDFOR target_modules +]
uninstall:
@echo "the uninstall target is not supported in this tree"
@@ -779,7 +801,7 @@ install.all: install-no-fixedincludes
# the fixed header files.
.PHONY: install-no-fixedincludes
install-no-fixedincludes: installdirs @install_host_modules_nogcc@ \
- @install_target_modules@ gcc-no-fixedincludes
+ install-target gcc-no-fixedincludes
### other supporting targets
diff --git a/config/ChangeLog b/config/ChangeLog
index 091f6fd71c0..c34635d7c10 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,9 @@
+2003-05-18 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/acx.m4: Introduce _GCC_TOPLEV_NONCANONICAL_BUILD,
+ _GCC_TOPLEV_NONCANOICAL_HOST, _GCC_TOPLEV_NONCANONICAL_TARGET,
+ GCC_TOPLEV_SUBDIRS.
+
2003-03-04 Nathanael Nerode <neroden@gcc.gnu.org>
* mh-dgux: Delete.
diff --git a/config/acx.m4 b/config/acx.m4
index 4e16bcd31b5..ea5cb07dcab 100644
--- a/config/acx.m4
+++ b/config/acx.m4
@@ -1,6 +1,67 @@
# Autoconf M4 include file defining utility macros for complex Canadian
# cross builds.
+dnl ####
+dnl # _GCC_TOPLEV_NONCANONICAL_BUILD
+dnl # $build_alias or canonical $build if blank.
+dnl # Used when we would use $build_alias, but empty is not OK.
+AC_DEFUN([_GCC_TOPLEV_NONCANONICAL_BUILD],
+[AC_REQUIRE([AC_CANONICAL_BUILD]) []dnl
+case ${build_alias} in
+ "") build_noncanonical=${build} ;;
+ *) build_noncanonical=${build_alias} ;;
+esac
+]) []dnl # _GCC_TOPLEV_NONCANONICAL_BUILD
+
+dnl ####
+dnl # _GCC_TOPLEV_NONCANONICAL_HOST
+dnl # $host_alias, or $build_noncanonical if blank.
+dnl # Used when we would use $host_alias, but empty is not OK.
+AC_DEFUN([_GCC_TOPLEV_NONCANONICAL_HOST],
+[AC_REQUIRE([_GCC_TOPLEV_NONCANONICAL_BUILD]) []dnl
+case ${host_alias} in
+ "") host_noncanonical=${build_noncanonical} ;;
+ *) host_noncanonical=${host_alias} ;;
+esac
+]) []dnl # _GCC_TOPLEV_NONCANONICAL_HOST
+
+dnl ####
+dnl # _GCC_TOPLEV_NONCANONICAL_TARGET
+dnl # $target_alias or $host_noncanonical if blank.
+dnl # Used when we would use $target_alias, but empty is not OK.
+AC_DEFUN([_GCC_TOPLEV_NONCANONICAL_TARGET],
+[AC_REQUIRE([_GCC_TOPLEV_NONCANONICAL_HOST]) []dnl
+case ${target_alias} in
+ "") target_noncanonical=${host_noncanonical} ;;
+ *) target_noncanonical=${target_alias} ;;
+esac
+]) []dnl # _GCC_TOPLEV_NONCANONICAL_TARGET
+
+dnl ####
+dnl # GCC_TOPLEV_SUBDIRS
+dnl # GCC & friends build 'build', 'host', and 'target' tools. These must
+dnl # be separated into three well-known subdirectories of the build directory:
+dnl # build_subdir, host_subdir, and target_subdir. The values are determined
+dnl # here so that they can (theoretically) be changed in the future. They
+dnl # were previously reproduced across many different files.
+dnl #
+dnl # This logic really amounts to very little with autoconf 2.13; it will
+dnl # amount to a lot more with autoconf 2.5x.
+AC_DEFUN([GCC_TOPLEV_SUBDIRS],
+[AC_REQUIRE([_GCC_TOPLEV_NONCANONICAL_TARGET]) []dnl
+AC_REQUIRE([_GCC_TOPLEV_NONCANONICAL_BUILD]) []dnl
+# Prefix 'build-' so this never conflicts with target_subdir.
+build_subdir="build-${build_noncanonical}"
+# Not really a subdirectory, but here for completeness.
+host_subdir=.
+# No prefix.
+target_subdir=${target_noncanonical}
+AC_SUBST([build_subdir]) []dnl
+AC_SUBST([host_subdir]) []dnl
+AC_SUBST([target_subdir]) []dnl
+]) []dnl # GCC_TOPLEV_SUBDIRS
+
+
####
# _NCN_TOOL_PREFIXES: Some stuff that oughtta be done in AC_CANONICAL_SYSTEM
# or AC_INIT.
diff --git a/configure b/configure
index 5d4aab1673f..ed7c7ac1787 100755
--- a/configure
+++ b/configure
@@ -661,6 +661,11 @@ test "$program_transform_name" = "" && program_transform_name="s,x,x,"
# Autoconf M4 include file defining utility macros for complex Canadian
# cross builds.
+
+
+
+
+
####
# _NCN_TOOL_PREFIXES: Some stuff that oughtta be done in AC_CANONICAL_SYSTEM
# or AC_INIT.
@@ -824,6 +829,16 @@ target_tools="target-examples target-groff target-gperf target-rda"
configdirs=`echo ${host_libs} ${host_tools}`
target_configdirs=`echo ${target_libs} ${target_tools}`
+# Only make build modules if build != host.
+# This should be done more generally, but at the moment it doesn't matter.
+if test ${host_alias} != ${build_alias} ; then
+ # This is the only build module.
+ build_modules=libiberty
+else
+ build_modules=
+fi
+
+
################################################################################
srcname="gnu development package"
@@ -839,9 +854,29 @@ else
is_cross_compiler=yes
fi
-# We always want to use the same name for this directory, so that dejagnu
-# can reliably find it.
-target_subdir=${target_alias}
+# Find the build and target subdirs.
+ case ${build_alias} in
+ "") build_noncanonical=${build} ;;
+ *) build_noncanonical=${build_alias} ;;
+esac
+
+ case ${host_alias} in
+ "") host_noncanonical=${build_noncanonical} ;;
+ *) host_noncanonical=${host_alias} ;;
+esac
+
+ case ${target_alias} in
+ "") target_noncanonical=${host_noncanonical} ;;
+ *) target_noncanonical=${target_alias} ;;
+esac
+
+ # Prefix 'build-' so this never conflicts with target_subdir.
+build_subdir="build-${build_noncanonical}"
+# Not really a subdirectory, but here for completeness.
+host_subdir=.
+# No prefix.
+target_subdir=${target_noncanonical}
+
if test ! -d ${target_subdir} ; then
if mkdir ${target_subdir} ; then true
@@ -851,9 +886,6 @@ if test ! -d ${target_subdir} ; then
fi
fi
-build_prefix=build-
-build_subdir=${build_prefix}${build_alias}
-
if test x"${build_alias}" != x"${host}" ; then
if test ! -d ${build_subdir} ; then
if mkdir ${build_subdir} ; then true
@@ -2264,59 +2296,27 @@ esac
target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'`
# This is the final value for target_configdirs. configdirs already
-# has its final value. It's time to create some lists of valid targets.
-
-# While at that, we remove Makefiles if we were started for recursive
-# configuration, such that the top-level Makefile reconfigures them,
-# like we used to do when configure itself was recursive.
+# has its final value, as does build_modules. It's time to create some
+# lists of valid targets.
all_build_modules=
configure_build_modules=
-# Only make build modules if build != host.
-# This should be done more generally, but at the moment it doesn't matter.
-if test ${host_alias} != ${build_alias} ; then
- for module in libiberty ; do
- all_build_modules=all-build-${module}
- configure_build_modules=configure-build-${module}
- 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
- done
-fi
+for module in ${build_modules} ; do
+ all_build_modules=all-build-${module}
+ configure_build_modules=configure-build-${module}
+done
-all_host_modules=
check_host_modules=
install_host_modules=
-configure_host_modules=
for module in ${configdirs} ; do
- all_host_modules="${all_host_modules} all-${module}"
check_host_modules="${check_host_modules} check-${module}"
install_host_modules="${install_host_modules} install-${module}"
- configure_host_modules="${configure_host_modules} configure-${module}"
- if test -z "${no_recursion}" \
- && test -f ${module}/Makefile; then
- echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
- rm -f ${module}/Makefile
- fi
done
install_host_modules_nogcc=`echo "${install_host_modules}" | sed -e 's/install-gcc//g'`
-all_target_modules=
check_target_modules=
-install_target_modules=
-configure_target_modules=
for module in ${target_configdirs} ; do
- all_target_modules="${all_target_modules} all-target-${module}"
check_target_modules="${check_target_modules} check-target-${module}"
- install_target_modules="${install_target_modules} install-target-${module}"
- configure_target_modules="${configure_target_modules} configure-target-${module}"
- if test -z "${no_recursion}" \
- && test -f ${target_subdir}/${module}/Makefile; then
- echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure"
- rm -f ${target_subdir}/${module}/Makefile
- fi
done
# Determine whether gdb needs tk/tcl or not.
@@ -2346,13 +2346,49 @@ case "$enable_gdbtk" in
esac
# Create the 'maybe dependencies'. This uses a temporary file.
+
+# While at that, we remove Makefiles if we were started for recursive
+# configuration, so that the top-level Makefile reconfigures them,
+# like we used to do when configure itself was recursive.
rm -f maybedep.tmp
echo '# maybedep.tmp' > maybedep.tmp
-for item in ${all_build_modules} ${all_host_modules} ${all_target_modules} \
- ${install_host_modules} ${install_target_modules} \
- ${configure_build_modules} ${configure_host_modules} ${configure_target_modules} \
- ; do
- echo "maybe-${item}: ${item}" >> maybedep.tmp
+
+# Make-targets which may need maybe dependencies.
+mts="configure all install"
+
+# Loop over modules and make-targets.
+for module in ${build_modules} ; 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
+ for mt in ${mts} ; do
+ case ${mt} in
+ install) ;; # No installing build modules.
+ *) echo "maybe-${mt}-build-${module}: ${mt}-build-${module}" >> maybedep.tmp ;;
+ esac
+ done
+done
+for module in ${configdirs} ; do
+ if test -z "${no_recursion}" \
+ && test -f ${module}/Makefile; then
+ echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
+ rm -f ${module}/Makefile
+ fi
+ for mt in ${mts} ; do
+ echo "maybe-${mt}-${module}: ${mt}-${module}" >> maybedep.tmp
+ done
+done
+for module in ${target_configdirs} ; do
+ if test -z "${no_recursion}" \
+ && test -f ${target_subdir}/${module}/Makefile; then
+ echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure"
+ rm -f ${target_subdir}/${module}/Makefile
+ fi
+ for mt in ${mts} ; do
+ echo "maybe-${mt}-target-${module}: ${mt}-target-${module}" >> maybedep.tmp
+ done
done
maybe_dependencies=maybedep.tmp
@@ -2642,25 +2678,17 @@ ospace_frag=${srcdir}/${ospace_frag}
-
# Host module lists & subconfigure args.
-
-
-
# Target module lists & subconfigure args.
-
-
-
-
# Build tools.
@@ -2679,7 +2707,7 @@ test -n "$target_alias" && ncn_target_tool_prefix=$target_alias-
# Extract the first word of "${ncn_tool_prefix}ar", so it can be a program name with args.
set dummy ${ncn_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2683: checking for $ac_word" >&5
+echo "configure:2711: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2712,7 +2740,7 @@ if test -z "$ac_cv_prog_AR" ; then
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2716: checking for $ac_word" >&5
+echo "configure:2744: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2751,7 +2779,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}as", so it can be a program name with args.
set dummy ${ncn_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2755: checking for $ac_word" >&5
+echo "configure:2783: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2784,7 +2812,7 @@ if test -z "$ac_cv_prog_AS" ; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2788: checking for $ac_word" >&5
+echo "configure:2816: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2823,7 +2851,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ncn_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2827: checking for $ac_word" >&5
+echo "configure:2855: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2856,7 +2884,7 @@ if test -z "$ac_cv_prog_DLLTOOL" ; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2860: checking for $ac_word" >&5
+echo "configure:2888: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2895,7 +2923,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}ld", so it can be a program name with args.
set dummy ${ncn_tool_prefix}ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2899: checking for $ac_word" >&5
+echo "configure:2927: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2928,7 +2956,7 @@ if test -z "$ac_cv_prog_LD" ; then
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2932: checking for $ac_word" >&5
+echo "configure:2960: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2967,7 +2995,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}nm", so it can be a program name with args.
set dummy ${ncn_tool_prefix}nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2971: checking for $ac_word" >&5
+echo "configure:2999: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3000,7 +3028,7 @@ if test -z "$ac_cv_prog_NM" ; then
# Extract the first word of "nm", so it can be a program name with args.
set dummy nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3004: checking for $ac_word" >&5
+echo "configure:3032: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3039,7 +3067,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ncn_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3043: checking for $ac_word" >&5
+echo "configure:3071: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3072,7 +3100,7 @@ if test -z "$ac_cv_prog_RANLIB" ; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3076: checking for $ac_word" >&5
+echo "configure:3104: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3111,7 +3139,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}windres", so it can be a program name with args.
set dummy ${ncn_tool_prefix}windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3115: checking for $ac_word" >&5
+echo "configure:3143: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3144,7 +3172,7 @@ if test -z "$ac_cv_prog_WINDRES" ; then
# Extract the first word of "windres", so it can be a program name with args.
set dummy windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3148: checking for $ac_word" >&5
+echo "configure:3176: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_WINDRES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3183,7 +3211,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}objcopy", so it can be a program name with args.
set dummy ${ncn_tool_prefix}objcopy; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3187: checking for $ac_word" >&5
+echo "configure:3215: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3216,7 +3244,7 @@ if test -z "$ac_cv_prog_OBJCOPY" ; then
# Extract the first word of "objcopy", so it can be a program name with args.
set dummy objcopy; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3220: checking for $ac_word" >&5
+echo "configure:3248: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJCOPY'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3255,7 +3283,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ncn_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3259: checking for $ac_word" >&5
+echo "configure:3287: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3288,7 +3316,7 @@ if test -z "$ac_cv_prog_OBJDUMP" ; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3292: checking for $ac_word" >&5
+echo "configure:3320: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3336,7 +3364,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}ar", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3340: checking for $ac_word" >&5
+echo "configure:3368: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3369,7 +3397,7 @@ if test -z "$ac_cv_prog_AR_FOR_TARGET" ; then
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3373: checking for $ac_word" >&5
+echo "configure:3401: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AR_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3408,7 +3436,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}as", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3412: checking for $ac_word" >&5
+echo "configure:3440: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3441,7 +3469,7 @@ if test -z "$ac_cv_prog_AS_FOR_TARGET" ; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3445: checking for $ac_word" >&5
+echo "configure:3473: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AS_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3480,7 +3508,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3484: checking for $ac_word" >&5
+echo "configure:3512: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3513,7 +3541,7 @@ if test -z "$ac_cv_prog_DLLTOOL_FOR_TARGET" ; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3517: checking for $ac_word" >&5
+echo "configure:3545: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3552,7 +3580,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}ld", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3556: checking for $ac_word" >&5
+echo "configure:3584: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LD_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3585,7 +3613,7 @@ if test -z "$ac_cv_prog_LD_FOR_TARGET" ; then
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3589: checking for $ac_word" >&5
+echo "configure:3617: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_LD_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3624,7 +3652,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}nm", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3628: checking for $ac_word" >&5
+echo "configure:3656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_NM_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3657,7 +3685,7 @@ if test -z "$ac_cv_prog_NM_FOR_TARGET" ; then
# Extract the first word of "nm", so it can be a program name with args.
set dummy nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3661: checking for $ac_word" >&5
+echo "configure:3689: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_NM_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3696,7 +3724,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3700: checking for $ac_word" >&5
+echo "configure:3728: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3729,7 +3757,7 @@ if test -z "$ac_cv_prog_RANLIB_FOR_TARGET" ; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3733: checking for $ac_word" >&5
+echo "configure:3761: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_RANLIB_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3768,7 +3796,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}windres", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3772: checking for $ac_word" >&5
+echo "configure:3800: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_WINDRES_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3801,7 +3829,7 @@ if test -z "$ac_cv_prog_WINDRES_FOR_TARGET" ; then
# Extract the first word of "windres", so it can be a program name with args.
set dummy windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3805: checking for $ac_word" >&5
+echo "configure:3833: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_WINDRES_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3868,7 +3896,7 @@ RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:3872: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:3900: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -4049,6 +4077,9 @@ s%@build_cpu@%$build_cpu%g
s%@build_vendor@%$build_vendor%g
s%@build_os@%$build_os%g
s%@TOPLEVEL_CONFIGURE_ARGUMENTS@%$TOPLEVEL_CONFIGURE_ARGUMENTS%g
+s%@build_subdir@%$build_subdir%g
+s%@host_subdir@%$host_subdir%g
+s%@target_subdir@%$target_subdir%g
/@maybe_dependencies@/r $maybe_dependencies
s%@maybe_dependencies@%%g
/@serialization_dependencies@/r $serialization_dependencies
@@ -4073,24 +4104,16 @@ s%@build_tooldir@%$build_tooldir%g
s%@GDB_TK@%$GDB_TK%g
s%@gxx_include_dir@%$gxx_include_dir%g
s%@libstdcxx_incdir@%$libstdcxx_incdir%g
-s%@build_subdir@%$build_subdir%g
s%@build_configargs@%$build_configargs%g
s%@configure_build_modules@%$configure_build_modules%g
s%@all_build_modules@%$all_build_modules%g
s%@host_configargs@%$host_configargs%g
s%@configdirs@%$configdirs%g
-s%@configure_host_modules@%$configure_host_modules%g
-s%@all_host_modules@%$all_host_modules%g
s%@check_host_modules@%$check_host_modules%g
-s%@install_host_modules@%$install_host_modules%g
s%@install_host_modules_nogcc@%$install_host_modules_nogcc%g
-s%@target_subdir@%$target_subdir%g
s%@target_configargs@%$target_configargs%g
s%@target_configdirs@%$target_configdirs%g
-s%@configure_target_modules@%$configure_target_modules%g
-s%@all_target_modules@%$all_target_modules%g
s%@check_target_modules@%$check_target_modules%g
-s%@install_target_modules@%$install_target_modules%g
s%@BISON@%$BISON%g
s%@CC_FOR_BUILD@%$CC_FOR_BUILD%g
s%@LEX@%$LEX%g
diff --git a/configure.in b/configure.in
index 66bebe17cc9..f6fd0783bda 100644
--- a/configure.in
+++ b/configure.in
@@ -164,6 +164,16 @@ target_tools="target-examples target-groff target-gperf target-rda"
configdirs=`echo ${host_libs} ${host_tools}`
target_configdirs=`echo ${target_libs} ${target_tools}`
+# Only make build modules if build != host.
+# This should be done more generally, but at the moment it doesn't matter.
+if test ${host_alias} != ${build_alias} ; then
+ # This is the only build module.
+ build_modules=libiberty
+else
+ build_modules=
+fi
+
+
################################################################################
srcname="gnu development package"
@@ -179,9 +189,8 @@ else
is_cross_compiler=yes
fi
-# We always want to use the same name for this directory, so that dejagnu
-# can reliably find it.
-target_subdir=${target_alias}
+# Find the build and target subdirs.
+GCC_TOPLEV_SUBDIRS
if test ! -d ${target_subdir} ; then
if mkdir ${target_subdir} ; then true
@@ -191,9 +200,6 @@ if test ! -d ${target_subdir} ; then
fi
fi
-build_prefix=build-
-build_subdir=${build_prefix}${build_alias}
-
if test x"${build_alias}" != x"${host}" ; then
if test ! -d ${build_subdir} ; then
if mkdir ${build_subdir} ; then true
@@ -1604,59 +1610,27 @@ esac
target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'`
# This is the final value for target_configdirs. configdirs already
-# has its final value. It's time to create some lists of valid targets.
-
-# While at that, we remove Makefiles if we were started for recursive
-# configuration, such that the top-level Makefile reconfigures them,
-# like we used to do when configure itself was recursive.
+# has its final value, as does build_modules. It's time to create some
+# lists of valid targets.
all_build_modules=
configure_build_modules=
-# Only make build modules if build != host.
-# This should be done more generally, but at the moment it doesn't matter.
-if test ${host_alias} != ${build_alias} ; then
- for module in libiberty ; do
- all_build_modules=all-build-${module}
- configure_build_modules=configure-build-${module}
- 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
- done
-fi
+for module in ${build_modules} ; do
+ all_build_modules=all-build-${module}
+ configure_build_modules=configure-build-${module}
+done
-all_host_modules=
check_host_modules=
install_host_modules=
-configure_host_modules=
for module in ${configdirs} ; do
- all_host_modules="${all_host_modules} all-${module}"
check_host_modules="${check_host_modules} check-${module}"
install_host_modules="${install_host_modules} install-${module}"
- configure_host_modules="${configure_host_modules} configure-${module}"
- if test -z "${no_recursion}" \
- && test -f ${module}/Makefile; then
- echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
- rm -f ${module}/Makefile
- fi
done
install_host_modules_nogcc=`echo "${install_host_modules}" | sed -e 's/install-gcc//g'`
-all_target_modules=
check_target_modules=
-install_target_modules=
-configure_target_modules=
for module in ${target_configdirs} ; do
- all_target_modules="${all_target_modules} all-target-${module}"
check_target_modules="${check_target_modules} check-target-${module}"
- install_target_modules="${install_target_modules} install-target-${module}"
- configure_target_modules="${configure_target_modules} configure-target-${module}"
- if test -z "${no_recursion}" \
- && test -f ${target_subdir}/${module}/Makefile; then
- echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure"
- rm -f ${target_subdir}/${module}/Makefile
- fi
done
# Determine whether gdb needs tk/tcl or not.
@@ -1686,13 +1660,49 @@ case "$enable_gdbtk" in
esac
# Create the 'maybe dependencies'. This uses a temporary file.
+
+# While at that, we remove Makefiles if we were started for recursive
+# configuration, so that the top-level Makefile reconfigures them,
+# like we used to do when configure itself was recursive.
rm -f maybedep.tmp
echo '# maybedep.tmp' > maybedep.tmp
-for item in ${all_build_modules} ${all_host_modules} ${all_target_modules} \
- ${install_host_modules} ${install_target_modules} \
- ${configure_build_modules} ${configure_host_modules} ${configure_target_modules} \
- ; do
- echo "maybe-${item}: ${item}" >> maybedep.tmp
+
+# Make-targets which may need maybe dependencies.
+mts="configure all install"
+
+# Loop over modules and make-targets.
+for module in ${build_modules} ; 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
+ for mt in ${mts} ; do
+ case ${mt} in
+ install) ;; # No installing build modules.
+ *) echo "maybe-${mt}-build-${module}: ${mt}-build-${module}" >> maybedep.tmp ;;
+ esac
+ done
+done
+for module in ${configdirs} ; do
+ if test -z "${no_recursion}" \
+ && test -f ${module}/Makefile; then
+ echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
+ rm -f ${module}/Makefile
+ fi
+ for mt in ${mts} ; do
+ echo "maybe-${mt}-${module}: ${mt}-${module}" >> maybedep.tmp
+ done
+done
+for module in ${target_configdirs} ; do
+ if test -z "${no_recursion}" \
+ && test -f ${target_subdir}/${module}/Makefile; then
+ echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure"
+ rm -f ${target_subdir}/${module}/Makefile
+ fi
+ for mt in ${mts} ; do
+ echo "maybe-${mt}-target-${module}: ${mt}-target-${module}" >> maybedep.tmp
+ done
done
maybe_dependencies=maybedep.tmp
AC_SUBST_FILE(maybe_dependencies)
@@ -1977,7 +1987,6 @@ AC_SUBST(gxx_include_dir)
AC_SUBST(libstdcxx_incdir)
# Build module lists & subconfigure args.
-AC_SUBST(build_subdir)
AC_SUBST(build_configargs)
AC_SUBST(configure_build_modules)
AC_SUBST(all_build_modules)
@@ -1985,20 +1994,13 @@ AC_SUBST(all_build_modules)
# Host module lists & subconfigure args.
AC_SUBST(host_configargs)
AC_SUBST(configdirs)
-AC_SUBST(configure_host_modules)
-AC_SUBST(all_host_modules)
AC_SUBST(check_host_modules)
-AC_SUBST(install_host_modules)
AC_SUBST(install_host_modules_nogcc)
# Target module lists & subconfigure args.
-AC_SUBST(target_subdir)
AC_SUBST(target_configargs)
AC_SUBST(target_configdirs)
-AC_SUBST(configure_target_modules)
-AC_SUBST(all_target_modules)
AC_SUBST(check_target_modules)
-AC_SUBST(install_target_modules)
# Build tools.
AC_SUBST(BISON)