From b380dd030f5d0974250f1ea9b871aee02733c2c8 Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Sat, 10 May 2008 15:46:08 +0000 Subject: Add library checking for clock_gettime() support --- ares/acinclude.m4 | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ares/configure.ac | 6 ++++- 2 files changed, 80 insertions(+), 1 deletion(-) (limited to 'ares') diff --git a/ares/acinclude.m4 b/ares/acinclude.m4 index 544559294..2a7bc02f6 100644 --- a/ares/acinclude.m4 +++ b/ares/acinclude.m4 @@ -1283,6 +1283,81 @@ AC_DEFUN([TYPE_IN_ADDR_T], ]) dnl AC_CHECK_TYPE ]) dnl AC_DEFUN +dnl CURL_CHECK_LIBS_CLOCK_GETTIME +dnl ------------------------------------------------- +dnl Check for libraries needed for clock_gettime, +dnl and prepended to LIBS any needed libraries. + +AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME], [ + AC_REQUIRE([AC_HEADER_TIME])dnl + AC_CHECK_HEADERS(sys/types.h sys/time.h time.h) + # + AC_MSG_CHECKING([for clock_gettime in libraries]) + # + curl_cv_save_LIBS="$LIBS" + curl_cv_gclk_LIBS="unknown" + # + for x_xlibs in '' '-lrt' '-lposix4' ; do + if test -z "$x_xlibs"; then + LIBS="$curl_cv_save_LIBS" + else + LIBS="$x_xlibs $curl_cv_save_LIBS" + fi + AC_LINK_IFELSE([ + AC_LANG_PROGRAM([ +#undef inline +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_SYS_TIME_H +#include +#ifdef TIME_WITH_SYS_TIME +#include +#endif +#else +#ifdef HAVE_TIME_H +#include +#endif +#endif + ],[ + (void)clock_gettime(0, 0); + ]) + ],[ + curl_cv_gclk_LIBS="$x_xlibs" + break + ]) + done + # + LIBS="$curl_cv_save_LIBS" + # + case X-"$curl_cv_gclk_LIBS" in + X-unknown) + AC_MSG_RESULT([cannot find clock_gettime]) + ac_cv_func_clock_gettime="no" + ;; + X-) + AC_MSG_RESULT([no additional lib required]) + ac_cv_func_clock_gettime="yes" + ;; + *) + if test -z "$curl_cv_save_LIBS"; then + LIBS="$curl_cv_gclk_LIBS" + else + LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS" + fi + AC_MSG_RESULT([$curl_cv_gclk_LIBS]) + ac_cv_func_clock_gettime="yes" + ;; + esac + # + case "$ac_cv_func_clock_gettime" in + yes) + AC_DEFINE_UNQUOTED(HAVE_CLOCK_GETTIME, 1, + [Define to 1 if you have the clock_gettime function.]) + ;; + esac + # +]) dnl AC_DEFUN dnl ********************************************************************** dnl CURL_DETECT_ICC ([ACTION-IF-YES]) diff --git a/ares/configure.ac b/ares/configure.ac index a7af5a183..28f90c8ab 100644 --- a/ares/configure.ac +++ b/ares/configure.ac @@ -260,6 +260,11 @@ fi dnl socket lib? AC_CHECK_FUNC(connect, , [ AC_CHECK_LIB(socket, connect) ]) +dnl ********************************************************************** +dnl Check for libraries needed for function clock_gettime +dnl ********************************************************************** +CURL_CHECK_LIBS_CLOCK_GETTIME + AC_MSG_CHECKING([whether to use libgcc]) AC_ARG_ENABLE(libgcc, AC_HELP_STRING([--enable-libgcc],[use libgcc when linking]), @@ -644,7 +649,6 @@ AC_CHECK_MEMBER(struct addrinfo.ai_flags, AC_CHECK_FUNCS( bitncmp \ gettimeofday \ - clock_gettime \ if_indextoname, dnl if found [], -- cgit v1.2.3