Merge pull request #555 from jack-pappas/sigaltstack-patch
[mono.git] / configure.in
index f7dea28759822ec810c32b01c678599d237ce505..5a4b2e19cc8ce66f022e976942eabdb9fe9db188 100644 (file)
@@ -1,7 +1,7 @@
 # Process this file with autoconf to produce a configure script.
 #AC_PREREQ([2.62])
 
-AC_INIT(mono, [3.0.7],
+AC_INIT(mono, [3.0.10],
         [http://bugzilla.xamarin.com/enter_bug.cgi?classification=Mono])
 
 AC_CONFIG_SRCDIR([README])
@@ -54,7 +54,7 @@ CPPFLAGS_FOR_EGLIB=$CPPFLAGS
 CFLAGS_FOR_EGLIB=$CFLAGS
 
 #
-# These are the flags that need to be stored in the mono.pc file for
+# These are the flags that need to be stored in the mono.pc file for 
 # compiling code that will embed Mono
 #
 libmono_cflags=""
@@ -171,8 +171,6 @@ case "$host" in
                AC_DEFINE(PTHREAD_POINTER_ID, 1, [pthread is a pointer])
                libdl=
                libgc_threads=pthreads
-               # This doesn't seem to work as of 7.0 on amd64
-               with_sigaltstack=no
                use_sigposix=yes
                ;;
        *-*-*openbsd*)
@@ -325,7 +323,7 @@ case "$host" in
                                ;;
                        arm*-darwin*)
                                has_dtrace=no
-                               ;;
+                               ;;                      
                esac
                ;;
        *-*-haiku*)
@@ -613,7 +611,7 @@ if test -d $srcdir/$olivedir; then
 olive_topdir='$(top_srcdir)/'$olivedir
 fi
 
-# gettext: prepare the translation directories.
+# gettext: prepare the translation directories. 
 # we do not configure the full gettext, as we consume it dynamically from C#
 AM_PO_SUBDIRS
 
@@ -625,8 +623,8 @@ if test "x$USE_NLS" = "xyes"; then
    fi
 fi
 
-AC_ARG_WITH([libgdiplus],
-       [  --with-libgdiplus=installed|sibling|<path>   Override the libgdiplus used for System.Drawing tests (defaults to installed)],
+AC_ARG_WITH([libgdiplus], 
+       [  --with-libgdiplus=installed|sibling|<path>   Override the libgdiplus used for System.Drawing tests (defaults to installed)], 
        [], [with_libgdiplus=installed])
 
 case $with_libgdiplus in
@@ -661,7 +659,7 @@ 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)
 AC_SUBST(GMODULE_CFLAGS)
