Merge Monty
[awesomized/libmemcached] / m4 / pandora_canonical.m4
index c1170f158e45d83856f147527ca7d28af96e1ffa..32574f98f899d00838994a8cb8f9c787e45aa835 100644 (file)
@@ -4,13 +4,23 @@ dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 
 dnl Which version of the canonical setup we're using
 dnl with or without modifications, as long as this notice is preserved.
 
 dnl Which version of the canonical setup we're using
-AC_DEFUN([PANDORA_CANONICAL_VERSION],[0.78])
+AC_DEFUN([PANDORA_CANONICAL_VERSION],[0.92])
 
 AC_DEFUN([PANDORA_FORCE_DEPEND_TRACKING],[
 
 AC_DEFUN([PANDORA_FORCE_DEPEND_TRACKING],[
+  AC_ARG_ENABLE([fat-binaries],
+    [AS_HELP_STRING([--enable-fat-binaries],
+      [Enable fat binary support on OSX @<:@default=off@:>@])],
+    [ac_enable_fat_binaries="$enableval"],
+    [ac_enable_fat_binaries="no"])
+
   dnl Force dependency tracking on for Sun Studio builds
   AS_IF([test "x${enable_dependency_tracking}" = "x"],[
     enable_dependency_tracking=yes
   ])
   dnl Force dependency tracking on for Sun Studio builds
   AS_IF([test "x${enable_dependency_tracking}" = "x"],[
     enable_dependency_tracking=yes
   ])
+  dnl If we're building OSX Fat Binaries, we have to turn off -M options
+  AS_IF([test "x${ac_enable_fat_binaries}" = "xyes"],[
+    enable_dependency_tracking=no
+  ])
 ])
 
 dnl The standard setup for how we build Pandora projects
 ])
 
 dnl The standard setup for how we build Pandora projects
@@ -24,6 +34,7 @@ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
   m4_define([PCT_IGNORE_SHARED_PTR],[no])
   m4_define([PCT_FORCE_GCC42],[no])
   m4_define([PCT_SRC_IN_SRC],[no])
   m4_define([PCT_IGNORE_SHARED_PTR],[no])
   m4_define([PCT_FORCE_GCC42],[no])
   m4_define([PCT_SRC_IN_SRC],[no])
+  m4_define([PCT_VERSION_FROM_VC],[no])
   m4_define([PCT_USE_VISIBILITY],[yes])
   m4_foreach([pct_arg],[$*],[
     m4_case(pct_arg,
   m4_define([PCT_USE_VISIBILITY],[yes])
   m4_foreach([pct_arg],[$*],[
     m4_case(pct_arg,
@@ -50,6 +61,10 @@ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
       [src-in-src], [
         m4_undefine([PCT_SRC_IN_SRC])
         m4_define([PCT_SRC_IN_SRC],[yes])
       [src-in-src], [
         m4_undefine([PCT_SRC_IN_SRC])
         m4_define([PCT_SRC_IN_SRC],[yes])
+      ],
+      [version-from-vc], [
+        m4_undefine([PCT_VERSION_FROM_VC])
+        m4_define([PCT_VERSION_FROM_VC],[yes])
     ])
   ])
 
     ])
   ])
 
@@ -72,6 +87,11 @@ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
   AC_REQUIRE([PANDORA_MAC_GCC42])
   AC_REQUIRE([PANDORA_64BIT])
 
   AC_REQUIRE([PANDORA_MAC_GCC42])
   AC_REQUIRE([PANDORA_64BIT])
 
+  m4_if(PCT_VERSION_FROM_VC,yes,[
+    PANDORA_VC_VERSION
+  ])
+  PANDORA_VERSION
+
   dnl Once we can use a modern autoconf, we can use this
   dnl AC_PROG_CC_C99
   AC_REQUIRE([AC_PROG_CXX])
   dnl Once we can use a modern autoconf, we can use this
   dnl AC_PROG_CC_C99
   AC_REQUIRE([AC_PROG_CXX])
@@ -87,10 +107,6 @@ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
 
   PANDORA_LIBTOOL
 
 
   PANDORA_LIBTOOL
 
-  AS_IF([test "$lt_cv_prog_gnu_ld" = "yes"],[
-    AM_LDFLAGS="${AM_LDFLAGS} -Wl,--default-symver"
-  ])
-
   dnl autoconf doesn't automatically provide a fail-if-no-C++ macro
   dnl so we check c++98 features and fail if we don't have them, mainly
   dnl for that reason
   dnl autoconf doesn't automatically provide a fail-if-no-C++ macro
   dnl so we check c++98 features and fail if we don't have them, mainly
   dnl for that reason
@@ -163,12 +179,7 @@ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
   dnl alloca - but we need to know it anyway for check_stack_overrun.
   PANDORA_STACK_DIRECTION
 
   dnl alloca - but we need to know it anyway for check_stack_overrun.
   PANDORA_STACK_DIRECTION
 
-  save_LIBS="${LIBS}"
-  LIBS=""
-  AC_CHECK_LIB(m, floor, [], AC_CHECK_LIB(m, __infinity))
-  LIBM="${LIBS}"
-  LIBS="${save_LIBS}"
-  AC_SUBST([LIBM])
+  AC_CHECK_LIBM
   
   AC_CHECK_FUNC(setsockopt, [], [AC_CHECK_LIB(socket, setsockopt)])
   AC_CHECK_FUNC(bind, [], [AC_CHECK_LIB(bind, bind)])
   
   AC_CHECK_FUNC(setsockopt, [], [AC_CHECK_LIB(socket, setsockopt)])
   AC_CHECK_FUNC(bind, [], [AC_CHECK_LIB(bind, bind)])
@@ -194,7 +205,7 @@ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
     dnl We need to inject error into the cflags to test if visibility works or not
     save_CFLAGS="${CFLAGS}"
     CFLAGS="${CFLAGS} -Werror"
     dnl We need to inject error into the cflags to test if visibility works or not
     save_CFLAGS="${CFLAGS}"
     CFLAGS="${CFLAGS} -Werror"
-    gl_VISIBILITY
+    PANDORA_VISIBILITY
     CFLAGS="${save_CFLAGS}"
   ])
 
     CFLAGS="${save_CFLAGS}"
   ])