Update autoconf macros
[awesomized/libmemcached] / m4 / uuid.m4
index 9fc0cf33d7515d20c195b11371beb7f6f1622453..1122bb495998542258c6b4efdda713766a702c02 100644 (file)
@@ -4,7 +4,8 @@
 #
 # SYNOPSIS
 #
-#   AX_LIB_UUID
+#   AX_UUID
+#   AX_UUID_GENERATE_TIME_SAFE
 #
 # DESCRIPTION
 #
 #   and this notice are preserved. This file is offered as-is, without any
 #   warranty.
 
-#serial 2
+#serial 3
 
-AC_DEFUN([AX_UUID_GENERATE_TIME_SAFE], [
-    AC_CACHE_CHECK([check for uuid_generate_time_safe], [ax_cv_uuid_generate_time_safe], [
-      save_LDFLAGS="$LDFLAGS"
-      LDFLAGS="-luuid"
-      AC_LANG_PUSH([C])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([
-#include <uuid/uuid.h>
-      ], [
-      uuid_t out;
-      uuid_generate_time_safe(out);
-      ]), [ax_cv_uuid_generate_time_safe=yes ], [ax_cv_uuid_generate_time_safe=no ]
+AC_DEFUN([AX_UUID], [
+         AC_CHECK_HEADER([uuid/uuid.h], [
+                         AC_CACHE_CHECK([check to see if we need -luuid], [ax_cv_libuuid_is_required], [
+                                        save_LDFLAGS="$LDFLAGS"
+                                        LDFLAGS="-luuid"
+                                        AC_LANG_PUSH([C])
+                                        AC_LINK_IFELSE([
+                                                       AC_LANG_PROGRAM([#include <uuid/uuid.h>], [
+                                                                       uuid_t out;
+                                                                       uuid_generate(out);
+                                                                       ])],
+                                                       [ax_cv_libuuid_is_required=yes],
+                                                       [])
+                                        AC_LANG_POP
+                                        LDFLAGS="$save_LDFLAGS"
+                                        ])
+                         AS_IF([test x"ax_cv_libuuid_is_required" = xyes], [
+                               LIBUUID_LDFLAGS="-luuid"
+                               UUID_UUID_H=yes
+                               ],[
+                               AC_CACHE_CHECK([check to see if -luuid is not needed], [ax_cv_libuuid_is_not_required], [
+                                              AC_LANG_PUSH([C])
+                                              AC_COMPILE_IFELSE([
+                                                                AC_LANG_PROGRAM([#include <uuid/uuid.h>], [
+                                                                                uuid_t out;
+                                                                                uuid_generate(out);
+                                                                                ])],
+                                                                [ax_cv_libuuid_is_not_required=yes],
+                                                                [ax_cv_libuuid_is_not_required=no])
+                                              AC_LANG_POP
+                                              ])
+                               AS_IF([test x"ax_cv_libuuid_is_not_required" = xyes], [UUID_UUID_H=yes], [UUID_UUID_H=])
+                               ])
+                         ], [UUID_UUID_H=])
+
+AS_IF([test x"$UUID_UUID_H" = xyes], [
+      AC_DEFINE([HAVE_UUID_UUID_H], [ 1 ], [Have uuid/uuid.h])
+      ],[
+      AC_DEFINE([HAVE_UUID_UUID_H], [ 0 ], [Have uuid/uuid.h])
       ])
+])
 
-    AC_LANG_POP
-    LDFLAGS="$save_LDFLAGS"
-    ])
+AC_DEFUN([AX_UUID_GENERATE_TIME_SAFE], [
+  AC_REQUIRE([AX_UUID])
+  AC_CACHE_CHECK([for uuid_generate_time_safe], [ax_cv_uuid_generate_time_safe], [
+        save_LDFLAGS="$LDFLAGS"
+        LDFLAGS=$LIBUUID_LDFLAGS
+        AC_LANG_PUSH([C])
+        AC_LINK_IFELSE([
+            AC_LANG_PROGRAM([#include <uuid/uuid.h>], [
+                            uuid_t out;
+                            uuid_generate_time_safe(out);
+                            ])],
+            [ax_cv_uuid_generate_time_safe=yes],
+            [ax_cv_uuid_generate_time_safe=no])
+          AC_LANG_POP
+          LDFLAGS="$save_LDFLAGS"
+          ])
 
   AS_IF([test "$ax_cv_uuid_generate_time_safe" = yes],[
     AC_DEFINE(HAVE_UUID_GENERATE_TIME_SAFE,[1],[Define if uuid_generate_time_safe is present in uuid/uuid.h.])],[