X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=eglib%2Fconfigure.ac;h=1ff6c42ff28d5247e052e7e68b34c72e9a43f8eb;hb=b5fcd926f8ee870e107cf534c1f9592586b8a0e9;hp=86a4cbc6965eb799f2be1a83a071eb815ab641fc;hpb=d06470378c9d3834502c1a6ac148632d4c7a5ac5;p=mono.git diff --git a/eglib/configure.ac b/eglib/configure.ac index 86a4cbc6965..1ff6c42ff28 100644 --- a/eglib/configure.ac +++ b/eglib/configure.ac @@ -10,7 +10,7 @@ AC_CANONICAL_SYSTEM AC_CANONICAL_HOST AM_INIT_AUTOMAKE([1.9 dist-bzip2 tar-ustar no-dist-gzip foreign]) -AM_CONFIG_HEADER([config.h]) +AC_CONFIG_HEADERS([config.h]) AM_MAINTAINER_MODE m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) @@ -88,7 +88,7 @@ case $host in esac case $target in -arm*-darwin*) +arm*-darwin*|aarch64*-*) CFLAGS="$CFLAGS -U_FORTIFY_SOURCE" ;; i*86-*-darwin*) @@ -100,6 +100,25 @@ i*86-*-darwin*) ;; esac +target_osx=no +target_ios=no + +if test "x$platform_darwin" = "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]) + target_osx=yes + ], [ + AC_DEFINE(TARGET_IOS,1,[The JIT/AOT targets iOS]) + target_ios=yes + ]) + AC_DEFINE(TARGET_MACH,1,[The JIT/AOT targets Apple platforms]) +fi + AC_SUBST(ORDER) AC_SUBST(CFLAGS) AC_SUBST(PATHSEP) @@ -115,7 +134,21 @@ AC_CHECK_SIZEOF(int) AC_CHECK_SIZEOF(void *) AC_CHECK_SIZEOF(long) AC_CHECK_SIZEOF(long long) -AC_CHECK_FUNCS(strndup strlcpy stpcpy getpwuid_r strtok_r rewinddir vasprintf) +AC_CHECK_FUNCS(strlcpy stpcpy strtok_r rewinddir vasprintf) + +# +# Mono currently supports 10.6, but strndup is not available prior to 10.7; avoiding +# the detection of strndup on OS X so Mono built on 10.7+ still runs on 10.6. This can be +# removed once support for 10.6 is dropped. +# +# iOS detection of strndup and getpwuid_r is faulty for some reason so let's simply avoid it +# +if test x$target_osx = xyes; then +AC_CHECK_FUNCS(getpwuid_r) +elif test x$target_ios = xno; then +AC_CHECK_FUNCS(strndup getpwuid_r) +fi + AM_CONDITIONAL(NEED_VASPRINTF, test x$have_vasprintf = x ) AM_ICONV() AC_SEARCH_LIBS(sqrtf, m) @@ -146,7 +179,7 @@ if test "x$have_iso_varargs" = "xyes"; then fi AC_SUBST(G_HAVE_ISO_VARARGS) -AC_CHECK_HEADERS(getopt.h sys/time.h sys/wait.h pwd.h langinfo.h iconv.h localcharset.h sys/types.h) +AC_CHECK_HEADERS(getopt.h sys/select.h sys/time.h sys/wait.h pwd.h langinfo.h iconv.h localcharset.h sys/types.h) AC_CHECK_HEADER(alloca.h, [HAVE_ALLOCA_H=1], [HAVE_ALLOCA_H=0]) AC_SUBST(HAVE_ALLOCA_H) @@ -202,18 +235,11 @@ AC_ARG_WITH(crosspkgdir, [ --with-crosspkgdir=/path/to/pkg-config/dir Chan fi ) -dnl -dnl No, you can not replace the call below with a pkg.m4 macro -dnl -have_glib=false -if test "x$PKG_CONFIG" != "xno"; then - if $PKG_CONFIG --atleast-version=$GLIB_REQUIRED_VERSION glib-2.0; then - have_glib=true; - else - have_glib=false; - fi +AC_ARG_ENABLE(werror, [ --enable-werror Pass -Werror to the C compiler], werror_flag=$enableval, werror_flag=no) +if test x$werror_flag = xyes; then + WERROR_CFLAGS="-Werror" fi -AM_CONDITIONAL(HAVE_GLIB, $have_glib) +AC_SUBST([WERROR_CFLAGS]) AC_SUBST(GPOINTER_TO_INT) AC_SUBST(GPOINTER_TO_UINT)