@@ -741,9 +739,9 @@ AC_ARG_ENABLE(system-aot, [  --enable-system-aot  Enable the Ahead-Of-Time compi
 DISABLED_FEATURES=none
 
 AC_ARG_ENABLE(minimal, [  --enable-minimal=LIST      drop support for LIST subsystems.
-     LIST is a comma-separated list from: aot, profiler, decimal, pinvoke, debug, appdomains, verifier,
-     reflection_emit, reflection_emit_save, large_code, logging, com, ssa, generics, attach, jit, simd, soft_debug, perfcounters, normalization, assembly_remapping, shared_perfcounters,
-        sgen_remset, sgen_marksweep_par, sgen_marksweep_fixed, sgen_marksweep_fixed_par, sgen_copying.],
+     LIST is a comma-separated list from: aot, profiler, decimal, pinvoke, debug, appdomains, verifier, 
+     reflection_emit, reflection_emit_save, large_code, logging, com, ssa, generics, attach, jit, simd, soft_debug, perfcounters, normalization, assembly_remapping, shared_perfcounters, remoting,
+        security, sgen_remset, sgen_marksweep_par, sgen_marksweep_fixed, sgen_marksweep_fixed_par, sgen_copying.],
 [
        for feature in `echo "$enable_minimal" | sed -e "s/,/ /g"`; do
                eval "mono_feature_disable_$feature='yes'"
@@ -882,6 +880,16 @@ if test "x$mono_feature_disable_appdomains" = "xyes"; then
        AC_MSG_NOTICE([Disabled support for multiple appdomains.])
 fi
 
+if test "x$mono_feature_disable_remoting" = "xyes"; then
+       AC_DEFINE(DISABLE_REMOTING, 1, [Disable remoting support (This disables type proxies and make com non-functional)])
+       AC_MSG_NOTICE([Disabled remoting])
+fi
+
+if test "x$mono_feature_disable_security" = "xyes"; then
+       AC_DEFINE(DISABLE_SECURITY, 1, [Disable CAS/CoreCLR security])
+       AC_MSG_NOTICE([Disabled CAS/CoreCLR security manager (used e.g. for Moonlight)])
+fi
+
 if test "x$mono_feature_disable_sgen_remset" = "xyes"; then
        AC_DEFINE(DISABLE_SGEN_REMSET, 1, [Disable wbarrier=remset support in SGEN.])
        AC_MSG_NOTICE([Disabled wbarrier=remset support in SGEN.])
@@ -1069,6 +1077,8 @@ AC_TRY_COMPILE([
        AC_DEFINE_UNQUOTED(MONO_ZERO_LEN_ARRAY, 1, [Length of zero length arrays])
 ])
 
+AC_CHECK_HEADERS(nacl/nacl_dyncode.h)
+
 if test x$target_win32 = xno; then
 
        dnl hires monotonic clock support
@@ -1156,7 +1166,7 @@ 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 mask = 1;
+            int mask = 1; 
             sched_setaffinity(0, &mask);
                        return 0;
        ], [
@@ -1173,7 +1183,7 @@ if test x$target_win32 = xno; then
        dnl *** Check for large file support                               ***
        dnl *** (If we were using autoconf 2.50 we'd use AC_SYS_LARGEFILE) ***
        dnl ******************************************************************
-
+       
        # Check that off_t can represent 2**63 - 1 correctly, working around
        # potential compiler bugs.  Defines LARGE_FILE_SUPPORT, adds $1 to
        # CPPFLAGS and sets $large_offt to yes if the test succeeds
@@ -1209,7 +1219,7 @@ if test x$target_win32 = xno; then
        if test $large_offt = no; then
                AC_MSG_WARN([No 64 bit file size support available])
        fi
-
+       
        dnl *****************************
        dnl *** Checks for libsocket  ***
        dnl *****************************
@@ -1439,7 +1449,7 @@ if test x$target_win32 = xno; then
                        AC_MSG_RESULT(no)
                ])
        ])
-
+       
        dnl **********************************
        dnl *** Check for gethostbyname2_r ***
        dnl **********************************
@@ -1709,9 +1719,9 @@ if test x$target_win32 = xno; then
        # 'Real Time' functions on Solaris
        # posix4 on Solaris 2.6
        # pthread (first!) on Linux
-       AC_SEARCH_LIBS(sem_init, pthread rt posix4)
+       AC_SEARCH_LIBS(sem_init, pthread rt posix4) 
 
-       AC_SEARCH_LIBS(shm_open, pthread rt posix4)
+       AC_SEARCH_LIBS(shm_open, pthread rt posix4) 
        AC_CHECK_FUNCS(shm_open)
 
        dnl ********************************
