0563022a20
From-SVN: r185741
1252 lines
49 KiB
Plaintext
1252 lines
49 KiB
Plaintext
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Turning off cache for debug reasons
|
|
dnl -----------------------------------------------------------
|
|
dnl define([AC_CACHE_LOAD], )dnl
|
|
dnl define([AC_CACHE_SAVE], )dnl
|
|
|
|
AC_INIT([GNU Classpath],[0.99],[classpath@gnu.org],[classpath])
|
|
AC_CONFIG_SRCDIR(java/lang/System.java)
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
dnl GCJ LOCAL
|
|
AC_CONFIG_AUX_DIR(../..)
|
|
dnl END GCJ LOCAL
|
|
|
|
AC_CANONICAL_TARGET
|
|
|
|
dnl GCJ LOCAL
|
|
AC_ARG_ENABLE(java-maintainer-mode,
|
|
AS_HELP_STRING([--enable-java-maintainer-mode],
|
|
[allow rebuilding of .class and .h files]))
|
|
AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
|
|
dnl END GCJ LOCAL
|
|
|
|
dnl GCJ LOCAL
|
|
# We would like to our source tree to be readonly. However when releases or
|
|
# pre-releases are generated, the man pages need to be included as they are
|
|
# converted from the texi files via perl which we don't require end users to
|
|
# have installed.
|
|
# Therefore we have --enable-generated-files-in-srcdir to do just that.
|
|
|
|
AC_MSG_CHECKING([whether to place generated files in the source directory])
|
|
dnl generated-files-in-srcdir is disabled by default
|
|
AC_ARG_ENABLE(generated-files-in-srcdir,
|
|
[ --enable-generated-files-in-srcdir
|
|
put copies of generated files in source dir
|
|
intended for creating source tarballs for users
|
|
without texinfo, perl, bison or flex.],
|
|
generated_files_in_srcdir=$enableval,
|
|
generated_files_in_srcdir=no)
|
|
|
|
AC_MSG_RESULT($generated_files_in_srcdir)
|
|
AM_CONDITIONAL(GENINSRC, test x$generated_files_in_srcdir = xyes)
|
|
dnl END GCJ LOCAL
|
|
|
|
# Find the rest of the source tree framework.
|
|
AM_ENABLE_MULTILIB(, ../..)
|
|
|
|
AM_CONDITIONAL(INSTALL_BINARIES, test -z "${with_multisubdir}")
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Fold all IA-32 CPU architectures into "x86"
|
|
dnl -----------------------------------------------------------
|
|
if expr ${target_cpu} : '.*86' > /dev/null; then target_cpu=x86; fi
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl We will not track/change lib version until we reach version 1.0
|
|
dnl at which time we'll have to be more anal about such things
|
|
dnl -----------------------------------------------------------
|
|
AC_SUBST(LIBVERSION, "0:0:0")
|
|
case "$host_os" in
|
|
darwin*)
|
|
cp_module=""
|
|
;;
|
|
*)
|
|
cp_module="-module"
|
|
;;
|
|
esac
|
|
|
|
CLASSPATH_MODULE="${cp_module} -version-info ${LIBVERSION} -no-undefined"
|
|
AC_SUBST(CLASSPATH_MODULE)
|
|
|
|
CLASSPATH_CONVENIENCE="-no-undefined"
|
|
AC_SUBST(CLASSPATH_CONVENIENCE)
|
|
|
|
AC_PREREQ(2.64)
|
|
AM_INIT_AUTOMAKE([1.9.0 gnu std-options tar-ustar -Wno-portability])
|
|
AC_CONFIG_HEADERS([include/config.h])
|
|
AC_PREFIX_DEFAULT(/usr/local/classpath)
|
|
|
|
dnl GCC LOCAL
|
|
GCC_NO_EXECUTABLES
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable collections.jar (disabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([collections],
|
|
[AS_HELP_STRING(--enable-collections,create collections.jar [default=no])],
|
|
[case x"${enableval}" in
|
|
xyes) COMPILE_COLLECTIONS=yes; COLLECTIONS_PREFIX="\"gnu/java/util/collections\"" ;;
|
|
xno) COMPILE_COLLECTIONS=no ;;
|
|
x) COMPILE_COLLECTIONS=yes; COLLECTIONS_PREFIX="\"gnu/java/util/collections\"" ;;
|
|
*) COMPILE_COLLECTIONS=yes; COLLECTIONS_PREFIX="\"${enableval}\"" ;;
|
|
esac],
|
|
[COMPILE_COLLECTIONS=no])
|
|
AM_CONDITIONAL(CREATE_COLLECTIONS, test "x${COMPILE_COLLECTIONS}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable JNI libraries (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([jni],
|
|
[AS_HELP_STRING(--enable-jni,compile JNI source [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_JNI=yes; COMPILE_JAVA=yes ;;
|
|
no) COMPILE_JNI=no ;;
|
|
*) COMPILE_JNI=yes; COMPILE_JAVA=yes ;;
|
|
esac],
|
|
[COMPILE_JNI=yes])
|
|
AM_CONDITIONAL(CREATE_JNI_LIBRARIES, test "x${COMPILE_JNI}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable core JNI libraries (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([core-jni],
|
|
[AS_HELP_STRING(--enable-core-jni,
|
|
compile JNI sources for core [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_CORE_JNI=yes; COMPILE_JAVA=yes ;;
|
|
no) COMPILE_CORE_JNI=no ;;
|
|
*) COMPILE_CORE_JNI=yes; COMPILE_JAVA=yes ;;
|
|
esac],
|
|
[COMPILE_CORE_JNI=yes])
|
|
AM_CONDITIONAL(CREATE_CORE_JNI_LIBRARIES, test "x${COMPILE_CORE_JNI}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Default Preference Backend
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([default-preferences-peer],
|
|
[AS_HELP_STRING([--enable-default-preferences-peer@<:@=peer type or class name@:>@],
|
|
[specify one of: "gconf" [default] for a GConf based backend, "file" for a file based one, "memory" for a transient one, or a fully qualified class name implementing java.util.prefs.PreferencesFactory])],
|
|
[case "${enableval}" in
|
|
file) DEFAULT_PREFS_PEER=gnu.java.util.prefs.FileBasedFactory ;;
|
|
gconf|yes|true) DEFAULT_PREFS_PEER=gnu.java.util.prefs.GConfBasedFactory ;;
|
|
memory) DEFAULT_PREFS_PEER=gnu.java.util.prefs.MemoryBasedFactory ;;
|
|
no|false) AC_MSG_ERROR(bad value '${enableval}' for --enable-default-preferences-peer) ;;
|
|
*) DEFAULT_PREFS_PEER=${enableval} ;;
|
|
esac],
|
|
[DEFAULT_PREFS_PEER=gnu.java.util.prefs.GConfBasedFactory])
|
|
dnl AC_SUBST(DEFAULT_PREFS_PEER)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl GConf native peer (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gconf-peer],
|
|
[AS_HELP_STRING(--disable-gconf-peer,compile GConf native peers (disabled by --disable-jni) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_GCONF_PEER=yes ;;
|
|
no) COMPILE_GCONF_PEER=no ;;
|
|
*) COMPILE_GCONF_PEER=yes ;;
|
|
esac],
|
|
[COMPILE_GCONF_PEER=yes])
|
|
AM_CONDITIONAL(CREATE_GCONF_PEER_LIBRARIES, test "x${COMPILE_GCONF_PEER}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl GConf native peer error checking
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gconf-peers],,AC_MSG_ERROR([No --enable-gconf-peers (or --disable-gconf-peers) option; you want --enable-gconf-peer]))
|
|
|
|
dnl ------------------------------------------------------------
|
|
dnl GStreamer based sound provider backend (disabled by default)
|
|
dnl ------------------------------------------------------------
|
|
AC_ARG_ENABLE([gstreamer-peer],
|
|
[AS_HELP_STRING(--enable-gstreamer-peer,compile GStreamer native peers (disabled by --disable-jni) [default=no])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_GSTREAMER_PEER=yes ;;
|
|
no) COMPILE_GSTREAMER_PEER=no ;;
|
|
*) COMPILE_GSTREAMER_PEER=default ;;
|
|
esac],
|
|
[COMPILE_GSTREAMER_PEER=default])
|
|
AM_CONDITIONAL(CREATE_GSTREAMER_PEER_LIBRARIES, test "x${COMPILE_GSTREAMER_PEER}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl GStreamer native peer error checking
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gstreamer-peers],,AC_MSG_ERROR([No --enable-gstreamer-peers (or --disable-gstreamer-peers) option; you want --enable-gstreamer-peer]))
|
|
|
|
dnl ------------------------------------------------------------
|
|
dnl Whether to compile with -Werror or not (disabled by default)
|
|
dnl ------------------------------------------------------------
|
|
AC_ARG_ENABLE([Werror],
|
|
[AS_HELP_STRING(--enable-Werror,whether to compile C code with -Werror which turns any compiler warning into a compilation failure [default=no])],
|
|
[case "${enableval}" in
|
|
yes) ENABLE_WERROR=yes ;;
|
|
no) ENABLE_WERROR=no ;;
|
|
*) ENABLE_WERROR=default ;;
|
|
esac],
|
|
[ENABLE_WERROR=default])
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Default AWT toolkit
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE(default-toolkit,
|
|
AS_HELP_STRING([--enable-default-toolkit],
|
|
[fully qualified class name of default AWT toolkit]))
|
|
default_toolkit=$enable_default_toolkit
|
|
if test "$default_toolkit" = ""; then
|
|
default_toolkit=gnu.java.awt.peer.gtk.GtkToolkit
|
|
fi
|
|
AC_SUBST(default_toolkit)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Native libxml/xslt library (disabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([xmlj],
|
|
[AS_HELP_STRING(--enable-xmlj,compile native libxml/xslt library [default=no])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_XMLJ=yes ;;
|
|
no) COMPILE_XMLJ=no ;;
|
|
*) COMPILE_XMLJ=no ;;
|
|
esac],
|
|
[COMPILE_XMLJ=no])
|
|
AM_CONDITIONAL(CREATE_XMLJ_LIBRARY, test "x${COMPILE_XMLJ}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl ALSA code (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([alsa],
|
|
[AS_HELP_STRING(--disable-alsa,compile ALSA providers (enable by --enable-alsa) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_ALSA=yes ;;
|
|
no) COMPILE_ALSA=no ;;
|
|
*) COMPILE_ALSA=yes ;;
|
|
esac],
|
|
[AC_CHECK_HEADERS([alsa/asoundlib.h],
|
|
[AC_CHECK_LIB([asound], [snd_seq_open], COMPILE_ALSA=yes,COMPILE_ALSA=no)],
|
|
COMPILE_ALSA=no)])
|
|
AM_CONDITIONAL(CREATE_ALSA_LIBRARIES, test "x${COMPILE_ALSA}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl DSSI code (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([dssi],
|
|
[AS_HELP_STRING(--disable-dssi,compile DSSI providers (enable by --enable-dssi) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_DSSI=yes ;;
|
|
no) COMPILE_DSSI=no ;;
|
|
*) COMPILE_DSSI=yes ;;
|
|
esac],
|
|
[COMPILE_DSSI=no
|
|
AC_CHECK_HEADERS([dssi.h], [
|
|
AC_CHECK_HEADERS([jack/jack.h],COMPILE_DSSI=yes)])])
|
|
AM_CONDITIONAL(CREATE_DSSI_LIBRARIES, test "x${COMPILE_DSSI}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl GTK native peer (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gtk-peer],
|
|
[AS_HELP_STRING(--disable-gtk-peer,compile GTK native peers (disabled by --disable-jni) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_GTK_PEER=yes ;;
|
|
no) COMPILE_GTK_PEER=no ;;
|
|
*) COMPILE_GTK_PEER=yes ;;
|
|
esac],
|
|
[COMPILE_GTK_PEER=yes])
|
|
AM_CONDITIONAL(CREATE_GTK_PEER_LIBRARIES, test "x${COMPILE_GTK_PEER}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl GTK native peer error checking
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gtk-peers],,AC_MSG_ERROR([No --enable-gtk-peers (or --disable-gtk-peers) option; you want --enable-gtk-peer]))
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Qt native peer (disabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([qt-peer],
|
|
[AS_HELP_STRING(--enable-qt-peer,compile Qt4 native peers (disabled by --disable-jni) [default=no])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_QT_PEER=yes ;;
|
|
no) COMPILE_QT_PEER=no ;;
|
|
*) COMPILE_QT_PEER=yes ;;
|
|
esac],
|
|
[COMPILE_QT_PEER=no])
|
|
AM_CONDITIONAL(CREATE_QT_PEER_LIBRARIES, test "x${COMPILE_QT_PEER}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Plugin (disabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([plugin],
|
|
[AS_HELP_STRING(--disable-plugin,compile gcjwebplugin (disabled by --disable-plugin) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_PLUGIN=yes ;;
|
|
no) COMPILE_PLUGIN=no ;;
|
|
*) COMPILE_PLUGIN=yes ;;
|
|
esac],
|
|
[COMPILE_PLUGIN=no])
|
|
AM_CONDITIONAL(CREATE_PLUGIN, test "x${COMPILE_PLUGIN}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Native java.math.BigInteger (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gmp],
|
|
[AS_HELP_STRING(--enable-gmp,
|
|
compile native java.math.BigInteger library (disabled by --disable-gmp) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes|true) COMPILE_GMP=yes ;;
|
|
no|false) COMPILE_GMP=no ;;
|
|
*) COMPILE_GMP=yes ;;
|
|
esac],
|
|
[COMPILE_GMP=yes])
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl GJDoc (enabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([gjdoc],
|
|
[AS_HELP_STRING(--disable-gjdoc,compile GJDoc (disabled by --disable-gjdoc) [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) COMPILE_GJDOC=yes ;;
|
|
no) COMPILE_GJDOC=no ;;
|
|
*) COMPILE_GJDOC=yes ;;
|
|
esac],
|
|
[COMPILE_GJDOC=yes])
|
|
AM_CONDITIONAL(CREATE_GJDOC, test "x${COMPILE_GJDOC}" = xyes)
|
|
|
|
dnl GCJ LOCAL: Calculates and substitutes toolexeclibdir. $libdir is
|
|
dnl defined to the same value for all multilibs. We define toolexeclibdir
|
|
dnl so that we can refer to the multilib installation directories from
|
|
dnl classpath's build files.
|
|
dnl -----------------------------------------------------------
|
|
CLASSPATH_TOOLEXECLIBDIR
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Sets the native libraries installation dir
|
|
dnl -----------------------------------------------------------
|
|
dnl GCJ LOCAL: default to ${toolexeclibdir}/gcj-${gcc_version}-${libgcj_soversion}
|
|
AC_ARG_WITH([native-libdir],
|
|
[AS_HELP_STRING(--with-native-libdir,sets the installation directory for native libraries [default='${libdir}/${PACKAGE}'])],
|
|
[
|
|
nativeexeclibdir=${withval}
|
|
],
|
|
[
|
|
nativeexeclibdir='${toolexeclibdir}/gcj-'`cat ${srcdir}/../../gcc/BASE-VER`-`awk -F: '/^[[^#]].*:/ { print $1 }' ${srcdir}/../libtool-version`
|
|
])
|
|
|
|
AC_SUBST(nativeexeclibdir)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Sets the Java library installation dir.
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_WITH([glibj-dir],
|
|
[AS_HELP_STRING(--with-glibj-dir,sets the installation directory for glibj.zip [default='${libdir}/${PACKAGE}'])],
|
|
[
|
|
glibjdir=${withval}
|
|
],
|
|
[
|
|
glibjdir='${datadir}/${PACKAGE}'
|
|
])
|
|
|
|
AC_SUBST(glibjdir)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Sets the Antlr jar to use for compiling gjdoc
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_WITH([antlr-jar],
|
|
[AS_HELP_STRING([--with-antlr-jar=file],[Use ANTLR from the specified jar file])],
|
|
[
|
|
ANTLR_JAR=$withval
|
|
],
|
|
[
|
|
ANTLR_JAR="$ANTLR_JAR"
|
|
])
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Regenerate headers at build time (enabled if not found)
|
|
dnl -----------------------------------------------------------
|
|
AC_MSG_CHECKING([whether to regenerate the headers])
|
|
AC_ARG_ENABLE([regen-headers],
|
|
[AS_HELP_STRING(--enable-regen-headers,automatically regenerate JNI headers [default=yes if headers don't exist])],
|
|
[case "${enableval}" in
|
|
yes) REGENERATE_JNI_HEADERS=yes ;;
|
|
no) REGENERATE_JNI_HEADERS=no ;;
|
|
*) REGENERATE_JNI_HEADERS=yes ;;
|
|
esac],
|
|
[if test -e ${srcdir}/include/java_lang_VMSystem.h; then
|
|
REGENERATE_JNI_HEADERS=no ;
|
|
else
|
|
REGENERATE_JNI_HEADERS=yes ;
|
|
fi])
|
|
AC_MSG_RESULT(${REGENERATE_JNI_HEADERS})
|
|
AM_CONDITIONAL(CREATE_JNI_HEADERS, test "x${REGENERATE_JNI_HEADERS}" = xyes)
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl Regenerate GJDoc parser at build time (enabled if not found)
|
|
dnl ------------------------------------------------------------------------
|
|
AC_MSG_CHECKING([whether to regenerate the GJDoc parser])
|
|
AC_ARG_ENABLE([regen-gjdoc-parser],
|
|
[AS_HELP_STRING(--enable-regen-gjdoc-parser,automatically regenerate the GJDoc parser [default=yes if generated source doesn't exist])],
|
|
[case "${enableval}" in
|
|
yes) REGENERATE_GJDOC_PARSER=yes ;;
|
|
no) REGENERATE_GJDOC_PARSER=no ;;
|
|
*) REGENERATE_GJDOC_PARSER=yes ;;
|
|
esac],
|
|
[if test -e ${srcdir}/tools/generated/gnu/classpath/tools/gjdoc/expr/JavaLexer.java; then
|
|
REGENERATE_GJDOC_PARSER=no ;
|
|
else
|
|
REGENERATE_GJDOC_PARSER=yes ;
|
|
fi])
|
|
AC_MSG_RESULT(${REGENERATE_GJDOC_PARSER})
|
|
AM_CONDITIONAL(CREATE_GJDOC_PARSER, test "x${REGENERATE_GJDOC_PARSER}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable tool wrapper binaries (disabled by default)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([tool-wrappers],
|
|
[AS_HELP_STRING(--enable-tool-wrappers,create tool wrapper binaries [default=no])],
|
|
[case x"${enableval}" in
|
|
xyes)
|
|
COMPILE_WRAPPERS=yes;
|
|
AC_CHECK_HEADERS([ltdl.h],, [AC_MSG_ERROR(cannot find ltdl.h)])
|
|
AC_CHECK_LIB(ltdl, lt_dlopen,, [AC_MSG_ERROR(cannot find libltdl)])
|
|
;;
|
|
xno) COMPILE_WRAPPERS=no ;;
|
|
x) COMPILE_WRAPPERS=yes ;;
|
|
*) COMPILE_WRAPPERS=yes ;;
|
|
esac],
|
|
[COMPILE_WRAPPERS=no])
|
|
AM_CONDITIONAL(CREATE_WRAPPERS, test "x${COMPILE_WRAPPERS}" = xyes)
|
|
|
|
AC_PROG_LN_S
|
|
AC_PROG_INSTALL
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Checks for programs.
|
|
dnl -----------------------------------------------------------
|
|
|
|
dnl Initialize libtool
|
|
AC_DISABLE_STATIC
|
|
LT_INIT
|
|
AC_PROG_AWK
|
|
AC_PROG_CC
|
|
AM_PROG_CC_C_O
|
|
AC_PROG_CPP
|
|
AC_PROG_CXX
|
|
|
|
# Handle -Werror default case.
|
|
if test "$ENABLE_WERROR" = default; then
|
|
case "$host_os" in
|
|
*linux*)
|
|
if test "$GCC" = yes; then
|
|
ENABLE_WERROR=yes
|
|
fi
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
if test "x${COMPILE_COLLECTIONS}" = xyes; then
|
|
AC_PATH_PROG(PERL, [perl])
|
|
AC_SUBST(PERL)
|
|
AC_SUBST(COLLECTIONS_PREFIX)
|
|
AC_CONFIG_FILES([lib/mkcollections.pl])
|
|
AC_CONFIG_COMMANDS([mkcollections.pl],[chmod 755 lib/mkcollections.pl])
|
|
fi
|
|
|
|
if test "x${COMPILE_JNI}" = xyes; then
|
|
GCC_ATTRIBUTE_UNUSED
|
|
|
|
AC_HEADER_STDC
|
|
|
|
dnl Checking sizeof void * is needed for fdlibm to work properly on ppc64,
|
|
dnl at least.
|
|
AC_COMPILE_CHECK_SIZEOF(void *)
|
|
|
|
dnl Checking for endianess.
|
|
AC_C_BIGENDIAN_CROSS
|
|
|
|
dnl We check for sys/filio.h because Solaris 2.5 defines FIONREAD there.
|
|
dnl On that system, sys/ioctl.h will not include sys/filio.h unless
|
|
dnl BSD_COMP is defined; just including sys/filio.h is simpler.
|
|
dnl Check for crt_externs.h on Darwin.
|
|
dnl Check for netinet/in_systm.h, netinet/ip.h and net/if.h for Windows CE.
|
|
dnl Check for sys/loadavg.h for getloadavg() on Solaris 9.
|
|
dnl Check for sys/sockio.h for SIOCGIFFLAGS on OpenSolaris.
|
|
AC_CHECK_HEADERS([unistd.h sys/types.h sys/config.h sys/ioctl.h \
|
|
asm/ioctls.h \
|
|
inttypes.h stdint.h utime.h sys/utime.h sys/filio.h \
|
|
sys/time.h \
|
|
sys/select.h \
|
|
crt_externs.h \
|
|
fcntl.h \
|
|
sys/mman.h \
|
|
magic.h \
|
|
sys/event.h sys/epoll.h \
|
|
ifaddrs.h \
|
|
netinet/in_systm.h netinet/ip.h net/if.h \
|
|
sys/loadavg.h sys/sockio.h])
|
|
|
|
AC_EGREP_HEADER(uint32_t, stdint.h, AC_DEFINE(HAVE_INT32_DEFINED, 1, [Define to 1 if you have uint32_t]))
|
|
AC_EGREP_HEADER(uint32_t, inttypes.h, AC_DEFINE(HAVE_INT32_DEFINED, 1, [Define to 1 if you have uint32_t]))
|
|
AC_EGREP_HEADER(u_int32_t, sys/types.h, AC_DEFINE(HAVE_BSD_INT32_DEFINED, 1, [Define to 1 if you have BSD u_int32_t]))
|
|
AC_EGREP_HEADER(u_int32_t, sys/config.h, AC_DEFINE(HAVE_BSD_INT32_DEFINED, 1, [Define to 1 if you have BSD u_int32_t]))
|
|
|
|
AC_SEARCH_LIBS([clock_gettime], [rt])
|
|
AC_SEARCH_LIBS([inet_pton],[nsl])
|
|
AC_CHECK_LIB([socket], [gethostname])
|
|
|
|
AC_CHECK_FUNCS([ftruncate fsync select \
|
|
gethostname socket strerror fork pipe execve open close \
|
|
lseek fstat read readv write writev htonl memset htons connect \
|
|
getsockname getpeername bind listen accept \
|
|
recvfrom send sendto setsockopt getsockopt time mktime clock_gettime \
|
|
gethostbyname_r localtime_r \
|
|
strerror_r \
|
|
fcntl \
|
|
statvfs \
|
|
mmap munmap mincore msync madvise getpagesize sysconf \
|
|
lstat readlink \
|
|
inet_aton inet_addr inet_pton \
|
|
getifaddrs kqueue kevent epoll_create \
|
|
getloadavg])
|
|
|
|
LIBMAGIC=
|
|
AC_CHECK_LIB(magic, magic_open, LIBMAGIC=-lmagic)
|
|
AC_SUBST(LIBMAGIC)
|
|
|
|
AC_MSG_CHECKING([whether struct sockaddr_in6 is in netinet/in.h])
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <netinet/in.h>]], [[struct sockaddr_in6 addr6;]])],
|
|
[AC_DEFINE(HAVE_INET6, 1,
|
|
[Define if inet6 structures are defined in netinet/in.h.])
|
|
AC_MSG_RESULT(yes)],
|
|
[AC_MSG_RESULT(no)])
|
|
|
|
AC_HEADER_TIME
|
|
AC_STRUCT_TM
|
|
AC_STRUCT_TIMEZONE
|
|
|
|
AC_MSG_CHECKING([for tm_gmtoff in struct tm])
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]],[[struct tm tim; tim.tm_gmtoff = 0;]])],
|
|
[AC_DEFINE(STRUCT_TM_HAS_GMTOFF, 1, [Define if struct tm has tm_gmtoff field.])
|
|
AC_MSG_RESULT(yes)],
|
|
[AC_MSG_RESULT(no)
|
|
AC_MSG_CHECKING([for global timezone variable])
|
|
dnl FIXME: we don't want a link check here because that won't work
|
|
dnl when cross-compiling. So instead we make an assumption that
|
|
dnl the header file will mention timezone if it exists.
|
|
dnl Don't find the win32 function timezone
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[void i(){long z2 = 2*timezone;}]])],
|
|
[AC_DEFINE(HAVE_TIMEZONE, 1, [Define if global 'timezone' exists.])
|
|
AC_MSG_RESULT(yes)],
|
|
[AC_MSG_RESULT(no)
|
|
AC_MSG_CHECKING([for global _timezone variable])
|
|
dnl FIXME: As above, don't want link check
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[long z2 = _timezone;]])],
|
|
[AC_DEFINE(HAVE_UNDERSCORE_TIMEZONE, 1,
|
|
[Define if your platform has the global _timezone variable.])
|
|
AC_MSG_RESULT(yes)],
|
|
[AC_MSG_RESULT(no)])])])
|
|
|
|
AC_C_CONST
|
|
AC_C_INLINE
|
|
AC_C_ATTRIBUTE
|
|
AX_FUNC_WHICH_GETHOSTBYNAME_R
|
|
|
|
dnl See if we HAVE_ICONV, how ICONV_CONST is set and LTLIBICONV
|
|
AM_ICONV
|
|
|
|
dnl When using gcc we want warnings, lots of warnings :-)
|
|
if test "x${GCC}" = xyes; then
|
|
dnl We want ISO C90 ansi, but with longlong (jlong) support
|
|
dnl and modern POSIX and BSD C library functions/prototypes.
|
|
|
|
dnl Warning flags for (almost) everybody.
|
|
dnl Should probably be configurable
|
|
WARNING_CFLAGS='-W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long'
|
|
AC_SUBST(WARNING_CFLAGS)
|
|
|
|
dnl CFLAGS that are used for all native code. We want to compile
|
|
dnl everything with unwinder data so that backtrace() will always
|
|
dnl work.
|
|
EXTRA_CFLAGS='-fexceptions -fasynchronous-unwind-tables'
|
|
AC_SUBST(EXTRA_CFLAGS)
|
|
|
|
dnl Strict warning flags which not every module uses.
|
|
dnl Should probably be configurable.
|
|
STRICT_WARNING_CFLAGS='-Wstrict-prototypes -pedantic'
|
|
AC_SUBST(STRICT_WARNING_CFLAGS)
|
|
|
|
dnl Whether or not to add -Werror, also not used by all modueles.
|
|
dnl Can be configured by --disable-Werror
|
|
ERROR_CFLAGS=
|
|
if test "x${ENABLE_WERROR}" = xyes; then
|
|
ERROR_CFLAGS='-Werror'
|
|
fi
|
|
AC_SUBST(ERROR_CFLAGS)
|
|
fi
|
|
|
|
dnl Check for libxml and libxslt libraries (when xmlj is enabled).
|
|
if test "x${COMPILE_XMLJ}" = xyes; then
|
|
PKG_CHECK_MODULES(XML, libxml-2.0 >= 2.6.8)
|
|
PKG_CHECK_MODULES(XSLT, libxslt >= 1.1.11)
|
|
AC_SUBST(XML_LIBS)
|
|
AC_SUBST(XML_CFLAGS)
|
|
AC_SUBST(XSLT_LIBS)
|
|
AC_SUBST(XSLT_CFLAGS)
|
|
fi
|
|
|
|
dnl Check for AWT related gthread/gtk
|
|
if test "x${COMPILE_GTK_PEER}" = xyes; then
|
|
AC_PATH_XTRA
|
|
if test "$no_x" = yes; then
|
|
AC_MSG_ERROR([GTK+ peers requested but no X library available])
|
|
fi
|
|
dnl Check if we can link against the XTest library and set
|
|
dnl HAVE_XTEST accordingly.
|
|
AC_CHECK_LIB([Xtst], [XTestQueryExtension],
|
|
[AC_DEFINE(HAVE_XTEST, 1, [Define to 1 if you have libXtst.])[XTEST_LIBS="$XTEST_LIBS -X11 -lXtst"]],
|
|
[true],
|
|
[${X_LIBS}])
|
|
|
|
|
|
PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.8 gthread-2.0 >= 2.2 gdk-pixbuf-2.0)
|
|
PKG_CHECK_MODULES(FREETYPE2, freetype2)
|
|
PKG_CHECK_MODULES(PANGOFT2, pangoft2)
|
|
PKG_CHECK_MODULES(CAIRO, cairo >= 1.1.8)
|
|
dnl Check if we can link against the XRender library and set
|
|
dnl HAVE_XRENDER accordingly.
|
|
AC_CHECK_LIB([Xrender], [XRenderQueryExtension],
|
|
[AC_DEFINE(HAVE_XRENDER, 1, [Define to 1 if you have libXrender.])[X_EXTRA_LIBS="$X_EXTRA_LIBS -lXrender"]],
|
|
[true],
|
|
[${X_LIBS}])
|
|
|
|
dnl Check if we can link against the XRandR library and set
|
|
dnl HAVE_XRANDR accordingly.
|
|
AC_CHECK_LIB([Xrandr], [XRRQueryExtension],
|
|
[AC_DEFINE(HAVE_XRANDR, 1, [Define to 1 if you have libXrandr.])[X_EXTRA_LIBS="$X_EXTRA_LIBS -lXrandr"]],
|
|
[true],
|
|
[${X_LIBS}])
|
|
|
|
AC_SUBST(GTK_CFLAGS)
|
|
AC_SUBST(GTK_LIBS)
|
|
AC_SUBST(FREETYPE2_LIBS)
|
|
AC_SUBST(FREETYPE2_CFLAGS)
|
|
AC_SUBST(PANGOFT2_LIBS)
|
|
AC_SUBST(PANGOFT2_CFLAGS)
|
|
AC_SUBST(XTEST_LIBS)
|
|
fi
|
|
|
|
dnl gconf-peer
|
|
if test "x${COMPILE_GCONF_PEER}" = xyes; then
|
|
PKG_CHECK_MODULES(GCONF, gconf-2.0 >= 2.6.0)
|
|
AC_SUBST(GCONF_CFLAGS)
|
|
AC_SUBST(GCONF_LIBS)
|
|
dnl we also need gdk for locking
|
|
PKG_CHECK_MODULES(GDK, gdk-2.0 >= 2.8)
|
|
AC_SUBST(GDK_CFLAGS)
|
|
AC_SUBST(GDK_LIBS)
|
|
dnl check if the config value was given form the command line,
|
|
dnl if not, overwrite the default if we have the gconf backend
|
|
dnl compiled in
|
|
USE_GCONF_PREFS_PEER=$enable_default_preferences_peer
|
|
if test "$USE_GCONF_PREFS_PEER" = ""; then
|
|
DEFAULT_PREFS_PEER=gnu.java.util.prefs.GConfBasedFactory
|
|
fi
|
|
fi
|
|
|
|
dnl gstreamer-peer
|
|
if test "x${COMPILE_GSTREAMER_PEER}" = xyes; then
|
|
GST_MAJORMINOR=0.10
|
|
GST_REQUIRED=0.10.10
|
|
|
|
dnl gstreamer
|
|
PKG_CHECK_MODULES(GSTREAMER, gstreamer-$GST_MAJORMINOR >= $GST_REQUIRED)
|
|
AC_SUBST(GSTREAMER_CFLAGS)
|
|
AC_SUBST(GSTREAMER_LIBS)
|
|
|
|
dnl gstreamer-base
|
|
PKG_CHECK_MODULES(GSTREAMER_BASE,
|
|
gstreamer-base-$GST_MAJORMINOR >= $GST_REQUIRED)
|
|
AC_SUBST(GSTREAMER_BASE_CFLAGS)
|
|
AC_SUBST(GSTREAMER_BASE_LIBS)
|
|
|
|
dnl gstreamer-plugin-base
|
|
PKG_CHECK_MODULES(GSTREAMER_PLUGINS_BASE,
|
|
gstreamer-plugins-base-$GST_MAJORMINOR >= $GST_REQUIRED)
|
|
AC_SUBST(GSTREAMER_PLUGINS_BASE_CFLAGS)
|
|
AC_SUBST(GSTREAMER_PLUGINS_BASE_LIBS)
|
|
|
|
GST_PLUGIN_LDFLAGS='-module -avoid-version -Wno-unused-parameter -no-undefined'
|
|
AC_SUBST(GST_PLUGIN_LDFLAGS)
|
|
|
|
PKG_CHECK_MODULES(GDK, gdk-2.0 >= 2.8)
|
|
AC_SUBST(GDK_CFLAGS)
|
|
AC_SUBST(GDK_LIBS)
|
|
|
|
dnl set the gstreamer based file reader, writer and mixer
|
|
GSTREAMER_FILE_READER=gnu.javax.sound.sampled.gstreamer.io.GstAudioFileReader
|
|
GSTREAMER_MIXER_PROVIDER=gnu.javax.sound.sampled.gstreamer.GStreamerMixerProvider
|
|
fi
|
|
dnl add the gstreamer resources
|
|
AC_SUBST(GSTREAMER_FILE_READER)
|
|
AC_SUBST(GSTREAMER_MIXER_PROVIDER)
|
|
|
|
dnl Check for AWT related Qt4
|
|
if test "x${COMPILE_QT_PEER}" = xyes; then
|
|
PKG_CHECK_MODULES(QT, QtCore QtGui >= 4.1.0, HAVE_QT4="yes", HAVE_QT4="no")
|
|
if test "x$HAVE_QT4" = "xyes"; then
|
|
dnl Check needed because in some cases the QtGui includedir
|
|
dnl doesn't contain the subsystem dir.
|
|
QT_INCLUDE_DIR=`$PKG_CONFIG --variable=includedir QtGui`
|
|
EXTRA_QT_INCLUDE_DIR="$QT_INCLUDE_DIR/Qt"
|
|
AC_CHECK_FILE([$QT_INCLUDE_DIR/QWidget],
|
|
AC_MSG_NOTICE([No extra QT_INCLUDE_DIR needed]),
|
|
AC_CHECK_FILE([$EXTRA_QT_INCLUDE_DIR/QWidget],
|
|
QT_CFLAGS="$QT_CFLAGS -I$EXTRA_QT_INCLUDE_DIR",
|
|
AC_MSG_WARN([QWidget not found])))
|
|
AC_CHECK_PROG(MOC, [moc], [moc])
|
|
AC_CHECK_PROG(MOC, [moc-qt4], [moc-qt4])
|
|
fi
|
|
if test "x$HAVE_QT4" = "xno"; then
|
|
AC_MSG_NOTICE([Looking for QT_CFLAGS and QT_LIBS without pkg-config])
|
|
case "$host_os" in
|
|
darwin*)
|
|
AC_ARG_WITH([qt4dir],
|
|
[AS_HELP_STRING([--with-qt4dir=DIR],
|
|
[Qt4 installation directory used for OS-X.
|
|
For other systems use pkg-config.])],
|
|
[QT4DIR=$withval]
|
|
)
|
|
if test x"$QT4DIR" = x ; then
|
|
AC_MSG_ERROR([*** No path for Qt4 --with-qt4dir option given])
|
|
fi
|
|
AC_MSG_RESULT([QT4DIR... $QT4DIR])
|
|
AC_CHECK_PROG(MOC, [moc], [$QT4DIR/bin/moc], [], $QT4DIR/bin)
|
|
if test x"$MOC" = x; then
|
|
AC_MSG_ERROR([*** This is not the right Qt installation])
|
|
fi
|
|
QT_CFLAGS="-F$QT4DIR/lib -I$QT4DIR/lib/QtCore.framework/Headers"
|
|
QT_CFLAGS="$QT_CFLAGS -I$QT4DIR/lib/QtGui.framework/Headers"
|
|
QT_LIBS="-Xlinker -F$QT4DIR/lib -Xlinker -framework -Xlinker QtCore"
|
|
QT_LIBS="$QT_LIBS -Xlinker -framework -Xlinker QtGui"
|
|
;;
|
|
*)
|
|
AC_MSG_ERROR([*** Please check PKG_CONFIG_PATH or the version
|
|
of your installed Qt4 installation.])
|
|
;;
|
|
esac
|
|
fi
|
|
AC_MSG_NOTICE([Set QT_CFLAGS... $QT_CFLAGS])
|
|
AC_SUBST(QT_CFLAGS)
|
|
AC_SUBST(QT_LIBS)
|
|
fi
|
|
dnl **********************************************************************
|
|
dnl Check for MSG_NOSIGNAL
|
|
dnl **********************************************************************
|
|
AC_MSG_CHECKING(for MSG_NOSIGNAL)
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h>]], [[ int f = MSG_NOSIGNAL; ]])],[ AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_MSG_NOSIGNAL, 1,
|
|
[Define this symbol if you have MSG_NOSIGNAL]) ],[ AC_MSG_RESULT(no)
|
|
])
|
|
dnl **********************************************************************
|
|
dnl Check for SO_NOSIGPIPE (Darwin equivalent for MSG_NOSIGNAL)
|
|
dnl **********************************************************************
|
|
AC_MSG_CHECKING(for SO_NOSIGPIPE )
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h>]], [[ int f = SO_NOSIGPIPE; ]])],[ AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_SO_NOSIGPIPE, 1,
|
|
[Define this symbol if you have SO_NOSIGPIPE]) ],[ AC_MSG_RESULT(no)
|
|
])
|
|
dnl **********************************************************************
|
|
dnl Check for MSG_WAITALL
|
|
dnl **********************************************************************
|
|
AC_MSG_CHECKING(for MSG_WAITALL)
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h>]], [[ int f = MSG_WAITALL; ]])],[ AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_MSG_WAITALL, 1,
|
|
[Define this symbol if you have MSG_WAITALL]) ],[ AC_MSG_RESULT(no)
|
|
])
|
|
|
|
dnl Check for plugin support headers and libraries.
|
|
if test "x${COMPILE_PLUGIN}" = xyes; then
|
|
PKG_CHECK_MODULES(MOZILLA, mozilla-plugin libxul-unstable, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
PKG_CHECK_MODULES(MOZILLA, mozilla-plugin, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
fi
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
PKG_CHECK_MODULES(MOZILLA, firefox-plugin firefox-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
fi
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
PKG_CHECK_MODULES(MOZILLA, xulrunner-plugin xulrunner-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
fi
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
PKG_CHECK_MODULES(MOZILLA, mozilla-firefox-plugin mozilla-firefox-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
fi
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
PKG_CHECK_MODULES(MOZILLA, seamonkey-plugin seamonkey-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
fi
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
PKG_CHECK_MODULES(MOZILLA, iceape-plugin iceape-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
|
|
fi
|
|
if test "x${MOZILLA_FOUND}" = xno; then
|
|
AC_MSG_ERROR([Couldn't find plugin support headers and libraries, try --disable-plugin])
|
|
fi
|
|
|
|
PKG_CHECK_MODULES(GLIB, glib-2.0)
|
|
PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.8 gthread-2.0 >= 2.2 gdk-pixbuf-2.0)
|
|
|
|
AC_SUBST(MOZILLA_CFLAGS)
|
|
AC_SUBST(MOZILLA_LIBS)
|
|
AC_SUBST(GLIB_CFLAGS)
|
|
AC_SUBST(GLIB_LIBS)
|
|
AC_SUBST(GTK_CFLAGS)
|
|
AC_SUBST(GTK_LIBS)
|
|
|
|
AC_SUBST(PLUGIN_DIR, $HOME/.mozilla/plugins/)
|
|
fi
|
|
|
|
dnl Check for GNU MP library and header file
|
|
dnl for GNU MP versions >= 4.2 use __gmpz_combit; otherwise look for
|
|
dnl __gmpz_mul_si for earlier versions (>= 3.1).
|
|
dnl IMPORTANT: if you decide to look for __gmpz_combit, don't forget to
|
|
dnl change the name of the corresponding ac_ variable on lines 860...
|
|
AC_ARG_WITH(gmp, [ --with-gmp=PATH specify prefix directory for the installed GMP package.
|
|
Equivalent to --with-gmp-include=PATH/include
|
|
plus --with-gmp-lib=PATH/lib])
|
|
AC_ARG_WITH(gmp_include, [ --with-gmp-include=PATH specify directory for installed GMP include files])
|
|
AC_ARG_WITH(gmp_lib, [ --with-gmp-lib=PATH specify directory for the installed GMP library])
|
|
|
|
if test "x$with_gmp" != x; then
|
|
gmplibs=-lgmp
|
|
gmpinc=
|
|
gmplibs="-L$with_gmp/lib $gmplibs"
|
|
gmpinc="-I$with_gmp/include $gmpinc"
|
|
if test "x$with_gmp_include" != x; then
|
|
gmpinc="-I$with_gmp_include $gmpinc"
|
|
fi
|
|
if test "x$with_gmp_lib" != x; then
|
|
gmplibs="-L$with_gmp_lib $gmplibs"
|
|
fi
|
|
else
|
|
gmplibs="-lgmp"
|
|
gmpinc="-I/usr/include"
|
|
fi
|
|
|
|
if test "x${COMPILE_GMP}" = xyes; then
|
|
AC_MSG_CHECKING([for GMP directories])
|
|
if test "x$with_gmp" != x; then
|
|
gmplibs="-L$with_gmp/lib -lgmp"
|
|
gmpinc="-I$with_gmp/include"
|
|
if test "x$with_gmp_include" != x; then
|
|
gmpinc="-I$with_gmp_include $gmpinc"
|
|
fi
|
|
if test "x$with_gmp_lib" != x; then
|
|
gmplibs="-L$with_gmp_lib $gmplibs"
|
|
fi
|
|
else
|
|
with_gmp="/usr"
|
|
gmplibs="-lgmp"
|
|
gmpinc="-I/usr/include"
|
|
fi
|
|
AC_MSG_RESULT([prefix=$with_gmp, libs=$gmplibs, inc=$gmpinc])
|
|
AC_CHECK_LIB(gmp, __gmpz_mul_si,
|
|
[GMP_CFLAGS="$gmpinc"
|
|
GMP_LIBS="$gmplibs" ],
|
|
[GMP_CFLAGS=
|
|
GMP_LIBS= ])
|
|
AC_SUBST(GMP_CFLAGS)
|
|
AC_SUBST(GMP_LIBS)
|
|
|
|
AC_CHECK_HEADERS([gmp.h])
|
|
fi
|
|
|
|
else
|
|
COMPILE_GMP=no
|
|
fi
|
|
|
|
if test "x${REGENERATE_JNI_HEADERS}" = xyes; then
|
|
CLASSPATH_WITH_JAVAH
|
|
fi
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Add the include files for the native abstraction layer.
|
|
dnl Used by AM_CPPFLAGS in the different modules.
|
|
dnl -----------------------------------------------------------
|
|
CLASSPATH_INCLUDES="-I\$(top_srcdir)/include -I\$(top_srcdir)/native/jni/classpath -I\$(top_srcdir)/native/jni/native-lib"
|
|
AC_SUBST(CLASSPATH_INCLUDES)
|
|
|
|
dnl -----------------------------------------------------------
|
|
if test "x${COMPILE_JNI}" = xyes; then
|
|
AC_MSG_CHECKING(jni_md.h support)
|
|
if test -f ${srcdir}/include/jni_md-${target_cpu}-${target_os}.h; then
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
target_cpu=x86
|
|
target_os=linux-gnu
|
|
AC_MSG_WARN(no, using x86-linux-gnu)
|
|
fi
|
|
ac_sources="include/jni_md-${target_cpu}-${target_os}.h"
|
|
ac_dests="include/jni_md.h"
|
|
while test -n "$ac_sources"; do
|
|
set $ac_dests; ac_dest=$1; shift; ac_dests=$*
|
|
set $ac_sources; ac_source=$1; shift; ac_sources=$*
|
|
ac_config_links_1="$ac_config_links_1 $ac_dest:$ac_source"
|
|
done
|
|
AC_CONFIG_LINKS([$ac_config_links_1])
|
|
fi
|
|
|
|
CLASSPATH_WITH_CLASSLIB
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Initialize maintainer mode
|
|
dnl -----------------------------------------------------------
|
|
AM_MAINTAINER_MODE
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable debugging statements at compile time. By default
|
|
dnl these statements should be optimized out of the bytecode
|
|
dnl produced by an optimizing Java compiler and not hinder
|
|
dnl performance because debugging is turned off by default.
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([debug],
|
|
[AS_HELP_STRING(--enable-debug,enable runtime debugging code)],
|
|
[case "${enableval}" in
|
|
yes)
|
|
LIBDEBUG="true"
|
|
AC_DEFINE(DEBUG, 1, [Define to 1 if you want native library runtime debugging code enabled])
|
|
;;
|
|
no) LIBDEBUG="false" ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
|
|
esac],
|
|
[LIBDEBUG="false"])
|
|
AC_SUBST(LIBDEBUG)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable execution of all static initializer loadLibrary()
|
|
dnl calls at compile time. By default most people will not
|
|
dnl want to disable this, but some VMs (gcj) don't need or want
|
|
dnl them.
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([load-library],
|
|
[AS_HELP_STRING(--enable-load-library,enable to use JNI native methods [default=yes])],
|
|
[case "${enableval}" in
|
|
yes) INIT_LOAD_LIBRARY="true" ;;
|
|
no) INIT_LOAD_LIBRARY="false" ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-load-library) ;;
|
|
esac],
|
|
[INIT_LOAD_LIBRARY="true"])
|
|
AC_SUBST(INIT_LOAD_LIBRARY)
|
|
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Specify the jar file containing the Eclipse Java Compiler. If
|
|
dnl this option is not specified then the com.sun.tools.javac
|
|
dnl implementation will not be included in tools.zip.
|
|
dnl -----------------------------------------------------------
|
|
dnl GCJ LOCAL: default to $multi_basedir/ecj.jar
|
|
dnl In the default case where $multi_basedir/ecj.jar is found
|
|
dnl $(jardir)/ecj.jar will not expand properly in GNU Classpath's
|
|
dnl gnu/classpath/Configuration.java. That is OK though since libjava's
|
|
dnl gnu/classpath/Configuration.java overrides GNU Classpath's and
|
|
dnl ECJ_JAR_FILE will be properly expanded in libjava's
|
|
dnl gnu/classpath/natConfiguration.cc.
|
|
AC_ARG_WITH([ecj-jar],
|
|
[AS_HELP_STRING([--with-ecj-jar=ABS.PATH],
|
|
[specify jar file containing the Eclipse Java Compiler])],
|
|
[ECJ_JAR=$withval],
|
|
[if test -f $multi_basedir/ecj.jar; then
|
|
ECJ_JAR='$(jardir)/ecj.jar'
|
|
fi])
|
|
AC_SUBST(ECJ_JAR)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Should the VM explicitly run class initialization subfunctions for
|
|
dnl java.lang.System? (default is false -- the subfunctions will be run
|
|
dnl automatically by the class initializer)
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([java-lang-system-explicit-initialization],
|
|
[AS_HELP_STRING(--enable-java-lang-system-explicit-initialization,will the VM explicitly invoke java.lang.System's static initialization methods [default=no])],
|
|
[case "${enableval}" in
|
|
yes|true) JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION="true" ;;
|
|
no|false) JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION="false" ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-java-lang-system-explicit-initialization) ;;
|
|
esac],
|
|
[JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION="false"])
|
|
AC_SUBST(JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION)
|
|
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl avoiding automake complaints
|
|
dnl -----------------------------------------------------------
|
|
REMOVE=""
|
|
AC_SUBST(REMOVE)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl This is probably useless.
|
|
dnl -----------------------------------------------------------
|
|
AC_PATH_PROG(MKDIR, mkdir)
|
|
AC_PATH_PROG(CP, cp)
|
|
AC_PATH_PROG(DATE, date)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl According to the GNU coding guide, we shouldn't require find,
|
|
dnl and zip, however GNU provides both so it should be okay
|
|
dnl -----------------------------------------------------------
|
|
AC_PATH_PROG(FIND, find)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Specify what to install (install only glibj.zip by default)
|
|
dnl -----------------------------------------------------------
|
|
CLASSPATH_WITH_GLIBJ
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Enable API documentation generation (disabled by default)
|
|
dnl -----------------------------------------------------------
|
|
CLASSPATH_WITH_GJDOC
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Whether to use jay to regenerate parsers.
|
|
dnl -----------------------------------------------------------
|
|
REGEN_WITH_JAY
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl This sets the build-time default, which can now be overridden
|
|
dnl by setting the system property gnu.classpath.awt.gtk.portable.native.sync
|
|
dnl to "true" or "false".
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([portable-native-sync],
|
|
[AS_HELP_STRING(--enable-portable-native-sync,synchronize VM threads portably)],
|
|
[case "${enableval}" in
|
|
yes)
|
|
AC_DEFINE(PORTABLE_NATIVE_SYNC, 1, [Define if you want to synchronize VM threads portably by default; undef otherwise])
|
|
;;
|
|
no) ;;
|
|
*)
|
|
AC_MSG_ERROR(bad value ${enableval} for --enable-portable-native-sync)
|
|
;;
|
|
esac],
|
|
[])
|
|
|
|
AX_CREATE_STDINT_H([include/config-int.h])
|
|
|
|
dnl -----------------------------------------------------------------------
|
|
dnl Support for using a prebuilt class library
|
|
dnl -----------------------------------------------------------------------
|
|
AC_ARG_WITH([glibj_zip],
|
|
AS_HELP_STRING([--with-glibj-zip=ABS.PATH],
|
|
[use prebuilt glibj.zip class library]))
|
|
|
|
case "$with_glibj_zip" in
|
|
"")
|
|
use_glibj_zip=false
|
|
;;
|
|
"no" )
|
|
use_glibj_zip=false
|
|
;;
|
|
"yes")
|
|
AC_MSG_ERROR([Please suply an absolute path to a prebuilt glibj.zip])
|
|
;;
|
|
*)
|
|
use_glibj_zip=true
|
|
PATH_TO_GLIBJ_ZIP=$with_glibj_zip
|
|
;;
|
|
esac;
|
|
|
|
AM_CONDITIONAL(USE_PREBUILT_GLIBJ_ZIP, test x$use_glibj_zip = xtrue)
|
|
AC_SUBST(PATH_TO_GLIBJ_ZIP)
|
|
|
|
if test "x${TOOLSDIR}" != x; then
|
|
dnl GCJ LOCAL
|
|
if test "x${COMPILE_WRAPPERS}" = xno && test "x${enable_java_maintainer_mode}" = xyes; then
|
|
AC_PROG_JAVA_WORKS
|
|
fi
|
|
dnl END GCJ LOCAL
|
|
if test "x${COMPILE_GJDOC}" = xyes; then
|
|
AC_LIB_ANTLR
|
|
dnl GCJ LOCAL
|
|
if test "x${REGENERATE_GJDOC_PARSER}" = xyes && test "x${enable_java_maintainer_mode}" = xyes; then
|
|
dnl END GCJ LOCAL
|
|
AC_PROG_ANTLR(2,7,1)
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
|
|
# Check for javac if we need to build either the class library,
|
|
# the examples or the tools
|
|
if test "x${use_glibj_zip}" = xfalse || \
|
|
test "x${EXAMPLESDIR}" != x || \
|
|
test "x${TOOLSDIR}" != x && \
|
|
test "x${build_class_files}" != xno && \
|
|
test "${enable_java_maintainer_mode}" = yes; then dnl GCJ_LOCAL
|
|
AC_PROG_JAVAC_WORKS
|
|
CLASSPATH_JAVAC_MEM_CHECK
|
|
else
|
|
AM_CONDITIONAL(GCJ_JAVAC, false)
|
|
fi
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Build with Escher based X peers.
|
|
dnl -----------------------------------------------------------
|
|
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
|
|
PATH_TO_ESCHER=$with_escher
|
|
;;
|
|
esac
|
|
|
|
AM_CONDITIONAL(USE_ESCHER, test x$use_escher = xtrue)
|
|
AC_SUBST(PATH_TO_ESCHER)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Check if local socket support should be included.
|
|
dnl -----------------------------------------------------------
|
|
AC_ARG_ENABLE([local-sockets],
|
|
[AS_HELP_STRING(--enable-local-sockets,enables local (AF_LOCAL) socket API [default: no])],
|
|
[case "${enableval}" in
|
|
yes)
|
|
ENABLE_LOCAL_SOCKETS=yes
|
|
;;
|
|
*)
|
|
ENABLE_LOCAL_SOCKETS=no
|
|
;;
|
|
esac],
|
|
[])
|
|
if test "x$ENABLE_LOCAL_SOCKETS" = "xyes"
|
|
then
|
|
AC_CHECK_HEADER([sys/un.h])
|
|
AC_CHECK_FUNCS([read write bind listen accept shutdown], [],
|
|
AC_MSG_ERROR([networking support not available]))
|
|
AC_DEFINE(ENABLE_LOCAL_SOCKETS, [1], [Define to enable support for local sockets.])
|
|
fi
|
|
AM_CONDITIONAL(ENABLE_LOCAL_SOCKETS, test "x$ENABLE_LOCAL_SOCKETS" = "xyes")
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Add the default preference peer
|
|
dnl -----------------------------------------------------------
|
|
AC_SUBST(DEFAULT_PREFS_PEER)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl Set GNU MP related params
|
|
dnl -----------------------------------------------------------
|
|
WANT_NATIVE_BIG_INTEGER=false
|
|
if test "x${COMPILE_GMP}" = xyes; then
|
|
if test "x${ac_cv_lib_gmp___gmpz_mul_si}" = xyes; then
|
|
if test "x${ac_cv_header_gmp_h}" = xyes; then
|
|
WANT_NATIVE_BIG_INTEGER=true
|
|
AC_DEFINE(WITH_GNU_MP, 1, [Define to 1 if gmp is usable])
|
|
else
|
|
COMPILE_GMP=no
|
|
fi
|
|
else
|
|
COMPILE_GMP=no
|
|
fi
|
|
fi
|
|
AC_SUBST(WANT_NATIVE_BIG_INTEGER)
|
|
AM_CONDITIONAL(CREATE_GMPBI_LIBRARY, test "x${COMPILE_GMP}" = xyes)
|
|
|
|
dnl -----------------------------------------------------------
|
|
dnl output files
|
|
dnl -----------------------------------------------------------
|
|
AC_CONFIG_FILES([Makefile
|
|
doc/Makefile
|
|
doc/api/Makefile
|
|
external/Makefile
|
|
external/sax/Makefile
|
|
external/w3c_dom/Makefile
|
|
external/relaxngDatatype/Makefile
|
|
external/jsr166/Makefile
|
|
gnu/classpath/Configuration.java
|
|
gnu/java/security/Configuration.java
|
|
include/Makefile
|
|
native/Makefile
|
|
native/fdlibm/Makefile
|
|
native/jawt/Makefile
|
|
native/jni/Makefile
|
|
native/jni/classpath/Makefile
|
|
native/jni/java-io/Makefile
|
|
native/jni/java-lang/Makefile
|
|
native/jni/java-math/Makefile
|
|
native/jni/java-net/Makefile
|
|
native/jni/java-nio/Makefile
|
|
native/jni/java-util/Makefile
|
|
native/jni/gtk-peer/Makefile
|
|
native/jni/gconf-peer/Makefile
|
|
native/jni/gstreamer-peer/Makefile
|
|
native/jni/qt-peer/Makefile
|
|
native/jni/xmlj/Makefile
|
|
native/jni/midi-alsa/Makefile
|
|
native/jni/midi-dssi/Makefile
|
|
native/jni/native-lib/Makefile
|
|
native/plugin/Makefile
|
|
resource/Makefile
|
|
resource/META-INF/services/java.util.prefs.PreferencesFactory
|
|
resource/META-INF/services/javax.sound.sampled.spi.AudioFileReader
|
|
resource/META-INF/services/javax.sound.sampled.spi.MixerProvider
|
|
scripts/Makefile
|
|
scripts/classpath.spec
|
|
lib/Makefile
|
|
lib/gen-classlist.sh
|
|
lib/copy-vmresources.sh
|
|
scripts/check_jni_methods.sh
|
|
tools/Makefile
|
|
examples/Makefile
|
|
examples/Makefile.jawt
|
|
examples/Makefile.java2d])
|
|
|
|
CLASSPATH_COND_IF([CREATE_WRAPPERS], [test "x${COMPILE_WRAPPERS}" = xyes], [],
|
|
[AC_CONFIG_FILES([tools/gappletviewer
|
|
tools/gjarsigner
|
|
tools/gkeytool
|
|
tools/gjar
|
|
tools/gnative2ascii
|
|
tools/gserialver
|
|
tools/grmiregistry
|
|
tools/gtnameserv
|
|
tools/gorbd
|
|
tools/grmid
|
|
tools/grmic
|
|
tools/gjavah])
|
|
|
|
AC_CONFIG_COMMANDS([gappletviewer],[chmod 755 tools/gappletviewer])
|
|
AC_CONFIG_COMMANDS([gjarsigner],[chmod 755 tools/gjarsigner])
|
|
AC_CONFIG_COMMANDS([gkeytool],[chmod 755 tools/gkeytool])
|
|
AC_CONFIG_COMMANDS([gjar],[chmod 755 tools/gjar])
|
|
AC_CONFIG_COMMANDS([gnative2ascii],[chmod 755 tools/gnative2ascii])
|
|
AC_CONFIG_COMMANDS([gserialver],[chmod 755 tools/gserialver])
|
|
AC_CONFIG_COMMANDS([grmiregistry],[chmod 755 tools/grmiregistry])
|
|
AC_CONFIG_COMMANDS([gtnameserv],[chmod 755 tools/gtnameserv])
|
|
AC_CONFIG_COMMANDS([gorbd],[chmod 755 tools/gorbd])
|
|
AC_CONFIG_COMMANDS([grmid],[chmod 755 tools/grmid])
|
|
AC_CONFIG_COMMANDS([grmic],[chmod 755 tools/grmic])
|
|
AC_CONFIG_COMMANDS([gjavah], [chmod 755 tools/gjavah])
|
|
])
|
|
|
|
if test "x${COMPILE_GJDOC}" = xyes
|
|
then
|
|
AC_CONFIG_FILES([tools/gjdoc])
|
|
AC_CONFIG_COMMANDS([gjdoc], [chmod 755 tools/gjdoc])
|
|
fi
|
|
|
|
AC_CONFIG_COMMANDS([gen-classlist],[chmod 755 lib/gen-classlist.sh])
|
|
AC_CONFIG_COMMANDS([copy-vmresources],[chmod 755 lib/copy-vmresources.sh])
|
|
AC_OUTPUT
|
|
|
|
# Create standard.omit based on decisions we just made.
|
|
cat ${srcdir}/lib/standard.omit.in > lib/standard.omit
|
|
if test x$use_escher != xtrue; then
|
|
echo gnu/java/awt/peer/x/.*java$ >> lib/standard.omit
|
|
fi
|
|
|
|
if test "x${COMPILE_PLUGIN}" = "xyes" ; then
|
|
AC_MSG_WARN([You have enabled the browser plugin. Please note that this is no longer maintained as part of GNU Classpath; development has moved to the IcedTea project.])
|
|
fi
|