Fix for build breakage on cygwin-head-mono
[mono.git] / configure.in
index a9beaf4afbc8f9e5cbcb195e9839091ab564a789..66bcacc9596c0299f156a8aaa2d11f8ac446d4c9 100644 (file)
@@ -6,7 +6,7 @@ AC_CANONICAL_SYSTEM
 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.5)
 AM_MAINTAINER_MODE
 
 AC_PROG_LN_S
@@ -272,6 +272,18 @@ if test x"$GCC" = xyes; then
         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.
@@ -510,6 +522,7 @@ if test x$platform_win32 = xno; then
        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)
@@ -1074,7 +1087,13 @@ if test x$platform_win32 = xno; then
        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?))
@@ -1231,7 +1250,7 @@ fi
 #
 ICU_CFLAGS=""
 ICU_LIBS=""
-enable_icu="no;  default"
+enable_glob="normal;  default"
 
 probe_icu=false
 AC_ARG_WITH(icu, [  --with-icu=yes/no],
@@ -1247,10 +1266,9 @@ 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`
@@ -1313,6 +1331,9 @@ case "$host" in
                interp_wanted=true
                arch_target=alpha;
               ;;
+       *-*-mingw*|*-*-cygwin*)
+               INTL="intl"
+               ;;
 #      ia64-*-linux* | ia64-*-hpux*)
 #              TARGET=IA64;
 #              arch_target=ia64;
@@ -1462,6 +1483,14 @@ if test "x$with_tls" = "x__thread"; then
    # 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
@@ -1634,14 +1663,16 @@ runtime/Makefile
   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 "libdir=$libdir" >> $srcdir/$mcsdir/build/config.make
   echo 'MCS_FLAGS = $(PLATFORM_DEBUG_FLAGS)' >> $srcdir/$mcsdir/build/config.make
 )
 
 echo "
         mcs source:  $mcs_topdir
        GC:          $gc
-       ICU:         $enable_icu
+       Globalization:     $enable_glob
        TLS:         $with_tls
        SIGALTSTACK: $with_sigaltstack
        Engine:      $jit_status