diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | configure.in | 34 |
2 files changed, 38 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 9eb7019b374..cd62f0bb461 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 81c3605a919..649df368ddf 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. |