* configure.in: Disable language-specific target libraries for
authorAlexandre Oliva <aoliva@redhat.com>
Tue, 12 Dec 2000 20:33:05 +0000 (20:33 +0000)
committerAlexandre Oliva <aoliva@redhat.com>
Tue, 12 Dec 2000 20:33:05 +0000 (20:33 +0000)
languages that aren't enabled.

ChangeLog
configure.in

index 36e03056a9e5997932004aee0e7e7951e520835b..23bd05a99d925c977752ff94a0192d560c0ddecb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2000-12-12  Alexandre Oliva  <aoliva@redhat.com>
+
+       * configure.in: Disable language-specific target libraries for
+       languages that aren't enabled.
+
 2000-11-24  Nick Clifton  <nickc@redhat.com>
 
        * configure.in (xscale-elf): Add target.
index b9e1b715c04dda3b2c566567e98fb69b2fd42e53..f79d9a34696a21913fff0663c44618e71b9606cd 100644 (file)
@@ -948,6 +948,55 @@ if [ x$with_gnu_as = xno ]; then
   noconfigdirs="$noconfigdirs gas"
 fi
 
+# Figure out what language subdirectories are present.
+# Look if the user specified --enable-languages="..."; if not, use
+# the environment variable $LANGUAGES if defined. $LANGUAGES might
+# go away some day.
+if test x"${enable_languages+set}" != xset; then
+       if test x"${LANGUAGES+set}" = xset; then
+               enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
+       else
+               enable_languages=all
+       fi
+else
+       if test x"${enable_languages}" = x; then
+               echo configure.in: --enable-languages needs at least one argument 1>&2
+               exit 1
+       fi
+fi
+subdirs=
+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_libs=`sed -n -e 's,^target_libs=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^target_libs=\([^         ]*\).*$,\1,p' $lang`
+         build_by_default=`sed -n -e 's,^build_by_default=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^build_by_default=\([^     ]*\).*$,\1,p' $lang`
+         if test "x$lang_alias" = x
+         then
+               echo "$lang doesn't set \$language." 1>&2
+               exit 1
+         fi
+         case ${build_by_default},${enable_languages}, in
+         *,$lang_alias,*) add_this_lang=yes ;;
+         no,*) add_this_lang=no ;;
+         *,all,*) add_this_lang=yes ;;
+         *) add_this_lang=no ;;
+         esac
+         if test x"${add_this_lang}" = xyes; then
+             eval target_libs='"$target_libs "'\"$this_lang_libs\"
+         else
+             eval noconfigdirs='"$noconfigdirs "'\"$this_lang_libs\"
+         fi
+         ;;
+       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.