aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2001-03-07 22:51:02 +0000
committerTom Tromey <tromey@gcc.gnu.org>2001-03-07 22:51:02 +0000
commit6a556ad682aac6fa2ba6569f918ea82d55f6340a (patch)
treee741d53ebab5d85238da74ceed237bf02e498a5d
parent75382c6dc69d08d46d1a7b2abef34e89c96e4bd8 (diff)
downloadgcc-6a556ad682aac6fa2ba6569f918ea82d55f6340a.zip
gcc-6a556ad682aac6fa2ba6569f918ea82d55f6340a.tar.gz
gcc-6a556ad682aac6fa2ba6569f918ea82d55f6340a.tar.bz2
configure.in: Allow config-lang.in to set `lang_requires' to list of other required languages.
* configure.in: Allow config-lang.in to set `lang_requires' to list of other required languages. From-SVN: r40309
-rw-r--r--ChangeLog5
-rw-r--r--configure.in34
2 files changed, 38 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 9eb7019..cd62f0b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2001-03-07 Tom Tromey <tromey@redhat.com>
+
+ * configure.in: Allow config-lang.in to set `lang_requires' to list
+ of other required languages.
+
2001-03-06 Laurynas Biveinis <lauras@softhome.net>
* Makefile.in: Remove RANLIB definition. Use RANLIB
diff --git a/configure.in b/configure.in
index 81c3605..649df36 100644
--- a/configure.in
+++ b/configure.in
@@ -993,6 +993,39 @@ else
exit 1
fi
fi
+
+# First scan to see if an enabled language requires some other language.
+# We assume that a given config-lang.in will list all the language
+# front ends it requires, even if some are required indirectly.
+for lang in ${srcdir}/gcc/*/config-lang.in ..
+do
+ case $lang in
+ ..)
+ ;;
+ # The odd quoting in the next line works around
+ # an apparent bug in bash 1.12 on linux.
+ ${srcdir}/gcc/[*]/config-lang.in)
+ ;;
+ *)
+ lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
+ this_lang_requires=`sed -n -e 's,^lang_requires=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^lang_requires=\([^ ]*\).*$,\1,p' $lang`
+ for other in $this_lang_requires
+ do
+ case ,${enable_languages}, in
+ *,$other,*)
+ ;;
+ *,all,*)
+ ;;
+ *)
+ echo " \`$other' language required by \`$lang_alias'; enabling" 1>&2
+ enable_languages="$enable_languages,$other"
+ ;;
+ esac
+ done
+ ;;
+ esac
+done
+
subdirs=
for lang in ${srcdir}/gcc/*/config-lang.in ..
do
@@ -1026,7 +1059,6 @@ do
esac
done
-
# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
# $target_configdirs.
# If we have the source for $noconfigdirs entries, add them to $notsupp.