@@ -1746,14 +1756,14 @@ if test x$target_win32 = xno; then
        AC_SEARCH_LIBS(sqrtf, m)
        if test "x$has_broken_apple_cpp" != "xyes"; then
                AC_CHECK_FUNCS(finite, , AC_MSG_CHECKING(for finite in math.h)
-                       AC_TRY_LINK([#include <math.h>],
-                       [ finite(0.0); ],
+                       AC_TRY_LINK([#include <math.h>], 
+                       [ finite(0.0); ], 
                        AC_DEFINE(HAVE_FINITE, 1, [Have finite in -lm]) AC_MSG_RESULT(yes),
                        AC_MSG_RESULT(no)))
        fi
         AC_CHECK_FUNCS(isfinite, , AC_MSG_CHECKING(for isfinite in math.h)
-                AC_TRY_LINK([#include <math.h>],
-                [ isfinite(0.0); ],
+                AC_TRY_LINK([#include <math.h>], 
+                [ isfinite(0.0); ], 
                 AC_DEFINE(HAVE_ISFINITE, 1, [Have isfinite]) AC_MSG_RESULT(yes),
                 AC_MSG_RESULT(no)))
 
@@ -1774,29 +1784,31 @@ if test x$target_win32 = xno; then
                AC_DEFINE(HAVE_SIGNBIT, 1, [Have signbit])
        ], [
                AC_MSG_RESULT(no)
-       ])
+       ]) 
 
        dnl **********************************
        dnl *** epoll                      ***
        dnl **********************************
-       AC_CHECK_HEADERS(sys/epoll.h)
-       haveepoll=no
-       AC_CHECK_FUNCS(epoll_ctl, [haveepoll=yes], )
-       if test "x$haveepoll" = "xyes" -a "x$ac_cv_header_sys_epoll_h" = "xyes" ; then
-               AC_DEFINE(HAVE_EPOLL, 1, [epoll supported])
+       if test "x$ac_cv_header_nacl_nacl_dyncode_h" = "xno"; then
+               AC_CHECK_HEADERS(sys/epoll.h)
+               haveepoll=no
+               AC_CHECK_FUNCS(epoll_ctl, [haveepoll=yes], )
+               if test "x$haveepoll" = "xyes" -a "x$ac_cv_header_sys_epoll_h" = "xyes"; then
+                       AC_DEFINE(HAVE_EPOLL, 1, [epoll supported])
+               fi
        fi
 
        havekqueue=no
         AC_CHECK_FUNCS(kqueue, , AC_MSG_CHECKING(for kqueue in sys/event.h)
-                AC_TRY_LINK([#include <sys/event.h>],
+                AC_TRY_LINK([#include <sys/event.h>], 
                 [ kqueue(); ],[havekqueue=yes],[]))
 
        dnl **************************************
        dnl * Darwin has a race that prevents us from using reliably:
        dnl * http://lists.apple.com/archives/darwin-dev/2011/Jun/msg00016.html
-       dnl * Since kqueue is mostly used for scaling large web servers,
+       dnl * Since kqueue is mostly used for scaling large web servers, 
        dnl * and very few folks run Mono on large web servers on OSX, falling
-       dnl * back
+       dnl * back 
        dnl **************************************
        if test x$havekqueue = xyes; then
                if x$platform_darwin = xno; then
@@ -1849,7 +1861,7 @@ if test x$target_win32 = xno; then
                        AC_DEFINE(HAVE_SOCKADDR_IN_SIN_LEN, 1, [sockaddr_in has sin_len])
                ], [
                        AC_MSG_RESULT(no)
-               ])
+               ])      
        dnl **********************************
        dnl ***    Checks for sin6_len     ***
        dnl **********************************
@@ -1901,7 +1913,7 @@ if test x$target_win32 = xno; then
        ], [
                AC_MSG_RESULT(no)
        ])
-
+                       
        dnl **********************************
        dnl *** Checks for MonoPosixHelper ***
        dnl **********************************
@@ -1954,8 +1966,11 @@ if test x$target_win32 = xno; then
        AC_CHECK_FUNCS(lockf)
        AC_CHECK_FUNCS(swab)
        AC_CHECK_FUNCS(setusershell endusershell)
+       AC_CHECK_FUNCS(futimens utimensat)
+       AC_CHECK_FUNCS(fstatat mknodat readlinkat)
+       AC_CHECK_FUNCS(readv writev preadv pwritev)
        AC_CHECK_SIZEOF(size_t)
