Merge pull request #409 from Alkarex/patch-1
[mono.git] / eglib / configure.ac
index 5bd114b136ef9949e1db64e66c4672cc1c68296c..86a4cbc6965eb799f2be1a83a071eb815ab641fc 100644 (file)
@@ -1,15 +1,24 @@
-AC_INIT(README)
+#
+# Copyright 2012 Xamarin Inc
+#
+AC_INIT(eglib, [0.3],
+        [http://bugzilla.xamarin.com/enter_bug.cgi?classification=Mono])
+
+AC_CONFIG_SRCDIR([README])
+AC_CONFIG_MACRO_DIR([m4])
 AC_CANONICAL_SYSTEM
+AC_CANONICAL_HOST
 
-AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(eglib,0.3)
+AM_INIT_AUTOMAKE([1.9 dist-bzip2 tar-ustar no-dist-gzip foreign])
+AM_CONFIG_HEADER([config.h])
 AM_MAINTAINER_MODE
 
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+
 AC_PROG_CC
 AM_PROG_LIBTOOL
 # Use dolt (http://dolt.freedesktop.org/) instead of libtool for building.
 DOLT
-CFLAGS="$CFLAGS -O0"
 GNUC_PRETTY=
 GNUC_UNUSED=
 BREAKPOINT="G_STMT_START { raise (SIGTRAP); } G_STMT_END"
@@ -40,6 +49,7 @@ AM_CONDITIONAL(CROSS_COMPILING, [test x$cross_compiling = xyes])
 AC_C_BIGENDIAN([ORDER=G_BIG_ENDIAN],[ORDER=G_LITTLE_ENDIAN])
 
 platform_darwin=no
+platform_android=no
 
 case $host in
 *-*-msdos* | *-*-go32* | *-*-mingw32* | *-*-cygwin* | *-*-windows*)
@@ -55,6 +65,14 @@ case $host in
     OS="UNIX"
     PIDTYPE='int'
     ;;
+*-*-linux-android*)
+    platform_android=yes
+       AC_DEFINE(PLATFORM_ANDROID,1,[Targeting the Android platform])
+    PATHSEP='/'
+    SEARCHSEP=':'
+    OS="UNIX"
+    PIDTYPE='int'
+    ;;
 *)
     PATHSEP='/'
     SEARCHSEP=':'
@@ -91,18 +109,15 @@ AC_SUBST(PIDTYPE)
 AM_CONDITIONAL(HOST_WIN32, test x$OS = xWIN32)
 AM_CONDITIONAL(TARGET_WIN32, test x$OS = xWIN32)
 AM_CONDITIONAL(PLATFORM_DARWIN, test x$platform_darwin = xyes)
+AM_CONDITIONAL(PLATFORM_ANDROID, test x$platform_android = xyes)
 
 AC_CHECK_SIZEOF(int)
 AC_CHECK_SIZEOF(void *)
+AC_CHECK_SIZEOF(long)
 AC_CHECK_SIZEOF(long long)
-AC_CHECK_FUNCS(strndup strlcpy getpwuid_r strtok_r rewinddir vasprintf)
+AC_CHECK_FUNCS(strndup strlcpy stpcpy getpwuid_r strtok_r rewinddir vasprintf)
 AM_CONDITIONAL(NEED_VASPRINTF, test x$have_vasprintf = x )
-AC_CHECK_LIB(iconv, iconv_open, LIBS="$LIBS -liconv")
-AC_CHECK_LIB(iconv, libiconv_open, LIBS="$LIBS -liconv")
-AC_CHECK_LIB(iconv, iconv_open, ICONV_LIBS="-liconv")
-AC_CHECK_LIB(iconv, libiconv_open, ICONV_LIBS="-liconv")
-AC_SUBST(ICONV_LIBS)
-LIBS="$LIBS $ICONV_LIBS"
+AM_ICONV()
 AC_SEARCH_LIBS(sqrtf, m)
 
 # nanosleep may not be part of libc, also search it in other libraries
@@ -144,6 +159,19 @@ if test $ac_cv_sizeof_void_p = $ac_cv_sizeof_int; then
    GSIZE_FORMAT='"u"'
    G_GUINT64_FORMAT='"llu"'
    G_GINT64_FORMAT='"lld"'
+   G_GUINT32_FORMAT='"lu"'
+   G_GINT32_FORMAT='"ld"'
+elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long; then
+   GPOINTER_TO_INT="((gint)(long) (ptr))"
+   GPOINTER_TO_UINT="((guint)(long) (ptr))"
+   GINT_TO_POINTER="((gpointer)(glong) (v))"
+   GUINT_TO_POINTER="((gpointer)(gulong) (v))"
+   GSIZE="long"
+   GSIZE_FORMAT='"lu"'
+   G_GUINT64_FORMAT='"lu"'
+   G_GINT64_FORMAT='"ld"'
+   G_GUINT32_FORMAT='"u"'
+   G_GINT32_FORMAT='"d"'
 elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long_long; then
    GPOINTER_TO_INT="((gint)(long long) (ptr))"
    GPOINTER_TO_UINT="((guint)(unsigned long long) (ptr))"
@@ -153,15 +181,10 @@ elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long_long; then
    GSIZE_FORMAT='"I64u"'
    G_GUINT64_FORMAT='"I64u"'
    G_GINT64_FORMAT='"I64i"'
+   G_GUINT32_FORMAT='"I32u"'
+   G_GINT32_FORMAT='"I32i"'
 else
-   GPOINTER_TO_INT="((gint)(long) (ptr))"
-   GPOINTER_TO_UINT="((guint)(long) (ptr))"
-   GINT_TO_POINTER="((gpointer)(glong) (v))"
-   GUINT_TO_POINTER="((gpointer)(gulong) (v))"
-   GSIZE="long"
-   GSIZE_FORMAT='"lu"'
-   G_GUINT64_FORMAT='"lu"'
-   G_GINT64_FORMAT='"ld"'
+   AC_MSG_ERROR([unsupported pointer size])
 fi
 
 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
@@ -192,7 +215,6 @@ if test "x$PKG_CONFIG" != "xno"; then
 fi
 AM_CONDITIONAL(HAVE_GLIB, $have_glib)
 
-AC_ARG_ENABLE(quiet-build, [  --enable-quiet-build  Enable quiet runtime build (on by default)], enable_quiet_build=$enableval, enable_quiet_build=yes)
 AC_SUBST(GPOINTER_TO_INT)
 AC_SUBST(GPOINTER_TO_UINT)
 AC_SUBST(GINT_TO_POINTER)
@@ -201,14 +223,12 @@ AC_SUBST(GSIZE)
 AC_SUBST(GSIZE_FORMAT)
 AC_SUBST(G_GUINT64_FORMAT)
 AC_SUBST(G_GINT64_FORMAT)
-
-if test x$enable_quiet_build = xyes; then
-   AC_CONFIG_COMMANDS([quiet], [for i in `find src test -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])
-fi
+AC_SUBST(G_GUINT32_FORMAT)
+AC_SUBST(G_GINT32_FORMAT)
 
 AC_OUTPUT([
 Makefile
+m4/Makefile
 src/Makefile
 src/eglib-config.h
 test/Makefile