toolexeclibdir
toolexecmainlibdir
toolexecdir
-GCC_UNWIND_INCLUDE
+LIBGCC_UNWIND_INCLUDE
INSTALL_BINARIES_FALSE
INSTALL_BINARIES_TRUE
NEEDS_DATA_START_FALSE
LIBGCJDEBUG
BUILD_SUBLIBS_FALSE
BUILD_SUBLIBS_TRUE
+LIBGCJ_LD_EXPORT_ALL
LIBGCJ_LD_SYMBOLIC_FUNCTIONS
LIBGCJ_LD_SYMBOLIC
LIBGCJ_SUBLIB_CORE_EXTRA_DEPS
with_libiconv_prefix
enable_tls
with_system_libunwind
+enable_symvers
with_python_dir
enable_aot_compile_rpm
enable_java_home
--enable-java-gc=TYPE choose garbage collector (default is boehm)
--disable-rpath do not hardcode runtime library paths
--enable-tls Use thread-local storage [default=yes]
+ --disable-symvers disable symbol versioning for libjava
--enable-aot-compile-rpm
enable installation of aot-compile-rpm [default=no]
--enable-java-home create a standard JDK-style directory layout in the
# We need a jar that supports -@. This is a GNU extension.
if test "$JAR" != no; then
rm -f config-test.jar
- echo $srcdir/configure.ac | $JAR -cf@ config-test.jar
+ echo $srcdir/configure.ac | $JAR -cf@ config-test.jar >/dev/null 2>&1
if test -f config-test.jar; then
rm -f config-test.jar
else
libgcj_ld_symbolic=$SYMBOLIC_LDFLAGS
fi
+# for windows native targets enforce export of all symbols for shared libgcj.
+libgcj_ld_export_all=
+case "$host" in
+ *mingw*)
+ libgcj_ld_export_all=-Wl,--export-all-symbols
+ ;;
+ *)
+ ;;
+esac
+
LIBGCJ_CFLAGS="${libgcj_cflags}"
LIBGCJ_CXXFLAGS="${libgcj_cxxflags}"
LIBGCJ_JAVAFLAGS="${libgcj_javaflags}"
LIBGCJ_SUBLIB_CORE_EXTRA_DEPS="${libgcj_sublib_core_extra_deps}"
LIBGCJ_LD_SYMBOLIC="${libgcj_ld_symbolic}"
LIBGCJ_LD_SYMBOLIC_FUNCTIONS="${libgcj_ld_symbolic_functions}"
+LIBGCJ_LD_EXPORT_ALL="${libgcj_ld_export_all}"
+
cross)
if test "x${with_newlib}" = "xyes"; then
# FIXME (comment): Why is this needed?
- GCC_UNWIND_INCLUDE=
+ LIBGCC_UNWIND_INCLUDE=
fi
GCJH='$(target_noncanonical)-gcjh'
;;
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes
hardcode_minus_L=yes
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 13347 "configure"
+#line 13362 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 13453 "configure"
+#line 13468 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
esac
;;
- freebsd[12]*)
+ freebsd2.*)
# C++ shared libraries reported to be fairly broken before
# switch to ELF
ld_shlibs_CXX=no
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct_GCJ=yes
hardcode_minus_L_GCJ=yes
enableval=$enable_sjlj_exceptions; :
else
cat > conftest.$ac_ext << EOF
-#line 19446 "configure"
+#line 19461 "configure"
struct S { ~S(); };
void bar();
void foo()
*-*-cygwin)
extra_ldflags_libjava=-liconv
;;
+*-*-mingw*)
+ extra_ldflags_libjava=-lws2_32
+ ;;
esac
LIBMATHSPEC=
no | none | single)
THREADS=none
;;
- aix | posix | posix95 | pthreads)
+ aix | posix | pthreads)
THREADS=posix
case "$host" in
*-*-linux*)
;;
win32)
;;
- decosf1 | irix | mach | os2 | solaris | dce | vxworks)
+ dce | vxworks)
as_fn_error "thread package $THREADS not yet supported" "$LINENO" 5
;;
*)
*-*-cygwin*)
# Don't set THREADLIBS here. Cygwin doesn't have -lpthread.
;;
- *-*-freebsd[1234]*)
+ *-*-freebsd[34].*)
# Before FreeBSD 5, it didn't have -lpthread (or any library which
# merely adds pthread_* functions) but it does have a -pthread switch
# which is required at link-time to select -lc_r *instead* of -lc.
# FIXME: In Java we are able to detect thread death at the end of
# Thread.run() so we should be able to clean up the exception handling
# contexts ourselves.
- THREADSTARTFILESPEC='crtmt%O%s'
+ case "$host" in
+ *-w64-mingw*)
+ ;;
+ *)
+ THREADSTARTFILESPEC='crtmt%O%s'
+ ;;
+ esac
;;
-
none)
THREADH=no-threads.h
;;
fi
-# We're in the tree with gcc, and need to include some of its headers.
-GCC_UNWIND_INCLUDE='-I$(multi_basedir)/./libjava/../gcc'
+# We're in the tree with libgcc, and need to include some of its headers.
+LIBGCC_UNWIND_INCLUDE='-I$(multi_basedir)/./libjava/../libgcc'
if test "x${with_newlib}" = "xyes"; then
# We are being configured with a cross compiler. AC_REPLACE_FUNCS
SIGNAL_HANDLER_AUX=
case "${host}" in
+ alpha*-dec-osf* | mips-sgi-irix* | *-*-solaris2*)
+ SIGNAL_HANDLER=include/posix-signal.h
+ ;;
i?86-*-linux*)
SIGNAL_HANDLER=include/i386-signal.h
- ;;
- *-*-solaris2*)
- SIGNAL_HANDLER=include/solaris-signal.h
+ SIGNAL_HANDLER_AUX=include/x86_64-signal.h
;;
# ia64-*)
# SYSDEP_SOURCES=sysdep/ia64.c
if test "${libjava_cv_anon_version_script+set}" = set; then :
$as_echo_n "(cached) " >&6
else
- save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS"
- libjava_cv_anon_version_script=no
- CFLAGS="$CFLAGS -fPIC";
- LDFLAGS="$LDFLAGS -shared -Wl,--version-script,conftest.map"
- echo '{ global: globalsymb*; local: *; };' > conftest.map
- if test x$gcc_no_link = xyes; then
+ # Check whether --enable-symvers was given.
+if test "${enable_symvers+set}" = set; then :
+ enableval=$enable_symvers; case "$enableval" in
+ yes) libjava_cv_anon_version_script=yes ;;
+ no) libjava_cv_anon_version_script=no ;;
+ *) as_fn_error "Unknown argument to enable/disable symvers" "$LINENO" 5;;
+ esac
+else
+ libjava_cv_anon_version_script=yes
+
+fi
+
+ if test x$libjava_cv_anon_version_script = xyes; then
+ save_CFLAGS="$CFLAGS"; save_LDFLAGS="$LDFLAGS"
+ CFLAGS="$CFLAGS -fPIC";
+ LDFLAGS="$LDFLAGS -shared -Wl,--version-script,conftest.map"
+ echo '{ global: globalsymb*; local: *; };' > conftest.map
+ if test x$gcc_no_link = xyes; then
as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
libjava_cv_anon_version_script=gnu
+else
+ libjava_cv_anon_version_script=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
- if test x$libjava_cv_anon_version_script = xno; then
- case "$target_os" in
- solaris2*)
- LDFLAGS="$save_LDFLAGS"
- LDFLAGS="$LDFLAGS -shared -Wl,-M,conftest.map"
- # Sun ld doesn't understand wildcards here.
- echo '{ global: globalsymbol; local: *; };' > conftest.map
- if test x$gcc_no_link = xyes; then
+ if test x$libjava_cv_anon_version_script = xno; then
+ case "$target_os" in
+ solaris2*)
+ LDFLAGS="$save_LDFLAGS"
+ LDFLAGS="$LDFLAGS -shared -Wl,-M,conftest.map"
+ # Sun ld doesn't understand wildcards here.
+ echo '{ global: globalsymbol; local: *; };' > conftest.map
+ if test x$gcc_no_link = xyes; then
as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
- ;;
- esac
+ ;;
+ esac
+ fi
+ CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS"
fi
- CFLAGS="$save_CFLAGS"; LDFLAGS="$save_LDFLAGS"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libjava_cv_anon_version_script" >&5