aboutsummaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorDavid Ayers <d.ayers@inode.at>2006-06-06 18:05:47 +0200
committerDavid Ayers <ayers@gcc.gnu.org>2006-06-06 16:05:47 +0000
commit7cd0cf9c30bbc98aef2e366e8f914dccc0e7877f (patch)
tree294e756af6a9d2bf5deaaf7155f3ea29953ec266 /configure.in
parent1e19cfd26deed52f457a08a82ad753cebc854479 (diff)
downloadgcc-7cd0cf9c30bbc98aef2e366e8f914dccc0e7877f.zip
gcc-7cd0cf9c30bbc98aef2e366e8f914dccc0e7877f.tar.gz
gcc-7cd0cf9c30bbc98aef2e366e8f914dccc0e7877f.tar.bz2
re PR libobjc/13946 (ObjC configured --with-objc-gc needs external Boehm gc)
2006-06-06 David Ayers <d.ayers@inode.at> PR libobjc/13946 * Makefile.def: Add dependencies for libobjc which boehm-gc. * Makefile.in: Regenerate. * configure.in: Add --enable-objc-gc at toplevel and have it enable boehm-gc for Objective-C. Remove target-boehm-gc from libgcj. Add target-boehm-gc to target_libraries. Add target-boehm-gc to noconfigdirs where ${libgcj} is specified. Assert that boehm-gc is supported when requested for Objective-C. Only build boehm-gc if needed either for Java or Objective-C. * configure: Regenerate. From-SVN: r114435
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in204
1 files changed, 116 insertions, 88 deletions
diff --git a/configure.in b/configure.in
index bf37b80..77bbb6b 100644
--- a/configure.in
+++ b/configure.in
@@ -134,7 +134,6 @@ host_tools="texinfo byacc flex bison binutils gas ld fixincludes gcc sid sim gdb
# libgcj represents the runtime libraries only used by gcj.
libgcj="target-libffi \
- target-boehm-gc \
target-zlib \
target-qthreads \
target-libjava"
@@ -149,6 +148,7 @@ target_libraries="target-libiberty \
target-libmudflap \
target-libssp \
target-libgfortran \
+ target-boehm-gc \
${libgcj} \
target-libobjc \
target-libada \
@@ -366,7 +366,7 @@ fi
case "${target}" in
*-*-chorusos)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
powerpc-*-darwin*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof"
@@ -375,10 +375,10 @@ case "${target}" in
*-*-darwin*)
noconfigdirs="$noconfigdirs ld gas gdb gprof"
noconfigdirs="$noconfigdirs sim target-rda"
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
*-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
*-*-freebsd*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
@@ -392,13 +392,13 @@ case "${target}" in
i*86-*-*) ;;
alpha*-*-*) ;;
*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
esac
;;
*-*-kaos*)
# Remove unsupported stuff on all kaOS configurations.
- skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-librx"
+ skipdirs="target-libiberty target-boehm-gc ${libgcj} target-libstdc++-v3 target-librx"
skipdirs="$skipdirs target-libobjc target-examples target-groff target-gperf"
skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc target-zlib"
noconfigdirs="$noconfigdirs target-libgloss"
@@ -412,25 +412,25 @@ case "${target}" in
i*86-*-netbsdelf*) ;;
arm*-*-netbsdelf*) ;;
*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
esac
;;
*-*-netware*)
- noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap"
+ noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss target-boehm-gc ${libgcj} target-libmudflap"
;;
*-*-rtems*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
# The tpf target doesn't support gdb yet.
*-*-tpf*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty ${libgcj} target-libmudflap gdb tcl tk libgui itcl"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty target-boehm-gc ${libgcj} target-libmudflap gdb tcl tk libgui itcl"
;;
*-*-uclinux*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda target-boehm-gc ${libgcj}"
;;
*-*-vxworks*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty target-libstdc++-v3 ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty target-libstdc++-v3 target-boehm-gc ${libgcj}"
;;
alpha*-dec-osf*)
# ld works, but does not support shared libraries.
@@ -439,7 +439,7 @@ case "${target}" in
noconfigdirs="$noconfigdirs gas ld fileutils target-newlib target-libgloss"
;;
alpha*-*-*vms*)
- noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
alpha*-*-linux*)
# newlib is not 64 bit ready
@@ -447,16 +447,16 @@ case "${target}" in
;;
alpha*-*-*)
# newlib is not 64 bit ready
- noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
am33_2.0-*-linux*)
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} target-newlib target-libgloss"
;;
sh-*-linux*)
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} target-newlib target-libgloss"
;;
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
noconfigdirs="$noconfigdirs target-examples"
noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr"
noconfigdirs="$noconfigdirs tcl tk itcl libgui sim"
@@ -471,12 +471,12 @@ case "${target}" in
esac
;;
arc-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
arm-semi-aof )
;;
arm-*-coff | strongarm-*-coff | xscale-*-coff)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
@@ -486,25 +486,25 @@ case "${target}" in
noconfigdirs="$noconfigdirs target-libjava target-libobjc"
;;
arm*-*-symbianelf*)
- noconfigdirs="$noconfigdirs ${libgcj} target-libiberty"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} target-libiberty"
;;
arm-*-pe*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
thumb-*-coff)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
thumb-*-elf)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
thumb-*-pe)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
arm-*-riscix*)
- noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs ld target-libgloss target-boehm-gc ${libgcj}"
;;
avr-*-*)
- noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 target-boehm-gc ${libgcj}"
;;
bfin-*-*)
noconfigdirs="$noconfigdirs target-libgloss gdb"
@@ -513,10 +513,10 @@ case "${target}" in
fi
;;
c4x-*-* | tic4x-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss target-boehm-gc ${libgcj}"
;;
c54x*-*-* | tic54x-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} gcc gdb newlib"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss target-boehm-gc ${libgcj} gcc gdb newlib"
;;
cris-*-* | crisv32-*-*)
unsupported_languages="$unsupported_languages java"
@@ -531,29 +531,29 @@ case "${target}" in
noconfigdirs="$noconfigdirs target-newlib target-libgloss";;
*)
unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss";;
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} target-newlib target-libgloss";;
esac
;;
crx-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3 target-mudflap ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3 target-mudflap target-boehm-gc ${libgcj}"
;;
d10v-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss target-boehm-gc ${libgcj}"
;;
d30v-*-*)
- noconfigdirs="$noconfigdirs ${libgcj} gdb"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} gdb"
;;
fr30-*-elf*)
- noconfigdirs="$noconfigdirs ${libgcj} gdb"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} gdb"
;;
frv-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
h8300*-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
h8500-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss target-boehm-gc ${libgcj}"
;;
hppa1.1-*-osf* | hppa1.1-*-bsd* )
;;
@@ -569,7 +569,7 @@ case "${target}" in
hppa*-*-lites* | \
hppa*-*-openbsd* | \
hppa*64*-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
hppa*-hp-hpux11*)
noconfigdirs="$noconfigdirs ld shellutils"
@@ -577,10 +577,10 @@ case "${target}" in
hppa*-*-*)
# According to Alexandre Oliva <aoliva@redhat.com>, libjava won't
# build on HP-UX 10.20.
- noconfigdirs="$noconfigdirs ld shellutils ${libgcj}"
+ noconfigdirs="$noconfigdirs ld shellutils target-boehm-gc ${libgcj}"
;;
i960-*-*)
- noconfigdirs="$noconfigdirs ${libgcj} gdb"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} gdb"
;;
ia64*-*-elf*)
# No gdb support yet.
@@ -588,19 +588,19 @@ case "${target}" in
;;
ia64*-**-hpux*)
# No gdb or ld support yet.
- noconfigdirs="$noconfigdirs ${libgcj} readline mmalloc libgui itcl gdb ld"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj} readline mmalloc libgui itcl gdb ld"
;;
i370-*-opened*)
;;
i[[3456789]]86-*-coff | i[[3456789]]86-*-elf)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
i[[3456789]]86-*-linux*)
# The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
# not build java stuff by default.
case "${target}" in
*-*-*libc1*)
- noconfigdirs="$noconfigdirs ${libgcj}";;
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}";;
esac
# This section makes it possible to build newlib natively on linux.
@@ -616,7 +616,7 @@ case "${target}" in
;;
i[[3456789]]86-*-mingw32*)
target_configdirs="$target_configdirs target-mingw"
- noconfigdirs="$noconfigdirs expect target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs expect target-libgloss target-boehm-gc ${libgcj}"
# Can't build gdb for mingw32 if not native.
case "${host}" in
@@ -627,7 +627,7 @@ case "${target}" in
;;
*-*-cygwin*)
target_configdirs="$target_configdirs target-libtermcap target-winsup"
- noconfigdirs="$noconfigdirs target-gperf target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-gperf target-libgloss target-boehm-gc ${libgcj}"
# always build newlib if winsup directory is present.
if test -d "$srcdir/winsup"; then
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
@@ -646,39 +646,39 @@ case "${target}" in
i[[3456789]]86-*-uwin* | i[[3456789]]86-*-interix* )
;;
i[[3456789]]86-*-pe)
- noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss target-boehm-gc ${libgcj}"
;;
i[[3456789]]86-*-sco3.2v5*)
# The linker does not yet know about weak symbols in COFF,
# and is not configured to handle mixed ELF and COFF.
- noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs ld target-libgloss target-boehm-gc ${libgcj}"
;;
i[[3456789]]86-*-sco*)
- noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-boehm-gc ${libgcj}"
;;
i[[3456789]]86-*-solaris2*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
i[[3456789]]86-*-sysv4*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
i[[3456789]]86-*-beos*)
- noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
i[[3456789]]86-*-rdos*)
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
;;
m32r-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
- noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 target-boehm-gc ${libgcj}"
;;
m68k-*-elf*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
m68k-*-coff*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
mcore-*-pe*)
# The EPOC C++ environment does not support exceptions or rtti,
@@ -690,78 +690,78 @@ case "${target}" in
unsupported_languages="$unsupported_languages fortran java"
;;
mn10200-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
mn10300-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
mt-*-*)
noconfigdirs="$noconfigdirs sim"
;;
powerpc-*-aix*)
# copied from rs6000-*-* entry
- noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp target-boehm-gc ${libgcj}"
;;
powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
target_configdirs="$target_configdirs target-winsup"
- noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl gnuserv ${libgcj}"
+ noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl gnuserv target-boehm-gc ${libgcj}"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
;;
# This is temporary until we can link against shared libraries
powerpcle-*-solaris*)
- noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl gnuserv ${libgcj}"
+ noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl gnuserv target-boehm-gc ${libgcj}"
;;
powerpc-*-beos*)
- noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
powerpc-*-eabi)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
powerpc-*-eabi* | powerpcle-*-eabi* | powerpc-*-rtems* )
;;
rs6000-*-lynxos*)
- noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib gprof target-boehm-gc ${libgcj}"
;;
rs6000-*-aix*)
- noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp target-boehm-gc ${libgcj}"
;;
rs6000-*-*)
- noconfigdirs="$noconfigdirs gprof ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-boehm-gc ${libgcj}"
;;
m68k-apollo-*)
- noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss target-boehm-gc ${libgcj}"
;;
mips*-*-irix5*)
- noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-boehm-gc ${libgcj}"
;;
mips*-*-irix6*)
# Linking libjava exceeds command-line length limits on at least
# IRIX 6.2, but not on IRIX 6.5.
# Also, boehm-gc won't build on IRIX 6.5, according to Jeffrey Oldham
# <oldham@codesourcery.com>
- noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-boehm-gc ${libgcj}"
;;
mips*-dec-bsd*)
- noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-boehm-gc ${libgcj}"
;;
mips*-*-bsd*)
- noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-boehm-gc ${libgcj}"
;;
mipstx39-*-*)
- noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
+ noconfigdirs="$noconfigdirs gprof target-boehm-gc ${libgcj}" # same as generic mips
;;
mips64*-*-linux*)
- noconfigdirs="$noconfigdirs target-newlib ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-boehm-gc ${libgcj}"
;;
mips*-*-linux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
mips*-*-*)
- noconfigdirs="$noconfigdirs gprof ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-boehm-gc ${libgcj}"
;;
romp-*-*)
- noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss target-boehm-gc ${libgcj}"
;;
sh-*-* | sh64-*-*)
case "${host}" in
@@ -770,19 +770,19 @@ case "${target}" in
i[[3456789]]86-*-msdosdjgpp*) ;; # don't add gprof back in
*) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
esac
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
sparc-*-elf*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
sparc64-*-elf*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
sparclite-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
sparc-*-sunos4*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
if test x${is_cross_compiler} != xno ; then
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
else
@@ -790,42 +790,42 @@ case "${target}" in
fi
;;
sparc-*-solaris2.[[0-6]] | sparc-*-solaris2.[[0-6]].*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
;;
v810-*-*)
- noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libstdc++-v3 opcodes target-libgloss target-boehm-gc ${libgcj}"
;;
v850-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
v850e-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
v850ea-*-*)
- noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libgloss target-boehm-gc ${libgcj}"
;;
vax-*-vms)
- noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss target-boehm-gc ${libgcj}"
;;
vax-*-*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
xtensa-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
ip2k-*-*)
- noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
+ noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 target-boehm-gc ${libgcj}"
;;
*-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
*-*-lynxos*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-boehm-gc ${libgcj}"
;;
*-*-*)
- noconfigdirs="$noconfigdirs ${libgcj}"
+ noconfigdirs="$noconfigdirs target-boehm-gc ${libgcj}"
;;
esac
@@ -1333,6 +1333,34 @@ for dir in $configdirs $build_configdirs $target_configdirs ; do
fi
done
+# Check for Boehm's garbage collector
+AC_ARG_ENABLE(objc-gc,
+[ --enable-objc-gc enable the use of Boehm's garbage collector with
+ the GNU Objective-C runtime.],
+[case ,${enable_languages},:${enable_objc_gc}:${noconfigdirs} in
+ *,objc,*:*:yes:*target-boehm-gc*)
+ AC_MSG_ERROR([Boehm's garbage collector was requested yet not supported in this configuration])
+ ;;
+esac])
+
+# Make sure we only build Boehm's garbage collector if required.
+case ,${enable_languages},:${enable_libgcj}:${enable_objc_gc} in
+ *,objc,*:*:yes)
+ # Keep target-boehm-gc if requested for Objective-C.
+ ;;
+ *,java,*:no:*)
+ # Remove target-boehm-gc if libgcj has been disabled explicitly.
+ noconfigdirs="$noconfigdirs target-boehm-gc"
+ ;;
+ *,java,*:*:*)
+ # Keep target-boehm-gc by default for Java.
+ ;;
+ *)
+ # Otherwise remove target-boehm-gc.
+ noconfigdirs="$noconfigdirs target-boehm-gc"
+ ;;
+esac
+
# Remove the entries in $skipdirs and $noconfigdirs from $configdirs,
# $build_configdirs and $target_configdirs.
# If we have the source for $noconfigdirs entries, add them to $notsupp.