m4_ifdef([_A][M_PROG_TAR],[_A][M_SET_OPTION([tar-ustar])])
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(mono,1.1.3)
+AM_INIT_AUTOMAKE(mono,1.1.7)
AM_MAINTAINER_MODE
AC_PROG_LN_S
export CC
# latest libgc already defines GC_WIN32_THREADS
# CPPFLAGS="$CPPFLAGS -DGC_WIN32_THREADS -DWIN32_THREADS"
- CPPFLAGS="$CPPFLAGS -DWIN32_THREADS"
+ CPPFLAGS="$CPPFLAGS -DWIN32_THREADS -DFD_SETSIZE=1024"
libdl=
libgc_threads=win32
gc_default=included
# for mono/metadata/debug-symfile.c
AC_CHECK_HEADERS(elf.h)
+# for support
+AC_CHECK_HEADERS(poll.h)
+AC_CHECK_HEADERS(sys/poll.h)
+AC_CHECK_HEADERS(sys/wait.h)
+AC_CHECK_HEADERS(grp.h)
+AC_CHECK_HEADERS(syslog.h)
+
# for mono/dis
AC_CHECK_HEADERS(wchar.h)
AC_CHECK_HEADERS(ieeefp.h)
AC_MSG_CHECKING(for isinf)
-AC_TRY_COMPILE([#include <math.h>], [
+AC_TRY_LINK([#include <math.h>], [
int f = isinf (1);
], [
AC_MSG_RESULT(yes)
WARN='-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wcast-align -Wwrite-strings'
# The runtime code does not respect ANSI C strict aliasing rules
CFLAGS="$CFLAGS -fno-strict-aliasing"
+
+ ORIG_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -Wdeclaration-after-statement"
+ AC_MSG_CHECKING(for -Wdeclaration-after-statement option to gcc)
+ AC_TRY_COMPILE([], [
+ void main () { }
+ ], [
+ AC_MSG_RESULT(yes)
+ ], [
+ AC_MSG_RESULT(no)
+ CFLAGS=$ORIG_CFLAGS
+ ])
else
# The Sun Forte compiler complains about inline functions that access static variables
# so disable all inlining.
AC_SUBST([mcs_topdir])
AC_SUBST([mcs_topdir_from_srcdir])
+AC_ARG_WITH([libgdiplus],
+ [ --with-libgdiplus=installed|sibling|<path> Override the libgdiplus used for System.Drawing tests (defaults to NO)],
+ [], [with_libgdiplus=installed])
+
+case $with_libgdiplus in
+no|installed) libgdiplus_loc= ;;
+yes|sibling) libgdiplus_loc=`cd ../libgdiplus && pwd`/src/libgdiplus.la ;;
+/*) libgdiplus_loc=$with_libgdiplus ;;
+*) libgdiplus_loc=`pwd`/$with_libgdiplus ;;
+esac
+AC_SUBST([libgdiplus_loc])
+
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
if test "x$PKG_CONFIG" = "xno"; then
AC_MSG_ERROR([You need to install pkg-config])
AC_SUBST(BUILD_GLIB_CFLAGS)
AC_SUBST(BUILD_GLIB_LIBS)
-PKG_PATH=
+pkg_config_path=
AC_ARG_WITH(crosspkgdir, [ --with-crosspkgdir=/path/to/pkg-config/dir],
if test x$with_crosspkgdir = "x"; then
if test -s $PKG_CONFIG_PATH; then
- PKG_PATH=$PKG_CONFIG_PATH
+ pkg_config_path=$PKG_CONFIG_PATH
fi
else
- PKG_PATH=$with_crosspkgdir
- PKG_CONFIG_PATH=$PKG_PATH
+ pkg_config_path=$with_crosspkgdir
+ PKG_CONFIG_PATH=$pkg_config_path
export PKG_CONFIG_PATH
fi
)
;;
esac
+AC_ARG_WITH(large-heap, [ --with-large-heap=yes,no Enable support for GC heaps larger than 3GB], [large_heap=$withval], [large_heap=no])
+if test "x$large_heap" = "xyes"; then
+ echo "FOO"
+ CPPFLAGS="$CPPFLAGS -DLARGE_CONFIG"
+fi
# tell libgc/configure about what we want
ac_configure_args="$ac_configure_args --disable-embed-check --with-libgc-threads=$libgc_threads"
ikvm_native_dir=
if test x$with_ikvm_native = xyes; then
ikvm_native_dir=ikvm-native
+ jdk_headers_found="IKVM Native"
fi
AC_SUBST(ikvm_native_dir)
sa.sa_sigaction = sigsegv_signal_handler;
sigemptyset (&sa.sa_mask);
- sa.sa_flags = SA_SIGINFO | SA_STACK;
+ sa.sa_flags = SA_SIGINFO | SA_ONSTACK;
if (sigaction (SIGSEGV, &sa, NULL) == -1) {
- perror ("lala");
+ perror ("sigaction");
return;
}
sas.ss_sp = malloc (SIGSTKSZ);
sas.ss_size = SIGSTKSZ;
- sas.ss_flags = SS_ONSTACK;
+ sas.ss_flags = 0;
if (sigaltstack (&sas, NULL) == -1) {
- perror ("lala");
+ perror ("sigaltstack");
return;
}
pthread_attr_init (&attr);
if (pthread_create(&id, &attr, loop, &attr) != 0) {
- printf ("failed\n");
+ printf ("pthread_create\n");
return;
}
dnl *********************************
dnl *** Check for Console 2.0 I/O ***
dnl *********************************
- AC_CHECK_HEADERS([term.h termios.h])
+ AC_CHECK_HEADERS([curses.h])
+ AC_CHECK_HEADERS([term.h], [], [],
+ [#if HAVE_CURSES_H
+ #include <curses.h>
+ #endif
+ ])
+ AC_CHECK_HEADERS([termios.h])
else
jdk_headers_found=no
AC_CHECK_LIB(ws2_32, main, LIBS="$LIBS -lws2_32", AC_ERROR(bad mingw install?))
#
ICU_CFLAGS=""
ICU_LIBS=""
-enable_icu="no; default"
+enable_glob="normal; default"
probe_icu=false
AC_ARG_WITH(icu, [ --with-icu=yes/no],
if $probe_icu; then
AC_PATH_PROG(ICU_CONFIG, icu-config, no)
if test "x$ICU_CONFIG" = "xno" -o ! -x "$ICU_CONFIG"; then
- AC_MSG_WARN([Only invariant locale available; install ICU for I18N support])
- enable_icu="no, if you want full i18n support download it from: http://oss.software.ibm.com/icu/index.html"
+ enable_glob="ICU not found, using non-ICU globalization code."
else
- enable_icu="yes. Version: `$ICU_CONFIG --version`"
+ enable_glob="ICU, unsupported. Version: `$ICU_CONFIG --version`"
AC_DEFINE(HAVE_ICU)
ICU_CFLAGS=`$ICU_CONFIG --cppflags`
ICU_LIBS=`$ICU_CONFIG --ldflags`
interp_wanted=true
arch_target=alpha;
;;
+ *-*-mingw*|*-*-cygwin*)
+ INTL="intl"
+ ;;
# ia64-*-linux* | ia64-*-hpux*)
# TARGET=IA64;
# arch_target=ia64;
# Pass the information to libgc
CPPFLAGS="$CPPFLAGS -DUSE_COMPILER_TLS"
export CPPFLAGS
+ AC_MSG_CHECKING(if the tls_model attribute is supported)
+ AC_TRY_COMPILE([static __thread int foo __attribute__((tls_model("initial-exec")));], [
+ ], [
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_TLS_MODEL_ATTR, 1, [tld_model available])
+ ], [
+ AC_MSG_RESULT(no)
+ ])
fi
if test ${TARGET} = ARM; then
CPPFLAGS="$CPPFLAGS -DNO_UNALIGNED_ACCESS"
fi
-PREVIEW=no
+PREVIEW=yes
AC_ARG_WITH(preview, [ --with-preview=yes,no If you want to install the 2.0 FX preview],[
if test x$with_preview = xyes; then
PREVIEW=yes
NONE | '${prefix}') exec_prefix=$prefix ;;
esac
- echo "prefix=$exec_prefix" > $srcdir/$mcsdir/build/config.make
+ echo "prefix=$prefix" > $srcdir/$mcsdir/build/config.make
+ echo "exec_prefix=$exec_prefix" >> $srcdir/$mcsdir/build/config.make
+ echo "mono_libdir=$exec_prefix/lib" >> $srcdir/$mcsdir/build/config.make
echo 'MCS_FLAGS = $(PLATFORM_DEBUG_FLAGS)' >> $srcdir/$mcsdir/build/config.make
)
+libgdiplus_msg=${libgdiplus_loc:-assumed to be installed}
+
echo "
mcs source: $mcs_topdir
GC: $gc
- ICU: $enable_icu
+ Globalization: $enable_glob
TLS: $with_tls
SIGALTSTACK: $with_sigaltstack
Engine: $jit_status
2.0 Alpha: $PREVIEW
JNI support: $jdk_headers_found
+ libgdiplus: $libgdiplus_msg
$disabled
"