diff options
author | Ian Lance Taylor <iant@google.com> | 2010-11-21 01:49:05 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2010-11-21 01:49:05 +0000 |
commit | 4da3b0f8d1550ad6d312cadf8ef6ca9ca7d838ab (patch) | |
tree | 923bf3d1c8a371cd30f9e4146dce538958a69872 | |
parent | 24a57808c19e8177372e1b6076fa24684e62d192 (diff) | |
download | gcc-4da3b0f8d1550ad6d312cadf8ef6ca9ca7d838ab.zip gcc-4da3b0f8d1550ad6d312cadf8ef6ca9ca7d838ab.tar.gz gcc-4da3b0f8d1550ad6d312cadf8ef6ca9ca7d838ab.tar.bz2 |
configure.ac: Only disable a language library if no language needs it.
* configure.ac: Only disable a language library if no language needs
it. Don't let --disable-libgcj uncondtionally disable libffi.
* configure: Rebuild.
From-SVN: r166993
-rw-r--r-- | ChangeLog | 6 | ||||
-rwxr-xr-x | configure | 24 | ||||
-rw-r--r-- | configure.ac | 24 |
3 files changed, 48 insertions, 6 deletions
@@ -1,3 +1,9 @@ +2010-11-20 Ian Lance Taylor <iant@google.com> + + * configure.ac: Only disable a language library if no language needs + it. Don't let --disable-libgcj uncondtionally disable libffi. + * configure: Rebuild. + 2010-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> * Makefile.in: Regenerate. @@ -2985,7 +2985,8 @@ yes) ;; no) # Make sure we get it printed in the list of not supported target libs. - noconfigdirs="$noconfigdirs ${libgcj}" + # Don't disable libffi, though, other languages use it. + noconfigdirs="$noconfigdirs `echo ${libgcj} | sed -e 's/target-libffi//'`" ;; esac @@ -6177,6 +6178,9 @@ if test -d ${srcdir}/gcc; then missing_languages=`echo ",$enable_languages," | sed -e s/,all,/,/ -e s/,c,/,/ ` potential_languages=,c, + enabled_target_libs= + disabled_target_libs= + for lang_frag in ${srcdir}/gcc/*/config-lang.in .. ; do case ${lang_frag} in ..) ;; @@ -6254,17 +6258,20 @@ if test -d ${srcdir}/gcc; then case $add_this_lang in unsupported) # Remove language-dependent dirs. - eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\" + disabled_target_libs="$disabled_target_libs $target_libs" + noconfigdirs="$noconfigdirs $lang_dirs" ;; no) # Remove language-dependent dirs; still show language as supported. - eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\" + disabled_target_libs="$disabled_target_libs $target_libs" + noconfigdirs="$noconfigdirs $lang_dirs" potential_languages="${potential_languages}${language}," ;; yes) new_enable_languages="${new_enable_languages}${language}," potential_languages="${potential_languages}${language}," missing_languages=`echo "$missing_languages" | sed "s/,$language,/,/"` + enabled_target_libs="$enabled_target_libs $target_libs" case "${boot_language}:,$enable_stage1_languages," in yes:* | *:*,$language,* | *:*,yes, | *:*,all,) # Add to (comma-separated) list of stage 1 languages. @@ -6282,6 +6289,17 @@ if test -d ${srcdir}/gcc; then esac done + # Add target libraries which are only needed for disabled languages + # to noconfigdirs. + if test -n "$disabled_target_libs"; then + for dir in $disabled_target_libs; do + case " $enabled_target_libs " in + *" ${dir} "*) ;; + *) noconfigdirs="$noconfigdirs $dir" ;; + esac + done + fi + # Check whether --enable-stage1-languages was given. if test "${enable_stage1_languages+set}" = set; then : enableval=$enable_stage1_languages; case ,${enable_stage1_languages}, in diff --git a/configure.ac b/configure.ac index 1fd25aa..0a5c276 100644 --- a/configure.ac +++ b/configure.ac @@ -451,7 +451,8 @@ yes) ;; no) # Make sure we get it printed in the list of not supported target libs. - noconfigdirs="$noconfigdirs ${libgcj}" + # Don't disable libffi, though, other languages use it. + noconfigdirs="$noconfigdirs `echo ${libgcj} | sed -e 's/target-libffi//'`" ;; esac @@ -1765,6 +1766,9 @@ if test -d ${srcdir}/gcc; then missing_languages=`echo ",$enable_languages," | sed -e s/,all,/,/ -e s/,c,/,/ ` potential_languages=,c, + enabled_target_libs= + disabled_target_libs= + for lang_frag in ${srcdir}/gcc/*/config-lang.in .. ; do case ${lang_frag} in ..) ;; @@ -1842,17 +1846,20 @@ if test -d ${srcdir}/gcc; then case $add_this_lang in unsupported) # Remove language-dependent dirs. - eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\" + disabled_target_libs="$disabled_target_libs $target_libs" + noconfigdirs="$noconfigdirs $lang_dirs" ;; no) # Remove language-dependent dirs; still show language as supported. - eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\" + disabled_target_libs="$disabled_target_libs $target_libs" + noconfigdirs="$noconfigdirs $lang_dirs" potential_languages="${potential_languages}${language}," ;; yes) new_enable_languages="${new_enable_languages}${language}," potential_languages="${potential_languages}${language}," missing_languages=`echo "$missing_languages" | sed "s/,$language,/,/"` + enabled_target_libs="$enabled_target_libs $target_libs" case "${boot_language}:,$enable_stage1_languages," in yes:* | *:*,$language,* | *:*,yes, | *:*,all,) # Add to (comma-separated) list of stage 1 languages. @@ -1870,6 +1877,17 @@ if test -d ${srcdir}/gcc; then esac done + # Add target libraries which are only needed for disabled languages + # to noconfigdirs. + if test -n "$disabled_target_libs"; then + for dir in $disabled_target_libs; do + case " $enabled_target_libs " in + *" ${dir} "*) ;; + *) noconfigdirs="$noconfigdirs $dir" ;; + esac + done + fi + AC_ARG_ENABLE(stage1-languages, [ --enable-stage1-languages@<:@=all@:>@ choose additional languages to build during stage1. Mostly useful for compiler development.], |