# vim:expandtab:shiftwidth=2:tabstop=2:smarttab: # =========================================================================== # https://github.com/BrianAker/ddm4 # =========================================================================== # # SYNOPSIS # # AX_UUID() # AX_UUID_GENERATE_TIME() # AX_UUID_GENERATE_TIME_SAFE() # # DESCRIPTION # # Check for uuid, uuid_generate_time, and uuid_generate_time_safe support. # # LICENSE # # 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 7 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=yes], [AC_MSG_WARN([test program execution failed])]) AC_LANG_POP ]) 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 ], [ uuid_t out; uuid_generate(out); ])], [ax_cv_libuuid_works=yes], [ax_cv_libuuid_works=no], [AC_MSG_WARN([test program execution failed])]) AC_LANG_POP AX_RESTORE_FLAGS]) ]) 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 "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], [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 ],[ 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); ])], [ax_cv_uuid_generate_time_safe=yes], [ax_cv_uuid_generate_time_safe=no], [AC_MSG_WARN([test program execution failed])]) AC_LANG_POP 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.])]) ])