X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=configure.in;h=2c1a6d34993129432df8d37e7711360b8ca6f92e;hb=e842469902a503885bdfe2b961a7ce41a20f48ac;hp=9158a49c6817f7f6b30bc72239233417bc8f9d4a;hpb=9cecf57dc207afbd13c0cf4f3531eacca033e65a;p=mono.git diff --git a/configure.in b/configure.in index 9158a49c681..2c1a6d34993 100644 --- a/configure.in +++ b/configure.in @@ -36,6 +36,11 @@ else gc_default=boehm fi +# These variables are the CPPFLAGS/CFLAGS passed to libgc's configure +# libgc should inherit the original CFLAGS/CPPFLAGS passed to configure, i.e. -O0 +CPPFLAGS_FOR_LIBGC=$CPPFLAGS +CFLAGS_FOR_LIBGC=$CFLAGS + # # These are the flags that need to be stored in the mono.pc file for # compiling code that will embed Mono @@ -295,6 +300,17 @@ AC_LIBTOOL_WIN32_DLL # This causes monodis to not link correctly #AC_DISABLE_FAST_INSTALL AM_PROG_LIBTOOL + +AC_ARG_ENABLE(dolt, [ --enable-dolt Use dolt (http://dolt.freedesktop.org/) instead of libtool for building.]) + +if test "x$enable_dolt" = "xyes"; then + DOLT +else + # The DOLT macro contains AC_SUBST's for these so we must define them because of + # autoconf brokeness + LTCOMPILE='$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(COMPILE)' + LTCXXCOMPILE='$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXXCOMPILE)' +fi # Test whenever ld supports -version-script AC_PROG_LD @@ -305,7 +321,7 @@ fi AM_CONDITIONAL(NO_VERSION_SCRIPT, test x$no_version_script = xyes) -AC_CHECK_HEADERS(sys/filio.h sys/sockio.h netdb.h utime.h semaphore.h sys/un.h linux/rtc.h sys/syscall.h sys/mkdev.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) AC_CHECK_HEADER(zlib.h, [have_zlib=yes], [have_zlib=no]) if test x$have_zlib = xyes; then @@ -394,6 +410,7 @@ else esac fi CFLAGS="$CFLAGS -g $WARN" +CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -g" # Where's the 'mcs' source tree? if test -d $srcdir/mcs; then @@ -406,7 +423,7 @@ fi # A sanity check to catch cases where the package was unpacked # with an ancient tar program (Solaris) # -AC_MSG_CHECKING(Integrity of package) +AC_MSG_CHECKING(integrity of package) if test -f $srcdir/$mcsdir/class/System.Runtime.Serialization.Formatters.Soap/System.Runtime.Serialization.Formatters.Soap/SoapTypeMapper.cs then AC_MSG_RESULT(ok) @@ -564,6 +581,8 @@ if test "x$with_xen_opt" = "xyes"; then void main () { } ], [ AC_MSG_RESULT(yes) + # Pass it to libgc as well + CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -mno-tls-direct-seg-refs" ], [ AC_MSG_RESULT(no) CFLAGS=$ORIG_CFLAGS @@ -1649,10 +1668,22 @@ if test "x$try_shared_handles" != "xyes"; then AC_SUBST(DISABLE_SHARED_HANDLES) fi +if test x$gc = xsgen; then + if test x$with_tls != x__thread; then + AC_MSG_ERROR([The SGEN garbage collector depends on a working __thread implementation, and either --with-thread=pthread was passed to configure, or the configure test for __thread failed.]) + fi +fi 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]) +AC_MSG_CHECKING([if big-arrays are to be enabled]) +AC_ARG_ENABLE(big-arrays, [ --enable-big-arrays Enable the allocation and indexing of arrays greater than Int32.MaxValue], enable_big_arrays=$enableval, enable_big_arrays=no) +AC_MSG_RESULT($enable_big_arrays) +if test "x$enable_big_arrays" = "xyes" ; then + AC_DEFINE(MONO_BIG_ARRAYS,1,[Enable the allocation and indexing of arrays greater than Int32.MaxValue]) +fi + TARGET="unknown" ACCESS_UNALIGNED="yes" @@ -1783,7 +1814,11 @@ case "$host" in ;; macppc-*-openbsd* | powerpc*-*-linux* | powerpc-*-openbsd* | \ powerpc-*-sysv* | powerpc-*-darwin* | powerpc-*-netbsd* ) - TARGET=POWERPC; + if test "x$ac_cv_sizeof_void_p" = "x8"; then + TARGET=POWERPC64; + else + TARGET=POWERPC; + fi AC_DEFINE(MONO_ARCH_REGPARMS,1,[Architecture uses registers for Parameters]) arch_target=ppc; JIT_SUPPORTED=yes @@ -1994,7 +2029,10 @@ case "x$gc" in # We should use a separate variable for this to avoid passing useless and # potentially problematic defines to libgc (like -D_FILE_OFFSET_BITS=64) # This should be executed late so we pick up the final version of CPPFLAGS - ac_configure_args="$ac_configure_args --disable-embed-check --with-libgc-threads=$libgc_threads $libgc_configure_args \"CPPFLAGS=$CPPFLAGS\"" + # 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. + ac_configure_args="$ac_configure_args --disable-embed-check --with-libgc-threads=$libgc_threads $libgc_configure_args \"CPPFLAGS_FOR_LIBGC=$CPPFLAGS\" \"CFLAGS_FOR_LIBGC=$CFLAGS_FOR_LIBGC\"" AC_CONFIG_SUBDIRS(libgc) ;; esac @@ -2043,6 +2081,7 @@ AM_CONDITIONAL(IA64, test x$TARGET = xIA64) AM_CONDITIONAL(M68K, test x$TARGET = xM68K) AM_CONDITIONAL(MIPS, test x$TARGET = xMIPS) AM_CONDITIONAL(POWERPC, test x$TARGET = xPOWERPC) +AM_CONDITIONAL(POWERPC64, test x$TARGET = xPOWERPC64) AM_CONDITIONAL(ARM, test x$TARGET = xARM) AM_CONDITIONAL(S390, test x$TARGET = xS390) AM_CONDITIONAL(S390x, test x$TARGET = xS390x) @@ -2207,6 +2246,7 @@ data/mint.pc data/mono.pc data/mono-cairo.pc data/dotnet.pc +data/dotnet35.pc data/cecil.pc data/smcs.pc samples/Makefile @@ -2305,6 +2345,7 @@ echo " libgdiplus: $libgdiplus_msg zlib: $zlib_msg oprofile: $OPROFILE + BigArrays: $enable_big_arrays $disabled "