X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=m4%2Fax_uuid.m4;h=293fdfc58a06c39a5a9f75fa2d8debc9176d7acc;hb=770d4f6b4cc99bff87d27f4cbe52b2c6a2f2fbd2;hp=5f272e18e9159a46dcc5cea40ca04904290de7f6;hpb=5a6dd35a036e60a1e51d2bffbde6b5fb0064e65d;p=awesomized%2Flibmemcached diff --git a/m4/ax_uuid.m4 b/m4/ax_uuid.m4 index 5f272e18..293fdfc5 100644 --- a/m4/ax_uuid.m4 +++ b/m4/ax_uuid.m4 @@ -1,49 +1,53 @@ +# vim:expandtab:shiftwidth=2:tabstop=2:smarttab: # =========================================================================== # https://github.com/BrianAker/ddm4 # =========================================================================== # # SYNOPSIS # -# AX_UUID -# AX_UUID_GENERATE_TIME_SAFE +# AX_UUID() +# AX_UUID_GENERATE_TIME() +# AX_UUID_GENERATE_TIME_SAFE() # # DESCRIPTION # -# Check for uuid, and uuid_generate_time_safe support. +# Check for uuid, uuid_generate_time, and uuid_generate_time_safe support. # # LICENSE # -# Copyright (c) 2012 Brian Aker +# Copyright (c) 2012-2013 Brian Aker # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. This file is offered as-is, without any # warranty. -#serial 4 +#serial 7 -AC_DEFUN([AX_UUID], [ - AC_CHECK_HEADER([uuid/uuid.h], [ - AC_CACHE_CHECK([check to see if -luuid is not needed], [ax_cv_libuuid_is_required], [ - AC_LANG_PUSH([C]) - AC_RUN_IFELSE([ - AC_LANG_PROGRAM([#include ], [ +AC_DEFUN([AX_UUID], + [AC_PREREQ([2.63])dnl + AC_CHECK_HEADER([uuid/uuid.h],[ + + AC_CACHE_CHECK([check to see if -luuid is needed], [ax_cv_libuuid_is_required], + [AC_LANG_PUSH([C]) + AC_RUN_IFELSE( + [AC_LANG_PROGRAM([#include ], [ uuid_t out; uuid_generate(out); ])], [ax_cv_libuuid_is_required=no], - [ax_cv_libuuid_is_required=maybe], + [ax_cv_libuuid_is_required=yes], [AC_MSG_WARN([test program execution failed])]) AC_LANG_POP ]) - AS_IF([test "$ax_cv_libuuid_is_required" = maybe], [ - AC_CACHE_CHECK([check to see if -luuid is needed], [ax_cv_libuuid_works], [ - save_LIBS="$LIBS" + AS_IF([test "$ax_cv_libuuid_is_required" = yes], + [AC_CACHE_CHECK([check to see if -luuid is needed], [ax_cv_libuuid_works], + [AX_SAVE_FLAGS LIBS="-luuid $LIBS" AC_LANG_PUSH([C]) - AC_RUN_IFELSE([ - AC_LANG_PROGRAM([#include ], [ + AC_RUN_IFELSE( + [AC_LANG_PROGRAM([#include ], [ uuid_t out; uuid_generate(out); ])], @@ -51,31 +55,59 @@ AC_DEFUN([AX_UUID], [ [ax_cv_libuuid_works=no], [AC_MSG_WARN([test program execution failed])]) AC_LANG_POP - LIBS="$save_LIBS" - ]) - AS_IF([test "$ax_cv_libuuid_works" = yes], [ - AC_SUBST([LIBUUID_LDFLAGS],[-luuid])]) + AX_RESTORE_FLAGS]) ]) - AS_IF([test "$ax_cv_libuuid_is_required" = no], [UUID_UUID_H=yes]) - AS_IF([test "$ax_cv_libuuid_works" = yes], [UUID_UUID_H=yes]) - ]) + AS_IF([test "$ax_cv_libuuid_is_required" = yes], + [AS_IF([test "$ax_cv_libuuid_works" = yes],[ax_libuuid=yes])], + [ax_libuuid=yes]) + ],[ax_libuuid=no]) - AS_IF([test "$UUID_UUID_H" = yes], [ - AC_DEFINE([HAVE_UUID_UUID_H], [1], [Have uuid/uuid.h]) - ],[ - AC_DEFINE([HAVE_UUID_UUID_H], [0], [Have uuid/uuid.h]) - ]) + AS_IF([test "x$ax_libuuid" = xyes], + [AC_DEFINE([HAVE_UUID_UUID_H],[1],[Have uuid/uuid.h]) + AS_IF([test "x$ax_cv_libuuid_is_required" = xyes],[ LIBUUID_LIB='-luuid' ])], + [AC_DEFINE([HAVE_UUID_UUID_H],[0],[Have uuid/uuid.h]) + ]) + + AC_SUBST([LIBUUID_LIB]) + AM_CONDITIONAL([HAVE_LIBUUID],[test "x$ax_libuuid" = xyes]) ]) - 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_LIBS="$LIBS" - LIBS="$LIBUUID_LDFLAGS $LIBS" + AC_DEFUN([AX_UUID_GENERATE_TIME], + [AC_PREREQ([2.63])dnl + AC_REQUIRE([AX_UUID])dnl + AC_CACHE_CHECK([for uuid_generate_time], + [ax_cv_uuid_generate_time], + [AX_SAVE_FLAGS + LIBS="$LIBUUID_LIB $LIBS" AC_LANG_PUSH([C]) AC_RUN_IFELSE([ - AC_LANG_PROGRAM([#include ], [ + AC_LANG_PROGRAM([#include ],[ + uuid_t out; + uuid_generate_time(out); + ])], + [ax_cv_uuid_generate_time=yes], + [ax_cv_uuid_generate_time=no], + [AC_MSG_WARN([test program execution failed])]) + AC_LANG_POP + AX_RESTORE_FLAGS + ]) + + AS_IF([test "$ax_cv_uuid_generate_time" = yes], + [AC_DEFINE([HAVE_UUID_GENERATE_TIME],[1],[Define if uuid_generate_time is present in uuid/uuid.h.])], + [AC_DEFINE([HAVE_UUID_GENERATE_TIME],[0],[Define if uuid_generate_time is present in uuid/uuid.h.])]) + ]) + + AC_DEFUN([AX_UUID_GENERATE_TIME_SAFE], + [AC_PREREQ([2.63])dnl + AC_REQUIRE([AX_UUID])dnl + AC_CACHE_CHECK([for uuid_generate_time_safe], + [ax_cv_uuid_generate_time_safe], + [AX_SAVE_FLAGS + LIBS="$LIBUUID_LIB $LIBS" + AC_LANG_PUSH([C]) + AC_RUN_IFELSE([ + AC_LANG_PROGRAM([#include ],[ uuid_t out; uuid_generate_time_safe(out); ])], @@ -83,11 +115,10 @@ AC_DEFUN([AX_UUID], [ [ax_cv_uuid_generate_time_safe=no], [AC_MSG_WARN([test program execution failed])]) AC_LANG_POP - LIBS="$save_LIBS" + AX_RESTORE_FLAGS ]) - 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.])],[ - AC_DEFINE([HAVE_UUID_GENERATE_TIME_SAFE],[0],[Define if uuid_generate_time_safe is present in uuid/uuid.h.]) - ]) + 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.])], + [AC_DEFINE([HAVE_UUID_GENERATE_TIME_SAFE],[0],[Define if uuid_generate_time_safe is present in uuid/uuid.h.])]) ])