Static linking with libgcj does not work well when portions are compiled with the BC ABI. The problem is that the compile time linker is not able to resolve all the needed dependencies. This patch adds a new configure option (--disable-libgcj-bc) that forces all code in libgcj to be compiled with the C++ ABI. The default is to compile libgcj 'normally'. This option would only be used by those statically linking to libgcj. Tested on i686-pc-linux-gnu with no failures in libjava testsuite. I also verified by inspecting build output that -findirect-dispatch -fno-indirect-classes is being passed when compiling the BC ABI files. OK to commit? gcc/ 2007-12-21 David Daney * doc/install.texi (disable-libgcj-bc): Document new option. libjava/ 2007-12-21 David Daney * scripts/makemake.tcl (emit_bc_rule): Use $(LIBGCJ_BC_FLAGS) instead of -findirect-dispatch -fno-indirect-classes. * configure.ac (libgcj-bc): New AC_ARG_ENABLE. (SUPPRESS_LIBGCJ_BC): New AM_CONDITIONAL. * Makefile.am (LIBGCJ_BC_FLAGS): New variable. * Makefile.in: Regenerate. * include/Makefile.in: Same. * testsuite/Makefile.in: Same. * configure: Same. * gcj/Makefile.in: Same. * sources.am: Same.