+# See if the user has requested runtime debugging.
+LIBGCJDEBUG="disable"
+AC_SUBST(LIBGCJDEBUG)
+AC_ARG_ENABLE(libgcj-debug,
+ AS_HELP_STRING([--enable-libgcj-debug],
+ [enable runtime debugging code]),
+ [if test "$enable_libgcj_debug" = yes; then
+ AC_DEFINE(DEBUG, 1, [Define this if you want runtime debugging enabled.])
+ LIBGCJDEBUG="enable"
+ fi])
+
+AC_ARG_WITH([escher],
+ AS_HELP_STRING([--with-escher=ABS.PATH],
+ [specify path to escher dir or JAR for X peers]))
+case "$with_escher" in
+"")
+ use_escher=false
+ ;;
+"no")
+ use_escher=false
+ ;;
+"yes")
+ AC_MSG_ERROR([Please supply an absolute path to Escher library])
+ ;;
+*)
+ use_escher=true
+ ;;
+esac
+
+# Determine which AWT peer libraries to build
+AC_ARG_ENABLE(java-awt,
+ AS_HELP_STRING([--enable-java-awt],
+ [list of AWT peer implementations to be built]))
+
+peerlibs="`echo ${enable_java_awt} | tr ',' ' '`"
+use_xlib_awt=""
+use_gtk_awt=""
+use_qt_awt=""
+use_x_awt=""
+# The default toolkit to use is the first one specified.
+TOOLKIT=
+AC_SUBST(TOOLKIT)
+
+for peer in $peerlibs ; do
+ case $peer in
+ xlib)
+ if test "$no_x" = yes; then
+ echo "*** xlib peers requested but no X library available" 1>&2
+ exit 1
+ else
+ use_xlib_awt="yes"
+ if test -z "$TOOLKIT"; then
+ TOOLKIT=gnu.awt.xlib.XToolkit
+ fi
+ fi
+ ;;
+ gtk)
+ if test "$no_x" = yes; then
+ echo "*** gtk peers requested but no X library available" 1>&2
+ exit 1
+ else
+ use_gtk_awt=yes
+ if test -z "$TOOLKIT"; then
+ TOOLKIT=gnu.java.awt.peer.gtk.GtkToolkit
+ fi
+ fi
+ ;;
+ qt)
+ if test "$no_x" = yes; then
+ # Perhaps we should admit the possibility of embedded Qt.
+ echo "*** Qt peers requested but no X library available" 1>&2
+ exit 1
+ else
+ use_qt_awt=yes
+ if test -z "$TOOLKIT"; then
+ TOOLKIT=gnu.java.awt.peer.qt.QtToolkit
+ fi
+ fi
+ ;;
+ x)
+ use_x_awt=yes
+ if test -z "$TOOLKIT"; then
+ TOOLKIT=gnu.java.awt.peer.x.XToolkit
+ fi
+ ;;
+ no)
+ use_xlib_awt=
+ use_gtk_awt=
+ use_qt_awt=
+ use_x_awt=
+ break
+ ;;
+ *)
+ echo "*** unrecognised argument \"${peer}\" for --enable-java-awt" 1>&2
+ exit 1
+ esac
+done
+
+AM_CONDITIONAL(XLIB_AWT, test "$use_xlib_awt" = yes)
+AM_CONDITIONAL(X_AWT, test "$use_x_awt" = yes)
+
+AC_DEFINE_UNQUOTED(AWT_TOOLKIT, "$TOOLKIT", [Name of default AWT toolkit])
+
+AC_DEFINE_UNQUOTED(LIBGCJ_PREFIX, "$prefix", [Installation prefix])
+
+# Create standard.omit based on decisions we just made.
+cp $srcdir/standard.omit.in standard.omit
+if test "$use_xlib_awt" != yes; then
+ echo gnu/awt/xlib >> standard.omit
+ echo gnu/gcj/xlib >> standard.omit
+fi
+if test "$use_x_awt" != yes; then
+ echo gnu/java/awt/peer/x >> standard.omit
+fi
+
+# Tools that need to be compiled against classpath's tools classes
+: > vm-tools-packages
+for package in gnu/gcj/tools/gc_analyze ; do
+ echo $package >> standard.omit
+ echo $package >> vm-tools-packages
+done
+
+if test -z "${with_multisubdir}"; then
+ builddotdot=.
+else
+ builddotdot=`echo ${with_multisubdir} | sed -e 's:[[^/]][[^/]]*:..:g'`
+fi
+
+NATIVE=yes
+
+# Which gcj and host gcj (for ecjx) do we use?
+which_gcj=default
+host_exeext=${ac_exeext}
+GCJ_FOR_ECJX=
+built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`"
+if test -n "${with_cross_host}"; then
+ # We are being configured with a cross compiler. We can't
+ # use ac_exeext, because that is for the target platform.
+ NATIVE=no
+ cross_host_exeext=
+ GCJ_FOR_ECJX="${with_cross_host}-gcj"
+ case "${with_cross_host}" in
+ *mingw* | *cygwin*)
+ cross_host_exeext=.exe
+ ;;
+ esac
+ host_exeext=${cross_host_exeext}
+ if test -x "${built_gcc_dir}/gcj${cross_host_exeext}"; then
+ if test x"$build_noncanonical" = x"$with_cross_host"; then
+ # Ordinary cross (host!=target and host=build)
+ which_gcj=built
+ else
+ # Canadian cross (host!=target and host!=build)
+ which_gcj=cross
+ fi
+ else
+ which_gcj=cross
+ fi
+else
+ # We are being configured with a native or crossed-native compiler
+ if test -x "${built_gcc_dir}/gcj${ac_exeext}"; then
+ if test x"$build" = x"$host"; then
+ # True native build (host=target and host=build)
+ which_gcj=built
+ else
+ # Crossed-native build (host=target and host!=build)
+ which_gcj=cross
+ fi
+ else
+ which_gcj=path
+ fi
+fi
+case "${which_gcj}" in
+ built)
+ GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/"
+ GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh'
+ ;;
+ cross)
+ if test "x${with_newlib}" = "xyes"; then
+ # FIXME (comment): Why is this needed?
+ GCC_UNWIND_INCLUDE=
+ GCJ="${target_noncanonical}-gcj"
+ else
+ GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/"
+ fi
+ GCJH='$(target_noncanonical)-gcjh'
+ ;;
+ path)
+ GCJ="gcj -B`${PWDCMD-pwd}`/"
+ GCJH=gcjh
+ ;;
+esac
+
+AC_SUBST(GCJ_FOR_ECJX)
+AC_SUBST(GCJH)
+AC_SUBST(host_exeext)
+
+# Create it, so that compile/link tests don't fail
+test -f libgcj.spec || touch libgcj.spec
+
+
+
+# Set up to configure Classpath.
+# FIXME: no supported way to pass args in autoconf.
+ac_configure_args="$ac_configure_args --with-fastjar=$JAR"
+# Disable tool wrappers to avoid ltdl.h configure check.
+ac_configure_args="$ac_configure_args --disable-tool-wrappers"
+ac_configure_args="$ac_configure_args --disable-load-library"
+ac_configure_args="$ac_configure_args --${LIBGCJDEBUG}-debug"
+ac_configure_args="$ac_configure_args --enable-default-toolkit=$TOOLKIT"
+dir1=`cd $srcdir && pwd`
+dir2=`pwd`
+ac_configure_args="$ac_configure_args --with-vm-classes=$dir1:$dir2"
+ac_configure_args="$ac_configure_args --disable-core-jni"
+dnl FIXME?
+ac_configure_args="$ac_configure_args --disable-examples"
+ac_configure_args="$ac_configure_args --with-glibj=build"
+if test "$plugin_enabled" != yes; then
+ ac_configure_args="$ac_configure_args --disable-plugin"
+fi
+if test "$gconf_enabled" != yes; then
+ ac_configure_args="$ac_configure_args --disable-gconf-peer"
+ ac_configure_args="$ac_configure_args --enable-default-preferences-peer=gnu.java.util.prefs.FileBasedFactory"
+fi
+if test "$use_gtk_awt" != yes; then
+ ac_configure_args="$ac_configure_args --disable-gtk-peer --disable-plugin"
+fi
+if test "$use_qt_awt" != yes; then
+ ac_configure_args="$ac_configure_args --disable-qt-peer"
+else
+ # We need this as qt is disabled by default in classpath.
+ ac_configure_args="$ac_configure_args --enable-qt-peer"
+fi
+if test "$use_x_awt" != yes; then
+ ac_configure_args="$ac_configure_args --without-escher"
+else
+ # We need this as escher is disabled by default in classpath.
+ if test "$use_escher" != true; then
+ AC_MSG_ERROR([Please supply an absolute path to the Escher library])
+ else
+ ac_configure_args="$ac_configure_args --with-escher=$with_escher"
+ fi
+fi
+# -Werror causes unavoidable problems in code using alsa.
+ac_configure_args="$ac_configure_args --disable-Werror"
+dnl --with-gcj=$GCJ
+dnl --with-javah=$GCJH
+dnl gjdoc?
+dnl gtk-cairo -- just export here...
+dnl --enable-regen-headers?
+