-       AC_CHECK_TYPES([blksize_t], [AC_DEFINE(HAVE_BLKSIZE_T)], ,
+       AC_CHECK_TYPES([blksize_t], [AC_DEFINE(HAVE_BLKSIZE_T)], , 
                [#include <sys/types.h>
                 #include <sys/stat.h>
                 #include <unistd.h>])
@@ -1968,6 +1983,8 @@ if test x$target_win32 = xno; then
        AC_CHECK_TYPES([struct flock], [AC_DEFINE(HAVE_STRUCT_FLOCK)], ,
                [#include <unistd.h>
                 #include <fcntl.h>])
+       AC_CHECK_TYPES([struct iovec], [AC_DEFINE(HAVE_STRUCT_IOVEC)], ,
+               [#include <sys/uio.h>])
        AC_CHECK_TYPES([struct pollfd], [AC_DEFINE(HAVE_STRUCT_POLLFD)], ,
                [#include <sys/poll.h>])
        AC_CHECK_TYPES([struct stat], [AC_DEFINE(HAVE_STRUCT_STAT)], ,
@@ -1986,17 +2003,22 @@ if test x$target_win32 = xno; then
                [#include <sys/types.h>
                 #include <utime.h>])
        AC_CHECK_MEMBERS(
-               [struct dirent.d_off, struct dirent.d_reclen, struct dirent.d_type],,,
+               [struct dirent.d_off, struct dirent.d_reclen, struct dirent.d_type],,, 
                [#include <sys/types.h>
                 #include <dirent.h>])
        AC_CHECK_MEMBERS(
-               [struct passwd.pw_gecos],,,
+               [struct passwd.pw_gecos],,, 
                [#include <sys/types.h>
                 #include <pwd.h>])
        AC_CHECK_MEMBERS(
-               [struct statfs.f_flags],,,
+               [struct statfs.f_flags],,, 
                [#include <sys/types.h>
                 #include <sys/vfs.h>])
+       AC_CHECK_MEMBERS(
+               [struct stat.st_atim, struct stat.st_mtim, struct stat.st_ctim],,, 
+               [#include <sys/types.h>
+                #include <sys/stat.h>
+                #include <unistd.h>])
 
        dnl Favour xattr through glibc, but use libattr if we have to
        AC_CHECK_FUNC(lsetxattr, ,
@@ -2006,7 +2028,7 @@ if test x$target_win32 = xno; then
 
        dnl kinfo_proc.kp_proc works on darwin but fails on other simil-bsds
        AC_CHECK_MEMBERS(
-               [struct kinfo_proc.kp_proc],,,
+               [struct kinfo_proc.kp_proc],,, 
                [#include <sys/types.h>
                 #include <sys/param.h>
                 #include <sys/sysctl.h>
@@ -2113,10 +2135,10 @@ AC_TRY_COMPILE([#include <sys/socket.h>], [
 
 AC_CHECK_FUNCS(trunc, , AC_MSG_CHECKING(for trunc in math.h)
        # Simply calling trunc (0.0) is no good since gcc will optimize the call away
-       AC_TRY_LINK([#include <math.h>],
+       AC_TRY_LINK([#include <math.h>], 
        [ static void *p = &trunc; ],
        [
-               AC_DEFINE(HAVE_TRUNC)
+               AC_DEFINE(HAVE_TRUNC) 
                AC_MSG_RESULT(yes)
                ac_cv_trunc=yes
        ],
@@ -2196,7 +2218,7 @@ if test "x$ac_cv_have_dev_random" = "xno" \
 *** variable MONO_EGD_SOCKET to point to the daemon's socket to use that.
 ***]])
 fi
-
 AC_MSG_CHECKING([if inter-process shared handles are requested])
 AC_ARG_ENABLE(shared-handles, [  --disable-shared-handles disable inter-process shared handles], try_shared_handles=$enableval, try_shared_handles=yes)
 AC_MSG_RESULT($try_shared_handles)
@@ -2289,6 +2311,16 @@ AC_ARG_ENABLE(nacl_codegen, [  --enable-nacl-codegen      Enable Native Client c
 AC_ARG_ENABLE(nacl_gc, [  --enable-nacl-gc           Enable Native Client garbage collection], enable_nacl_gc=$enableval, enable_nacl_gc=no)
 
 AM_CONDITIONAL(NACL_CODEGEN, test x$enable_nacl_codegen != xno)
+
+dnl
+dnl Hack to use system mono for operations in build/install not allowed in NaCl.
+dnl
+nacl_self_host=""
+if test "x$ac_cv_header_nacl_nacl_dyncode_h" = "xyes"; then
+   nacl_self_host="nacl_self_host"
+fi
+AC_SUBST(nacl_self_host)
+
 if test "x$enable_nacl_codegen" = "xyes"; then
    MONO_NACL_ALIGN_MASK_OFF=1
    CPPFLAGS="$CPPFLAGS -D__native_client_codegen__"
@@ -2340,7 +2372,7 @@ if test "x$enable_llvm" = "xyes"; then
    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"
+         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
@@ -2435,7 +2467,7 @@ case "$host" in
                        ;;
                  cygwin*)
                        sgen_supported=true
-                       have_visibility_hidden=no
+                       have_visibility_hidden=no                 
                        ;;
                  haiku*)
                        LIBC=libroot.so
@@ -2457,6 +2489,10 @@ case "$host" in
                TARGET=AMD64;
                arch_target=amd64;
                JIT_SUPPORTED=yes
+               if test "x$ac_cv_sizeof_void_p" = "x4"; then
+                       AC_DEFINE(__mono_ilp32__, 1, [64 bit mode with 4 byte longs and pointers])
+                       sizeof_register=8
+               fi
                case $host_os in
                  linux*)
                        sgen_supported=true
@@ -2507,18 +2543,6 @@ case "$host" in
                fi
                sgen_supported=true
                ;;
-       alpha*-*-linux* | alpha*-*-osf*)
-               TARGET=ALPHA;
-               ACCESS_UNALIGNED="no"
-               JIT_SUPPORTED=yes
-               arch_target=alpha;
-               CFLAGS="$CFLAGS -mieee -O0"
-               case $host_os in
-                 linux*)
-                       LIBC="libc.so.6.1"
-                       INTL="libc.so.6.1"
-               esac
-              ;;
        *-mingw*|*-*-cygwin*)
                # When this is enabled, it leads to very strange crashes at runtime (gcc-3.4.4)
                have_visibility_hidden=no
@@ -2565,6 +2589,15 @@ case "$host" in
                   NESTED_LIBGC_FLAGS="$NESTED_LIBGC_FLAGS -DHAVE_ARMV6"
                fi
                ;;
+# TODO: make proper support for NaCl host.
+#        arm*-*nacl)
+#              TARGET=ARM;
+#              arch_target=arm;
+#              ACCESS_UNALIGNED="no"
+#              JIT_SUPPORTED=yes
+#              sgen_supported=true
+#              AOT_SUPPORTED="no"
+#              ;;
        s390-*-linux*)
                TARGET=S390;
                arch_target=s390;
@@ -2629,7 +2662,29 @@ if test "x$host" != "x$target"; then
                AC_DEFINE(__mono_ilp32__, 1, [64 bit mode with 4 byte longs and pointers])
                sizeof_register=8
                ;;
-   *-*-nacl)
+# TODO: make proper support for NaCl target.
+#   arm*-*nacl)
+#              TARGET=ARM
+#              arch_target=arm
+#              AC_DEFINE(TARGET_ARM, 1, [...])
+#              ACCESS_UNALIGNED="no"
+#              JIT_SUPPORTED=yes
+#              sizeof_register=4
+#               CPPFLAGS="$CPPFLAGS \
+#                    -DARM_FPU_VFP=1 -D__ARM_EABI__ \
+#                    -D__arm__ \
+#                    -D__portable_native_client__ \
+#                    -DARM_FPU_VFP=1 \
+#                    -Dtimezone=_timezone \
+#                    -DDISABLE_SOCKETS \
+#                    -DDISABLE_ATTACH \
+#                    -DUSE_NEWLIB"
+#              jit_wanted=true
+               # Can't use tls, since it depends on the runtime detection of tls offsets
+               # in mono-compiler.h
+#              with_tls=pthread
+#              ;;
+   i686-*-nacl)
                TARGET=X86
                arch_target=x86
                AC_DEFINE(TARGET_X86, 1, [...])
@@ -2690,21 +2745,26 @@ MIPS)
 esac
 
 if test "x$target_mach" = "xyes"; then
-       AC_TRY_COMPILE([#include "TargetConditionals.h"],[
-       #if TARGET_IPHONE_SIMULATOR == 1 || TARGET_OS_IPHONE == 1
-       #error fail this for ios
-       #endif
-       return 0;
-       ], [
-               AC_DEFINE(TARGET_OSX,1,[The JIT/AOT targets OSX])
-               CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_OSX"
-               CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_OSX"
-       ], [
-               AC_DEFINE(TARGET_IOS,1,[The JIT/AOT targets iOS])
-               CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_IOS"
-               CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_IOS"
-       ])
-
+   if test "x$TARGET" = "xARM"; then
+         AC_DEFINE(TARGET_IOS,1,[The JIT/AOT targets iOS])
+         CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_IOS"
+         CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_IOS"
+   else
+       AC_TRY_COMPILE([#include "TargetConditionals.h"],[
+       #if TARGET_IPHONE_SIMULATOR == 1 || TARGET_OS_IPHONE == 1
+       #error fail this for ios
+       #endif
+       return 0;
+       ], [
+                 AC_DEFINE(TARGET_OSX,1,[The JIT/AOT targets OSX])
+          CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_OSX"
+          CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_OSX"
+       ], [
+          AC_DEFINE(TARGET_IOS,1,[The JIT/AOT targets iOS])
+          CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_IOS"
+          CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_IOS"
+       ])
+       fi
    AC_DEFINE(TARGET_MACH,1,[The JIT/AOT targets Apple platforms])
 fi
 
@@ -2732,7 +2792,7 @@ if test "x$have_deprecated" = "xyes"; then
    AC_DEFINE(HAVE_DEPRECATED, 1, [Support for the deprecated attribute])
 fi
 
-dnl
+dnl 
 dnl Simple Generational checks (sgen)
 dnl
 if $sgen_supported; then
@@ -2814,7 +2874,7 @@ case "$host" in
                        fi
                done
        done
-
+       
        if test "x$X11" = "xlibX11.so"; then
                AC_MSG_WARN([Could not find X development libs. Do you have the -devel package installed? Assuming libX11.so.6...]);
                X11=libX11.so.6
@@ -2828,7 +2888,7 @@ AC_SUBST(libsuffix)
 if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86"; then
        if test "x$with_tls" = "x__thread"; then
                #
-               # On some linux distributions, TLS works in executables, but linking
+               # On some linux distributions, TLS works in executables, but linking 
                # against a shared library containing TLS fails with:
                # undefined reference to `__tls_get_addr'
                #
@@ -2847,7 +2907,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" -o "x$TARGET" = "xS390x"; then
+       if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86" -o "x$TARGET" = "xS390x"; then
                if test x$use_included_gc = xyes; then
                        case "$host" in
                        *-*-*linux*)
@@ -2855,7 +2915,7 @@ if test "x$try_mono_debugger" = "xyes"; then
                                ;;
                        *86-apple-darwin*)
                                mono_debugger_supported=yes
-                               ;;
+                               ;;              
                        esac
                fi
        fi
@@ -2985,8 +3045,8 @@ case "x$gc" in
                if test x$TARGET = xSPARC -o x$TARGET = xSPARC64; then
                        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
+               # Don't pass -finstrument-for-thread-suspension in, 
+               # if these are instrumented it will be very bad news 
                # (infinite recursion, undefined parking behavior, etc)
                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\""
@@ -3054,8 +3114,8 @@ AC_ARG_WITH(lazy_gc_thread_creation, [  --with-lazy-gc-thread-creation=yes|no
        fi
 ], [with_lazy_gc_thread_creation=no])
 
-AC_CHECK_HEADER([malloc.h],
-               [AC_DEFINE([HAVE_USR_INCLUDE_MALLOC_H], [1],
+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
@@ -3123,7 +3183,6 @@ AM_CONDITIONAL(SPARC, test x$TARGET = xSPARC)
 AM_CONDITIONAL(SPARC64, test x$TARGET = xSPARC64)
 AM_CONDITIONAL(X86, test x$TARGET = xX86)
 AM_CONDITIONAL(AMD64, test x$TARGET = xAMD64)
-AM_CONDITIONAL(ALPHA, test x$TARGET = xALPHA)
 AM_CONDITIONAL(IA64, test x$TARGET = xIA64)
 AM_CONDITIONAL(M68K, test x$TARGET = xM68K)
 AM_CONDITIONAL(MIPS, test x$TARGET = xMIPS)
@@ -3326,7 +3385,6 @@ mono/arch/sparc/Makefile
 mono/arch/s390/Makefile
 mono/arch/s390x/Makefile
 mono/arch/arm/Makefile
-mono/arch/alpha/Makefile
 mono/arch/ia64/Makefile
 mono/arch/mips/Makefile
 mono/interpreter/Makefile
@@ -3339,6 +3397,7 @@ mono/tests/cas/demand/Makefile
 mono/tests/cas/inheritance/Makefile
 mono/tests/cas/linkdemand/Makefile
 mono/tests/cas/threads/Makefile
+mono/tests/gc-descriptors/Makefile
 mono/benchmark/Makefile
 mono/monograph/Makefile
 mono/io-layer/Makefile
@@ -3484,10 +3543,10 @@ 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
+    
+    if test "x$test_bcl_opt" = "xyes"; then    
       echo "BCL_OPTIMIZE = 1" >> $srcdir/$mcsdir/build/config.make
     fi
 
@@ -3517,7 +3576,7 @@ echo "
         mcs source:    $mcsdir
 
    Engine:
-       GC:            $gc_msg
+       GC:            $gc_msg 
        TLS:           $with_tls
        SIGALTSTACK:   $with_sigaltstack
        Engine:        $jit_status