summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorMirco Bauer <meebey@meebey.net>2012-10-23 15:04:50 +0200
committerMirco Bauer <meebey@meebey.net>2012-10-23 15:04:50 +0200
commitd03ebd56eb548c324000004075d83ad0fc91a226 (patch)
treee143371c4943fe1e93453b6a8fdf36cf47f2f76d /configure.in
parent5157df7f461892cea1eb345bc4ecf6ec1ddb8e6c (diff)
parentca9c963604ce905f1e98fbb07e038d6f78432f75 (diff)
downloadmono-d03ebd56eb548c324000004075d83ad0fc91a226.tar.gz
Merge tag 'upstream/3.0.0+dfsg' into master-experimental-patches/kfreebsd_support
Upstream version 3.0.0+dfsg Conflicts: configure.in mono/metadata/sgen-gc.h mono/mini/mini-x86.h
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in488
1 files changed, 336 insertions, 152 deletions
diff --git a/configure.in b/configure.in
index 92c3bb78b6..faf7dafa1e 100644
--- a/configure.in
+++ b/configure.in
@@ -1,12 +1,20 @@
-AC_INIT(README)
+# Process this file with autoconf to produce a configure script.
+#AC_PREREQ([2.62])
+
+AC_INIT(mono, [3.0.0],
+ [http://bugzilla.xamarin.com/enter_bug.cgi?classification=Mono])
+
+AC_CONFIG_SRCDIR([README])
+AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
+AC_CANONICAL_HOST
# Gross hack to enable 'make dist' on automake 1.9+tar 1.14.
# The extra brackets are to foil regex-based scans.
m4_ifdef([_A][M_PROG_TAR],[_A][M_SET_OPTION([tar-ustar])])
-AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(mono,2.10.4)
+AM_INIT_AUTOMAKE([1.9 dist-bzip2 tar-ustar no-dist-gzip foreign])
+AM_CONFIG_HEADER([config.h])
AM_MAINTAINER_MODE
API_VER=2.0
@@ -85,13 +93,24 @@ case "$host" in
AC_DEFINE(DISABLE_PORTABILITY,1,[Disable the io-portability layer])
AC_DEFINE(PLATFORM_NO_SYMLINKS,1,[This platform does not support symlinks])
host_win32=yes
+ mono_cv_clang=no
if test "x$cross_compiling" = "xno"; then
target_win32=yes
- if test "x$host" == "x$build"; then
+ if test "x$host" == "x$build" -a "x$host" == "x$target"; then
AC_DEFINE(TARGET_WIN32,1,[Target OS is Win32])
fi
- CC="gcc -mno-cygwin -g"
- CXX="g++ -mno-cygwin -g"
+ #
+ # gcc-3/g++-3 are from the gcc-core/gcc-g++ cygwin packages.
+ # Other gcc packages will not work:
+ # - the gcc-4 packages no longer support -mno-cygwin
+ # - the mingw-gcc packages produce executables which depends on a libgcc<...>
+ # dll, which means we would have to distribute that file too.
+ #
+ if test "x$CC" != "x"; then
+ AC_ERROR(Don't set CC. mono can only be compiled with gcc-3 from the 'gcc-core' package)
+ fi
+ CC="gcc-3.exe -mno-cygwin -g"
+ CXX="g++-3.exe -mno-cygwin -g"
# So libgc configure gets -mno-cygwin
export CC
export CXX
@@ -218,6 +237,7 @@ case "$host" in
# to bypass the underscore linker check, can't work when cross-compiling
mono_cv_uscore=yes
+ mono_cv_clang=no
;;
*-*-linux*)
host_win32=no
@@ -280,6 +300,7 @@ case "$host" in
parallel_mark="Disabled_Currently_Hangs_On_MacOSX"
host_win32=no
platform_darwin=yes
+ target_mach=yes
CPPFLAGS="$CPPFLAGS -no-cpp-precomp -D_THREAD_SAFE -DGC_MACOSX_THREADS -DPLATFORM_MACOSX -DUSE_MMAP -DUSE_MUNMAP"
CPPFLAGS="$CPPFLAGS -DGetCurrentProcess=MonoGetCurrentProcess -DGetCurrentThread=MonoGetCurrentThread -DCreateEvent=MonoCreateEvent"
libmono_cflags="-D_THREAD_SAFE"
@@ -368,12 +389,6 @@ if test "x$CXX" = "xg++"; then
fi
fi
-AC_CHECK_PROG(BISON, bison,yes,no)
-if test "x$BISON" = "xno";
-then
- AC_MSG_ERROR([You need to install bison])
-fi
-
dnl may require a specific autoconf version
dnl AC_PROG_CC_FOR_BUILD
dnl CC_FOR_BUILD not automatically detected
@@ -412,10 +427,16 @@ if test "x$lt_cv_prog_gnu_ld" = "xno"; then
no_version_script=yes
fi
+AM_ICONV()
+
AM_CONDITIONAL(NO_VERSION_SCRIPT, test x$no_version_script = xyes)
-AC_CHECK_HEADERS(sys/filio.h sys/sockio.h netdb.h utime.h sys/utime.h semaphore.h sys/un.h linux/rtc.h sys/syscall.h sys/mkdev.h sys/uio.h sys/param.h)
-AC_CHECK_HEADERS(sys/param.h sys/socket.h sys/ipc.h sys/sem.h sys/utsname.h alloca.h ucontext.h pwd.h sys/select.h netinet/tcp.h netinet/in.h unistd.h sys/types.h link.h asm/sigcontext.h)
+AC_CHECK_HEADERS(sys/filio.h sys/sockio.h netdb.h utime.h sys/utime.h semaphore.h sys/un.h linux/rtc.h sys/syscall.h sys/mkdev.h sys/uio.h sys/param.h libproc.h)
+AC_CHECK_HEADERS(sys/param.h sys/socket.h sys/ipc.h sys/sem.h sys/utsname.h alloca.h ucontext.h pwd.h sys/select.h netinet/tcp.h netinet/in.h unistd.h sys/types.h link.h asm/sigcontext.h sys/inotify.h)
+AC_CHECK_HEADERS([linux/netlink.h linux/rtnetlink.h],
+ [], [], [#include <stddef.h>
+ #include <sys/socket.h>
+ #include <linux/socket.h>])
AC_CHECK_HEADERS(sys/user.h, [], [],
[
@@ -470,21 +491,23 @@ AC_TRY_LINK([#include <math.h>], [
AC_MSG_RESULT(no)
])
+# for Linux statfs support
+AC_CHECK_HEADERS(linux/magic.h)
# not 64 bit clean in cross-compile
AC_CHECK_SIZEOF(void *, 4)
WARN=''
if test x"$GCC" = xyes; then
- WARN='-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wwrite-strings'
+ WARN='-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch-enum'
# 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_TRY_COMPILE([],[
+ return 0;
], [
AC_MSG_RESULT(yes)
], [
@@ -496,8 +519,8 @@ if test x"$GCC" = xyes; then
# Check for the normal version, since gcc ignores unknown -Wno options
CFLAGS="$CFLAGS -Wunused-but-set-variable"
AC_MSG_CHECKING(for -Wno-unused-but-set-variable option to gcc)
- AC_TRY_COMPILE([], [
- void main () { }
+ AC_TRY_COMPILE([],[
+ return 0;
], [
AC_MSG_RESULT(yes)
CFLAGS="$ORIG_CFLAGS -Wno-unused-but-set-variable"
@@ -517,6 +540,22 @@ fi
CFLAGS="$CFLAGS -g $WARN"
CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -g"
+AC_CACHE_CHECK([for clang],
+ mono_cv_clang,[
+ AC_TRY_RUN([
+ int main () {
+ #ifdef __clang__
+ return 0;
+ #else
+ return 1;
+ #endif
+ }
+ ],
+ [mono_cv_clang=yes],
+ [mono_cv_clang=no],
+ [])
+])
+
# Where's the 'mcs' source tree?
if test -d $srcdir/mcs; then
mcsdir=mcs
@@ -567,9 +606,6 @@ if test x$cross_compiling$host_win32 = xnoyes; then
esac
fi
-## Maybe should also disable if mcsdir is invalid. Let's punt the issue for now.
-AM_CONDITIONAL(BUILD_MCS, [test x$cross_compiling = xno && test x$enable_mcs_build != xno])
-
AC_SUBST([mcs_topdir])
AC_SUBST([mcs_topdir_from_srcdir])
@@ -623,28 +659,15 @@ AC_ARG_WITH(crosspkgdir, [ --with-crosspkgdir=/path/to/pkg-config/dir Chan
fi
)
-AC_ARG_WITH([glib],
- [ --with-glib=embedded|system Choose glib API: system or embedded (default to embedded)],
- [], [with_glib=embedded])
-
ac_configure_args="$ac_configure_args \"CPPFLAGS_FOR_EGLIB=$EGLIB_CPPFLAGS\" \"CFLAGS_FOR_EGLIB=$CFLAGS_FOR_EGLIB\""
AC_CONFIG_SUBDIRS(eglib)
-case $with_glib in
-embedded)
- GLIB_CFLAGS='-I$(top_srcdir)/eglib/src -I$(top_builddir)/eglib/src'
- GLIB_LIBS='-L$(top_builddir)/eglib/src -leglib -lm'
- BUILD_GLIB_CFLAGS="$GLIB_CFLAGS"
- BUILD_GLIB_LIBS="$GLIB_LIBS"
- GMODULE_CFLAGS="$GLIB_CFLAGS"
- GMODULE_LIBS="$GLIB_LIBS"
- ;;
-system)
- AC_MSG_ERROR([--with-glib=system is no longer supported as of Mono 2.8])
- ;;
-*)
- AC_MSG_ERROR([Invalid argument to --with-glib.])
-esac
+GLIB_CFLAGS='-I$(top_srcdir)/eglib/src -I$(top_builddir)/eglib/src'
+GLIB_LIBS='-L$(top_builddir)/eglib/src -leglib -lm'
+BUILD_GLIB_CFLAGS="$GLIB_CFLAGS"
+BUILD_GLIB_LIBS="$GLIB_LIBS"
+GMODULE_CFLAGS="$GLIB_CFLAGS"
+GMODULE_LIBS="$GLIB_LIBS"
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)
@@ -688,13 +711,13 @@ AM_CONDITIONAL(SHARED_MONO, test x$with_shared_mono != xno)
AC_ARG_ENABLE(mcs-build, [ --disable-mcs-build disable the build of the mcs directory], try_mcs_build=$enableval, enable_mcs_build=yes)
AC_ARG_WITH(xen_opt, [ --with-xen_opt=yes,no Enable Xen-specific behaviour (defaults to yes)],[],[with_xen_opt=yes])
-if test "x$with_xen_opt" = "xyes"; then
+if test "x$with_xen_opt" = "xyes" -a "x$mono_cv_clang" = "xno"; then
AC_DEFINE(MONO_XEN_OPT, 1, [Xen-specific behaviour])
ORIG_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -mno-tls-direct-seg-refs"
AC_MSG_CHECKING(for -mno-tls-direct-seg-refs option to gcc)
AC_TRY_COMPILE([], [
- void main () { }
+ return 0;
], [
AC_MSG_RESULT(yes)
# Pass it to libgc as well
@@ -849,10 +872,15 @@ if test "x$mono_feature_disable_shared_perfcounters" = "xyes"; then
AC_MSG_NOTICE([Disabled Shared perfcounters.])
fi
+AC_ARG_ENABLE(executables, [ --disable-executables disable the build of the runtime executables], enable_executables=$enableval, enable_executables=yes)
+AM_CONDITIONAL(DISABLE_EXECUTABLES, test x$enable_executables = xno)
+
AC_MSG_CHECKING(for visibility __attribute__)
-AC_TRY_COMPILE([], [
- void __attribute__ ((visibility ("hidden"))) doit (void) {}
- void main () { doit (); }
+AC_COMPILE_IFELSE([
+ AC_LANG_SOURCE([[
+ void __attribute__ ((visibility ("hidden"))) doit (void) {}
+ int main () { doit (); return 0; }
+ ]])
], [
have_visibility_hidden=yes
AC_MSG_RESULT(yes)
@@ -886,7 +914,7 @@ AM_CONDITIONAL(SUPPORT_BOEHM, test x$support_boehm = xyes)
dnl
dnl Boehm GC configuration
dnl
-LIBGC_CFLAGS=
+LIBGC_CPPFLAGS=
LIBGC_LIBS=
LIBGC_STATIC_LIBS=
libgc_dir=
@@ -935,7 +963,7 @@ case "x$gc" in
use_included_gc=yes
libgc_dir=libgc
- LIBGC_CFLAGS='-I$(top_srcdir)/libgc/include'
+ LIBGC_CPPFLAGS='-I$(top_srcdir)/libgc/include'
LIBGC_LIBS='$(top_builddir)/libgc/libmonogc.la'
LIBGC_STATIC_LIBS='$(top_builddir)/libgc/libmonogc-static.la'
@@ -970,7 +998,7 @@ if test "x$large_heap" = "xyes"; then
fi
AM_CONDITIONAL(INCLUDED_LIBGC, test x$use_included_gc = xyes)
-AC_SUBST(LIBGC_CFLAGS)
+AC_SUBST(LIBGC_CPPFLAGS)
AC_SUBST(LIBGC_LIBS)
AC_SUBST(LIBGC_STATIC_LIBS)
AC_SUBST(libgc_dir)
@@ -1084,10 +1112,9 @@ if test x$target_win32 = xno; then
dnl ****************************************************************
AC_MSG_CHECKING(for sched_setaffinity from glibc < 2.3.4)
AC_TRY_COMPILE([#include <sched.h>], [
- int main() {
int mask = 1;
sched_setaffinity(0, &mask);
- }
+ return 0;
], [
# Yes, we have it...
AC_MSG_RESULT(yes)
@@ -1110,20 +1137,14 @@ if test x$target_win32 = xno; then
AC_DEFUN([LARGE_FILES], [
large_CPPFLAGS=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $1"
- AC_TRY_RUN([
+ AC_TRY_COMPILE([
#include <sys/types.h>
-
- #define BIG_OFF_T (((off_t)1<<62)-1+((off_t)1<<62))
-
- int main(void) {
- int big_off_t=((BIG_OFF_T%2147483629==721) &&
- (BIG_OFF_T%2147483647==1));
- if(big_off_t) {
- exit(0);
- } else {
- exit(1);
- }
- }
+ #include <limits.h>
+ ], [
+ /* Lifted this compile time assert method from: http://www.jaggersoft.com/pubs/CVu11_3.html */
+ #define COMPILE_TIME_ASSERT(pred) \
+ switch(0){case 0:case pred:;}
+ COMPILE_TIME_ASSERT(sizeof(off_t) * CHAR_BIT == 64);
], [
AC_MSG_RESULT(ok)
AC_DEFINE(HAVE_LARGE_FILE_SUPPORT, 1, [Have large file support])
@@ -1131,7 +1152,7 @@ if test x$target_win32 = xno; then
large_offt=yes
], [
AC_MSG_RESULT(no)
- ], "")
+ ])
CPPFLAGS=$large_CPPFLAGS
])
@@ -1381,6 +1402,7 @@ if test x$target_win32 = xno; then
AC_CHECK_HEADERS(pthread.h)
AC_CHECK_FUNCS(pthread_mutex_timedlock)
AC_CHECK_FUNCS(pthread_getattr_np pthread_attr_get_np)
+ AC_CHECK_FUNCS(pthread_kill)
AC_MSG_CHECKING(for PTHREAD_MUTEX_RECURSIVE)
AC_TRY_COMPILE([ #include <pthread.h>], [
pthread_mutexattr_t attr;
@@ -1468,12 +1490,11 @@ if test x$target_win32 = xno; then
exit (0);
}
+ volatile char*__ptr = NULL;
static void *
loop (void *ignored)
{
- char *ptr = NULL;
-
- *ptr = 0;
+ *__ptr = 0;
return NULL;
}
@@ -1481,7 +1502,11 @@ if test x$target_win32 = xno; then
child ()
{
struct sigaction sa;
+ #ifdef __APPLE__
+ stack_t sas;
+ #else
struct sigaltstack sas;
+ #endif
pthread_t id;
pthread_attr_t attr;
@@ -1493,6 +1518,11 @@ if test x$target_win32 = xno; then
return;
}
+ /* x86 darwin deliver segfaults using SIGBUS */
+ if (sigaction (SIGBUS, &sa, NULL) == -1) {
+ perror ("sigaction");
+ return;
+ }
sas.ss_sp = malloc (SIGSTKSZ);
sas.ss_size = SIGSTKSZ;
sas.ss_flags = 0;
@@ -1696,7 +1726,44 @@ if test x$target_win32 = xno; then
AC_DEFINE(HAVE_SOCKADDR_IN6_SIN_LEN, 1, [sockaddr_in6 has sin6_len])
], [
AC_MSG_RESULT(no)
- ])
+ ])
+ dnl **********************************
+ dnl *** Check for getifaddrs ***
+ dnl **********************************
+ AC_MSG_CHECKING(for getifaddrs)
+ AC_TRY_LINK([
+ #include <stdio.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <ifaddrs.h>
+ ], [
+ getifaddrs(NULL);
+ ], [
+ # Yes, we have it...
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_GETIFADDRS, 1, [Have getifaddrs])
+ ], [
+ AC_MSG_RESULT(no)
+ ])
+ dnl **********************************
+ dnl *** Check for if_nametoindex ***
+ dnl **********************************
+ AC_MSG_CHECKING(for if_nametoindex)
+ AC_TRY_LINK([
+ #include <stdio.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <net/if.h>
+ ], [
+ if_nametoindex(NULL);
+ ], [
+ # Yes, we have it...
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_IF_NAMETOINDEX, 1, [Have if_nametoindex])
+ ], [
+ AC_MSG_RESULT(no)
+ ])
+
dnl **********************************
dnl *** Checks for MonoPosixHelper ***
dnl **********************************
@@ -1995,6 +2062,8 @@ if test "x$try_shared_handles" != "xyes"; then
AC_SUBST(DISABLE_SHARED_HANDLES)
fi
+AC_ARG_ENABLE(bcl-opt, [ --disable-bcl-opt BCL is compiled with no optimizations (allows accurate BCL debugging)], test_bcl_opt=$enableval, test_bcl_opt=yes)
+
AC_ARG_ENABLE(nunit-tests, [ --enable-nunit-tests Run the nunit tests of the class library on 'make check'])
AM_CONDITIONAL(ENABLE_NUNIT_TESTS, [test x$enable_nunit_tests = xyes])
@@ -2109,16 +2178,20 @@ if test "x$enable_llvm" = "xyes"; then
# from LLVM classes.
LLVM_CXXFLAGS="`$LLVM_CONFIG --cxxflags` -fno-rtti"
LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
- LLVM_LIBS=`$LLVM_CONFIG --libs core bitwriter jit x86codegen`
+ LLVM_LIBS=`$LLVM_CONFIG --libs core bitwriter jit mcjit x86codegen`
LLVM_LIBS="$LLVM_LDFLAGS $LLVM_LIBS -lstdc++"
# Should be something like '2.6' or '2.7svn'
llvm_version=`$LLVM_CONFIG --version`
major_version=`echo $llvm_version | cut -c 1`
minor_version=`echo $llvm_version | cut -c 3`
+ AC_MSG_CHECKING(LLVM version)
+ AC_MSG_RESULT($llvm_version)
if echo $llvm_version | grep -q 'mono'; then
AC_DEFINE(LLVM_MONO_BRANCH, 1, [Whenever we are using the mono branch of LLVM])
LLVM_CXXFLAGS="$LLVM_CXXFLAGS -DLLVM_MONO_BRANCH"
+ else
+ AC_MSG_ERROR([Compiling with stock LLVM is not supported, please use the Mono LLVM repo at https://github.com/mono/llvm, with the GIT branch which matches this version of mono, i.e. 'mono-2-10' for Mono 2.10.])
fi
AC_DEFINE_UNQUOTED(LLVM_MAJOR_VERSION, $major_version, [Major version of LLVM libraries])
@@ -2155,7 +2228,7 @@ X11="libX11.so"
sizeof_register="SIZEOF_VOID_P"
-jit_wanted=false
+jit_wanted=true
interp_wanted=false
sgen_supported=false
case "$host" in
@@ -2166,17 +2239,16 @@ case "$host" in
mips*)
TARGET=MIPS;
arch_target=mips;
+ sgen_supported=true
ACCESS_UNALIGNED="no"
JIT_SUPPORTED=yes
- jit_wanted=true
AC_MSG_CHECKING(for mips n32)
- AC_TRY_COMPILE([], [
- void main () {
+ AC_TRY_COMPILE([],[
#if _MIPS_SIM != _ABIN32
#error Not mips n32
#endif
- }
+ return 0;
],[
AC_MSG_RESULT(yes)
sizeof_register=8
@@ -2188,7 +2260,6 @@ case "$host" in
TARGET=X86;
arch_target=x86;
JIT_SUPPORTED=yes
- jit_wanted=true
case $host_os in
solaris*)
LIBC="libc.so"
@@ -2209,8 +2280,10 @@ case "$host" in
# foo.c:6: warning: visibility attribute not supported in this configuration; ignored
# ld: fatal: relocation error: R_386_GOTOFF: file /var/tmp//ccxYR96k.o: symbol astruct: relocation must bind locally
have_visibility_hidden=no
+ sgen_supported=true
;;
cygwin*)
+ sgen_supported=true
have_visibility_hidden=no
;;
haiku*)
@@ -2220,6 +2293,10 @@ case "$host" in
sgen_supported=true
AOT_SUPPORTED="yes"
;;
+ darwin*)
+ sgen_supported=true
+ AOT_SUPPORTED="yes"
+ ;;
darwin*|openbsd*|freebsd*|kfreebsd-gnu*)
sgen_supported=true
;;
@@ -2229,7 +2306,6 @@ case "$host" in
TARGET=AMD64;
arch_target=amd64;
JIT_SUPPORTED=yes
- jit_wanted=true
case $host_os in
linux*)
sgen_supported=true
@@ -2251,7 +2327,6 @@ case "$host" in
arch_target=ia64
ACCESS_UNALIGNED="no"
JIT_SUPPORTED=yes
- jit_wanted=true
LIBC="libc.so.6.1"
INTL="libc.so.6.1"
AC_CHECK_LIB(unwind, _U_dyn_register, [], [AC_MSG_ERROR(library libunwind not found)])
@@ -2272,7 +2347,6 @@ case "$host" in
LIBC="libc.so"
INTL="libintl.so"
esac
- jit_wanted=true
if test x"$GCC" = xyes; then
# We don't support v8 cpus
CFLAGS="$CFLAGS -Wno-cast-align -mcpu=v9"
@@ -2280,12 +2354,12 @@ case "$host" in
if test x"$AR" = xfalse; then
AC_MSG_ERROR([The required utility 'ar' is not found in your PATH. Usually it can be found in /usr/ccs/bin.])
fi
+ sgen_supported=true
;;
alpha*-*-linux* | alpha*-*-osf*)
TARGET=ALPHA;
ACCESS_UNALIGNED="no"
JIT_SUPPORTED=yes
- jit_wanted=true
arch_target=alpha;
CFLAGS="$CFLAGS -mieee -O0"
case $host_os in
@@ -2312,7 +2386,6 @@ case "$host" in
arch_target=hppa;
ACCESS_UNALIGNED="no"
JIT_SUPPORTED=yes
- jit_wanted=true
;;
macppc-*-openbsd* | powerpc*-*-linux* | powerpc-*-openbsd* | \
powerpc-*-sysv* | powerpc-*-darwin* | powerpc-*-netbsd* | powerpc-*-freebsd* )
@@ -2326,7 +2399,6 @@ case "$host" in
fi
arch_target=ppc;
JIT_SUPPORTED=yes
- jit_wanted=true
case $host_os in
linux*|darwin*)
sgen_supported=true
@@ -2339,7 +2411,6 @@ case "$host" in
ACCESS_UNALIGNED="no"
JIT_SUPPORTED=yes
CPPFLAGS="$CPPFLAGS -DARM_FPU_VFP=1 -D__ARM_EABI__ -DHAVE_ARMV6=1"
- jit_wanted=true
# libgc's gc_locks.h depends on this
NESTED_LIBGC_FLAGS="$NESTED_LIBGC_FLAGS -DHAVE_ARMV6"
sgen_supported=true
@@ -2349,15 +2420,14 @@ case "$host" in
arch_target=arm;
ACCESS_UNALIGNED="no"
JIT_SUPPORTED=yes
- jit_wanted=true
sgen_supported=true
+ AOT_SUPPORTED="yes"
;;
s390-*-linux*)
TARGET=S390;
arch_target=s390;
ACCESS_UNALIGNED="yes"
JIT_SUPPORTED=yes
- jit_wanted=true
sgen_supported=true
# Required CFLAGS for s390[x]. USE_STRING_INLINES is automatic with gcc 4.1
CFLAGS="$CFLAGS -mbackchain -D__USE_STRING_INLINES"
@@ -2367,14 +2437,16 @@ case "$host" in
arch_target=s390x;
ACCESS_UNALIGNED="yes"
JIT_SUPPORTED=yes
- jit_wanted=true
sgen_supported=true
CFLAGS="$CFLAGS -mbackchain -D__USE_STRING_INLINES"
;;
esac
+HOST=$TARGET
+
if test "x$host" != "x$target"; then
AC_DEFINE(MONO_CROSS_COMPILE,1,[The runtime is compiled for cross-compiling mode])
+ enable_mcs_build=no
case "$target" in
powerpc64-ps3-linux-gnu)
TARGET=POWERPC64
@@ -2404,20 +2476,13 @@ if test "x$host" != "x$target"; then
AC_DEFINE(__mono_ilp32__, 1, [64 bit mode with 4 byte longs and pointers])
sizeof_register=8
;;
- armv7l-unknown-linux-gnueabi*)
- # TEGRA
- TARGET=ARM;
- arch_target=arm;
- AC_DEFINE(TARGET_ARM, 1, [...])
- ACCESS_UNALIGNED="no"
- JIT_SUPPORTED=yes
- CPPFLAGS="$CPPFLAGS -DARM_FPU_VFP=1 -D__ARM_EABI__"
- jit_wanted=true
- # Can't use tls, since it depends on the runtime detection of tls offsets
- # in mono-compiler.h
- with_tls=pthread
+ *-*-nacl)
+ TARGET=X86
+ arch_target=x86
+ AC_DEFINE(TARGET_X86, 1, [...])
+ sizeof_register=4
;;
- armv5tel-unknown-linux-gnueabi*)
+ arm*-unknown-linux-gnueabi*)
TARGET=ARM;
arch_target=arm;
AC_DEFINE(TARGET_ARM, 1, [...])
@@ -2428,19 +2493,17 @@ if test "x$host" != "x$target"; then
# Can't use tls, since it depends on the runtime detection of tls offsets
# in mono-compiler.h
with_tls=pthread
- ;;
- armv5-*-linux-androideabi*)
- TARGET=ARM;
- arch_target=arm;
- AC_DEFINE(TARGET_ARM, 1, [...])
- AC_DEFINE(TARGET_ANDROID, 1, [...])
- ACCESS_UNALIGNED="no"
- JIT_SUPPORTED=yes
- CPPFLAGS="$CPPFLAGS -D__ARM_EABI__ -DARM_FPU_NONE=1"
- jit_wanted=true
- # Can't use tls, since it depends on the runtime detection of tls offset
- # in mono-compiler.h
- with_tls=pthread
+ target_mach=no
+ case "$target" in
+ armv7l-unknown-linux-gnueabi*)
+ # TEGRA
+ CPPFLAGS="$CPPFLAGS -DARM_FPU_VFP=1"
+ ;;
+ armv5-*-linux-androideabi*)
+ AC_DEFINE(TARGET_ANDROID, 1, [...])
+ CPPFLAGS="$CPPFLAGS -DARM_FPU_NONE"
+ ;;
+ esac
;;
*)
AC_MSG_ERROR([Cross compiling is not supported for target $target])
@@ -2465,8 +2528,18 @@ POWERPC64)
AC_DEFINE(TARGET_POWERPC, 1, [...])
AC_DEFINE(TARGET_POWERPC64, 1, [...])
;;
+S390x)
+ AC_DEFINE(TARGET_S390X, 1, [...])
+ ;;
+MIPS)
+ AC_DEFINE(TARGET_MIPS, 1, [...])
+ ;;
esac
+if test "x$target_mach" = "xyes"; then
+ AC_DEFINE(TARGET_MACH,1,[The JIT/AOT targets Apple platforms])
+fi
+
if test "x$sizeof_register" = "x4"; then
AC_DEFINE(SIZEOF_REGISTER,4,[size of machine integer registers])
elif test "x$sizeof_register" = "x8"; then
@@ -2513,22 +2586,6 @@ fi
AC_SUBST(SGEN_DEFINES)
AM_CONDITIONAL(SUPPORT_SGEN, test x$buildsgen = xyes)
-AC_ARG_WITH(jit, [ --with-jit=yes,no If you want to build scripts that default to the JIT (defaults to no)],[
- if test x$withval = xyes; then
- jit_wanted=true
- else
- jit_wanted=false
- fi
-])
-
-AC_ARG_WITH(interp, [ --with-interp=yes,no If you want to build scripts that default to the interpreter (defaults to no)],[
- if test x$withval = xyes; then
- interp_wanted=true
- else
- interp_wanted=false
- fi
-])
-
USEJIT=false
if test x$JIT_SUPPORTED = xyes; then
if $jit_wanted; then
@@ -2596,7 +2653,8 @@ case "$host" in
done
if test "x$X11" = "xlibX11.so"; then
- AC_MSG_WARN([Could not find X development libs. Do you have the -devel package installed? WinForms may not work...]);
+ AC_MSG_WARN([Could not find X development libs. Do you have the -devel package installed? Assuming libX11.so.6...]);
+ X11=libX11.so.6
fi
;;
esac
@@ -2612,7 +2670,7 @@ if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86"; then
# undefined reference to `__tls_get_addr'
#
rm -f conftest.c conftest.so conftest
- echo "static __thread int foo; void main () { foo = 5; }" > conftest.c
+ echo "static __thread int foo; int main () { foo = 5; return 0; }" > conftest.c
$CC -fPIC --shared -o conftest.so conftest.c > /dev/null 2>&1
$CC -o conftest conftest.so > /dev/null 2>&1
if test ! -f conftest; then
@@ -2626,7 +2684,7 @@ fi
mono_debugger_supported=no
AC_ARG_ENABLE(mono-debugger, [ --disable-mono-debugger disable support for the mdb debugger], try_mono_debugger=$enableval, try_mono_debugger=yes)
if test "x$try_mono_debugger" = "xyes"; then
- if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86" -o "x$TARGET" = "xALPHA"; then
+ if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86" -o "x$TARGET" = "xALPHA" -o "x$TARGET" = "xS390x"; then
if test x$use_included_gc = xyes; then
case "$host" in
*-*-*linux*)
@@ -2645,6 +2703,9 @@ if test "x$with_moonlight" != "xno"; then
mono_debugger_supported=no
fi
+# mdb support for sgen is broken, disable it until further notice.
+mono_debugger_supported=no
+
AC_MSG_CHECKING(if the Mono Debugger is supported on this platform)
if test "x$mono_debugger_supported" = "xyes"; then
BOEHM_DEFINES="$BOEHM_DEFINES -DMONO_DEBUGGER_SUPPORTED"
@@ -2653,6 +2714,21 @@ fi
AM_CONDITIONAL(MONO_DEBUGGER_SUPPORTED, test x$mono_debugger_supported = xyes)
AC_MSG_RESULT($mono_debugger_supported)
+AC_ARG_ENABLE(icall-symbol-map,[ --enable-icall-symbol-map Generate tables which map icall functions to their C symbols], icall_symbol_map=$enableval, icall_symbol_map=no)
+if test "x$icall_symbol_map" = "xyes"; then
+ AC_DEFINE(ENABLE_ICALL_SYMBOL_MAP, 1, [Icall symbol map enabled])
+fi
+
+AC_ARG_ENABLE(icall-export,[ --enable-icall-export Export icall functions], icall_export=$enableval, icall_export=no)
+if test "x$icall_export" = "xyes"; then
+ AC_DEFINE(ENABLE_ICALL_EXPORT, 1, [Icall export enabled])
+fi
+
+AC_ARG_ENABLE(icall-tables,[ --disable-icall-tables Disable the runtime lookup of icalls], icall_tables=$enableval, icall_tables=yes)
+if test "x$icall_tables" = "xno"; then
+ AC_DEFINE(DISABLE_ICALL_TABLES, 1, [Icall tables disabled])
+fi
+
if test "x$with_tls" = "x__thread"; then
AC_DEFINE(HAVE_KW_THREAD, 1, [Have __thread keyword])
# Pass the information to libgc
@@ -2661,7 +2737,10 @@ if test "x$with_tls" = "x__thread"; then
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])
+ # CLANG doesn't support this yet, and it prints warnings about it
+ if test "x$mono_cv_clang" = "xno"; then
+ AC_DEFINE(HAVE_TLS_MODEL_ATTR, 1, [tld_model available])
+ fi
], [
AC_MSG_RESULT(no)
])
@@ -2673,9 +2752,25 @@ if test ${TARGET} = ARM && test x$cross_compiling = xno && test x$enable_mcs_bui
dnl ******************************************
AC_MSG_CHECKING(which FPU to use)
- AC_TRY_COMPILE([], [
- __asm__ ("ldfd f0, [r0]");
- ], fpu=FPA, fpu=NONE)
+ fpu=NONE
+ if gcc -v 2>&1 | grep -q -- '--with-float=hard'; then
+ fpu=VFP_HARD
+ fi
+
+ if test x$fpu = xNONE; then
+ ORIG_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -mfpu=vfp -mfloat-abi=softfp"
+ AC_TRY_RUN([
+ int main () { __asm__ ("faddd d7, d6, d7"); return 0; }
+ ], fpu=VFP, fpu=NONE)
+ CFLAGS=$ORIG_CFLAGS
+ fi
+
+ if test x$fpu = xNONE; then
+ AC_TRY_COMPILE([], [
+ __asm__ ("ldfd f0, [r0]");
+ ], fpu=FPA, fpu=NONE)
+ fi
AC_MSG_RESULT($fpu)
CPPFLAGS="$CPPFLAGS -DARM_FPU_$fpu=1"
@@ -2712,23 +2807,25 @@ case "x$gc" in
# The problem with this approach, is that during a reconfigure, the main
# configure scripts gets invoked with these arguments, so we use separate
# variables understood by libgc's configure to pass CPPFLAGS and CFLAGS.
- LIBGC_CPPFLAGS="$CPPFLAGS $NESTED_LIBGC_FLAGS"
+ TMP_CPPFLAGS="$CPPFLAGS $NESTED_LIBGC_FLAGS"
if test x$TARGET = xSPARC -o x$TARGET = xSPARC64; then
- LIBGC_CPPFLAGS=`echo $LIBGC_CPPFLAGS | sed -e 's/-D_FILE_OFFSET_BITS=64//g'`
+ TMP_CPPFLAGS=`echo $TMP_CPPFLAGS | sed -e 's/-D_FILE_OFFSET_BITS=64//g'`
fi
# Don't pass -finstrument-for-thread-suspension in,
# if these are instrumented it will be very bad news
# (infinite recursion, undefined parking behavior, etc)
- LIBGC_CPPFLAGS=`echo $LIBGC_CPPFLAGS | sed -e 's/-finstrument-for-thread-suspension//g'`
- ac_configure_args="$ac_configure_args --disable-embed-check --with-libgc-threads=$libgc_threads $libgc_configure_args \"CPPFLAGS_FOR_LIBGC=$LIBGC_CPPFLAGS\" \"CFLAGS_FOR_LIBGC=$CFLAGS_FOR_LIBGC\""
+ TMP_CPPFLAGS=`echo $TMP_CPPFLAGS | sed -e 's/-finstrument-for-thread-suspension//g'`
+ ac_configure_args="$ac_configure_args --disable-embed-check --with-libgc-threads=$libgc_threads $libgc_configure_args \"CPPFLAGS_FOR_LIBGC=$TMP_CPPFLAGS\" \"CFLAGS_FOR_LIBGC=$CFLAGS_FOR_LIBGC\""
AC_CONFIG_SUBDIRS(libgc)
;;
esac
-#AC_ARG_WITH(profile2, [ --with-profile2=yes,no If you want to install the 2.0 FX (defaults to yes)], [], [with_profile2=yes])
-AC_ARG_WITH(profile4, [ --with-profile4=yes,no If you want to install the 4.0 FX (defaults to yes)], [], [with_profile4=yes])
-AC_ARG_WITH(monodroid, [ --with-monodroid=yes,no If you want to build the MonoDroid 2.1 assemblies (defaults to no)], [], [with_monodroid=no])
-AC_ARG_WITH(monotouch, [ --with-monotouch=yes,no If you want to build the MonoTouch 2.1 assemblies (defaults to no)], [], [with_monotouch=no])
+AC_ARG_WITH(profile2, [ --with-profile2=yes,no If you want to install the 2.0/3.5 FX (defaults to yes)], [], [with_profile2=yes])
+AC_ARG_WITH(profile4, [ --with-profile4=yes,no If you want to install the 4.0 FX (defaults to yes)], [], [with_profile4=yes])
+AC_ARG_WITH(profile4_5,[ --with-profile4_5=yes,no If you want to install the 4.5 FX (defaults to yes)], [], [with_profile4_5=yes])
+AC_ARG_WITH(monodroid, [ --with-monodroid=yes,no If you want to build the MonoDroid assemblies (defaults to no)], [], [with_monodroid=no])
+AC_ARG_WITH(monotouch, [ --with-monotouch=yes,no If you want to build the MonoTouch assemblies (defaults to no)], [], [with_monotouch=no])
+AC_ARG_WITH(mobile, [ --with-mobile=yes,no If you want to build the Mobile assemblies (defaults to no)], [], [with_mobile=no])
OPROFILE=no
AC_ARG_WITH(oprofile,[ --with-oprofile=no,<oprofile install dir> Enable oprofile support (defaults to no)],[
@@ -2781,6 +2878,23 @@ AC_CHECK_HEADER([malloc.h],
[AC_DEFINE([HAVE_USR_INCLUDE_MALLOC_H], [1],
[Define to 1 if you have /usr/include/malloc.h.])],,)
+if test x"$GCC" = xyes; then
+ # Implicit function declarations are not 64 bit safe
+ # Do this late, since this causes lots of configure tests to fail
+ CFLAGS="$CFLAGS -Werror-implicit-function-declaration"
+ # jay has a lot of implicit declarations
+ JAY_CFLAGS="-Wno-implicit-function-declaration"
+fi
+
+# When --disable-shared is used, libtool transforms libmono-2.0.la into libmono-2.0.so
+# instead of libmono-static.a
+if test "x$enable_shared" = "xno"; then
+ LIBMONO_LA=libmini-static.la
+else
+ LIBMONO_LA=libmono-$API_VER.la
+fi
+AC_SUBST(LIBMONO_LA)
+
dnl
dnl Consistency settings
dnl
@@ -2795,6 +2909,9 @@ else
fi
AC_SUBST(docs_dir)
+## Maybe should also disable if mcsdir is invalid. Let's punt the issue for now.
+AM_CONDITIONAL(BUILD_MCS, [test x$cross_compiling = xno && test x$enable_mcs_build != xno])
+
AM_CONDITIONAL(HAVE_OPROFILE, test x$OPROFILE = xyes)
AC_SUBST(OPROFILE_CFLAGS)
AC_SUBST(OPROFILE_LIBS)
@@ -2806,9 +2923,12 @@ AM_CONDITIONAL(ONLY_MOONLIGHT, [test "x$with_moonlight" = "xonly"])
AM_CONDITIONAL(MOONLIGHT_BOEHM, [test "x$with_moon_gc" = "xboehm"])
AM_CONDITIONAL(MOONLIGHT_SGEN, [test "x$with_moon_gc" = "xsgen"])
+AM_CONDITIONAL(INSTALL_2_0, [test "x$with_profile2" = xyes])
AM_CONDITIONAL(INSTALL_4_0, [test "x$with_profile4" = xyes])
+AM_CONDITIONAL(INSTALL_4_5, [test "x$with_profile4_5" = xyes])
AM_CONDITIONAL(INSTALL_MONODROID, [test "x$with_monodroid" = xyes])
AM_CONDITIONAL(INSTALL_MONOTOUCH, [test "x$with_monotouch" = xyes])
+AM_CONDITIONAL(INSTALL_MOBILE, [test "x$with_mobile" = xyes])
AM_CONDITIONAL(MIPS_GCC, test ${TARGET}${ac_cv_prog_gcc} = MIPSyes)
AM_CONDITIONAL(MIPS_SGI, test ${TARGET}${ac_cv_prog_gcc} = MIPSno)
@@ -2826,6 +2946,9 @@ AM_CONDITIONAL(ARM, test x$TARGET = xARM)
AM_CONDITIONAL(S390, test x$TARGET = xS390)
AM_CONDITIONAL(S390x, test x$TARGET = xS390x)
AM_CONDITIONAL(HPPA, test x$TARGET = xHPPA)
+AM_CONDITIONAL(HOST_X86, test x$HOST = xX86)
+AM_CONDITIONAL(HOST_AMD64, test x$HOST = xAMD64)
+AM_CONDITIONAL(HOST_ARM, test x$HOST = xARM)
AM_CONDITIONAL(JIT_SUPPORTED, test x$JIT_SUPPORTED = xyes)
AM_CONDITIONAL(INTERP_SUPPORTED, test x$interp_wanted = xtrue)
@@ -2967,9 +3090,43 @@ AC_CONFIG_COMMANDS([runtime/etc/mono/4.0/web.config],
cd $depth
],[LN_S='$LN_S'])
+AC_CONFIG_COMMANDS([runtime/etc/mono/4.5/machine.config],
+[ depth=../../../..
+ case $srcdir in
+ [[\\/$]]* | ?:[[\\/]]* ) reldir=$srcdir ;;
+ .) reldir=$depth ;;
+ *) reldir=$depth/$srcdir ;;
+ esac
+ $ac_aux_dir/install-sh -d runtime/etc/mono/4.5
+ cd runtime/etc/mono/4.5
+ rm -f machine.config
+ $LN_S $reldir/data/net_4_5/machine.config machine.config
+ cd $depth
+],[LN_S='$LN_S'])
+
+AC_CONFIG_COMMANDS([runtime/etc/mono/4.5/web.config],
+[ depth=../../../..
+ case $srcdir in
+ [[\\/$]]* | ?:[[\\/]]* ) reldir=$srcdir ;;
+ .) reldir=$depth ;;
+ *) reldir=$depth/$srcdir ;;
+ esac
+ $ac_aux_dir/install-sh -d runtime/etc/mono/4.5
+ cd runtime/etc/mono/4.5
+ rm -f web.config
+ $LN_S $reldir/data/net_4_5/web.config web.config
+ cd $depth
+],[LN_S='$LN_S'])
+
if test x$enable_quiet_build = xyes; then
- AC_CONFIG_COMMANDS([quiet], [for i in `find mono libgc support -name Makefile.in | sed -e 's/Makefile.in/Makefile/g'`; do if test -f $i; then $srcdir/scripts/patch-quiet.sh $i; fi; done], [shell=$SHELL])
- AC_CONFIG_COMMANDS([quiet-libtool], [sed -e 's/$echo "copying selected/$show "copying selected/g' < libtool > libtool.tmp && mv libtool.tmp libtool && chmod a+x libtool; sed -e 's/$ECHO "copying selected/# "copying selected/g' < libtool > libtool.tmp && mv libtool.tmp libtool && chmod a+x libtool])
+ AC_CONFIG_COMMANDS([quiet],
+[ for i in `find mono libgc support -name Makefile`; do
+ if [ grep -q 'generated by automake' $i ]; then
+ $srcdir/scripts/patch-quiet.sh $i;
+ fi;
+ done
+], [shell=$SHELL])
+ AC_CONFIG_COMMANDS([quiet-libtool], [sed -e 's/echo "copying selected/# "copying selected/g' < libtool > libtool.tmp && mv libtool.tmp libtool && chmod a+x libtool; sed -e 's/$ECHO "copying selected/# "copying selected/g' < libtool > libtool.tmp && mv libtool.tmp libtool && chmod a+x libtool])
fi
AC_OUTPUT([
@@ -3010,6 +3167,7 @@ mono/monograph/Makefile
mono/io-layer/Makefile
mono/mini/Makefile
mono/profiler/Makefile
+m4/Makefile
ikvm-native/Makefile
scripts/Makefile
man/Makefile
@@ -3017,6 +3175,7 @@ docs/Makefile
data/Makefile
data/net_2_0/Makefile
data/net_4_0/Makefile
+data/net_4_5/Makefile
data/net_2_0/Browsers/Makefile
data/mint.pc
data/mono-2.pc
@@ -3036,6 +3195,8 @@ data/system.web.extensions_1.0.pc
data/system.web.extensions.design_1.0.pc
data/system.web.mvc.pc
data/system.web.mvc2.pc
+data/system.web.mvc3.pc
+data/aspnetwebstack.pc
samples/Makefile
support/Makefile
data/config
@@ -3047,6 +3208,9 @@ msvc/Makefile
po/Makefile
])
+# Update all submodules recursively to ensure everything is checked out
+$srcdir/scripts/update_submodules
+
if test x$host_win32 = xyes; then
# Get rid of 'cyg' prefixes in library names
sed -e "s/\/cyg\//\/\//" libtool > libtool.new; mv libtool.new libtool; chmod 755 libtool
@@ -3077,10 +3241,10 @@ fi
echo "exec_prefix=$exec_prefix" >> $mcs_topdir/build/config.make
echo "sysconfdir=$sysconfdir" >> $mcs_topdir/build/config.make
echo 'mono_libdir=${exec_prefix}/lib' >> $mcs_topdir/build/config.make
- echo 'MCS_FLAGS = $(PLATFORM_DEBUG_FLAGS)' >> $mcs_topdir/build/config.make
echo 'IL_FLAGS = /debug' >> $mcs_topdir/build/config.make
echo "RUNTIME = $mono_build_root/runtime/mono-wrapper" >> $mcs_topdir/build/config.make
echo "ILDISASM = $mono_build_root/runtime/monodis-wrapper" >> $mcs_topdir/build/config.make
+ echo "JAY_CFLAGS = $JAY_CFLAGS" >> $mcs_topdir/build/config.make
case $INSTALL in
[[\\/$]]* | ?:[[\\/]]* ) mcs_INSTALL=$INSTALL ;;
@@ -3113,7 +3277,7 @@ fi
enable_system_aot=no
fi
- if test x$host_win32 = xno -a x$platform_darwin != xyes -a x$enable_system_aot = xyes; then
+ if test x$host_win32 = xno -a x$enable_system_aot = xyes; then
echo "ENABLE_AOT = 1" >> $mcs_topdir/build/config.make
fi
@@ -3125,6 +3289,26 @@ fi
echo "MOONLIGHT = 1" >> $srcdir/$mcsdir/build/config.make
fi
+ default_profile=net_2_0
+ if test -z "$INSTALL_4_0_TRUE"; then :
+ default_profile=net_4_0
+ fi
+ if test -z "$INSTALL_MONODROID_TRUE"; then :
+ default_profile=monodroid
+ fi
+ if test -z "$INSTALL_MONOTOUCH_TRUE"; then :
+ default_profile=monotouch
+ fi
+ if test -z "$INSTALL_4_5_TRUE"; then :
+ default_profile=net_4_5
+ fi
+
+ echo "DEFAULT_PROFILE = $default_profile" >> $srcdir/$mcsdir/build/config.make
+
+ if test "x$test_bcl_opt" = "xyes"; then
+ echo "BCL_OPTIMIZE = 1" >> $srcdir/$mcsdir/build/config.make
+ fi
+
fi
# if we have an olive folder, override the default settings
@@ -3149,24 +3333,24 @@ libgdiplus_msg=${libgdiplus_loc:-assumed to be installed}
echo "
mcs source: $mcsdir
- olive source: $olive_topdir
Engine:
GC: $gc_msg
- GLIB: $with_glib
TLS: $with_tls
SIGALTSTACK: $with_sigaltstack
Engine: $jit_status
oprofile: $OPROFILE
BigArrays: $enable_big_arrays
DTrace: $enable_dtrace
- Parallel Mark: $enable_parallel_mark
LLVM Back End: $enable_llvm (dynamically loaded: $enable_loadedllvm)
- Libraries:
- Moon Profile: $with_moonlight ($with_moon_gc)
+ Libraries:
+ .NET 2.0/3.5: $with_profile2
+ .NET 4.0: $with_profile4
+ .NET 4.5: $with_profile4_5
MonoDroid: $with_monodroid
MonoTouch: $with_monotouch
+ Mobile: $with_mobile
JNI support: $jdk_headers_found
libgdiplus: $libgdiplus_msg
zlib: $zlib_msg