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
This commit is contained in:
David Ayers 2006-06-06 18:05:47 +02:00 committed by David Ayers
parent 1e19cfd26d
commit 7cd0cf9c30
5 changed files with 394 additions and 314 deletions

View File

@ -1,3 +1,18 @@
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.
2006-06-05 Paolo Bonzini <bonzini@gnu.org>
PR 27674

View File

@ -450,7 +450,9 @@ dependencies = { module=all-target-libjava; on=all-target-zlib; };
dependencies = { module=all-target-libjava; on=all-target-boehm-gc; };
dependencies = { module=all-target-libjava; on=all-target-qthreads; };
dependencies = { module=all-target-libjava; on=all-target-libffi; };
dependencies = { module=configure-target-libobjc; on=configure-target-boehm-gc; };
dependencies = { module=all-target-libobjc; on=all-target-libiberty; };
dependencies = { module=all-target-libobjc; on=all-target-boehm-gc; };
dependencies = { module=all-target-libstdc++-v3; on=all-target-libiberty; };
// Target modules in the 'src' repository.

View File

@ -41107,7 +41107,9 @@ all-target-libjava: maybe-all-target-zlib
all-target-libjava: maybe-all-target-boehm-gc
all-target-libjava: maybe-all-target-qthreads
all-target-libjava: maybe-all-target-libffi
configure-target-libobjc: maybe-configure-target-boehm-gc
all-target-libobjc: maybe-all-target-libiberty
all-target-libobjc: maybe-all-target-boehm-gc
all-target-libstdc++-v3: maybe-all-target-libiberty
all-target-libgloss: maybe-configure-target-newlib
all-target-winsup: maybe-all-target-libiberty

485
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -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.