1# clock_time.m4 serial 8
2dnl Copyright (C) 2002-2006 Free Software Foundation, Inc.
3dnl This file is free software; the Free Software Foundation
4dnl gives unlimited permission to copy and/or distribute it,
5dnl with or without modifications, as long as this notice is preserved.
6
7# Check for clock_gettime and clock_settime, and set LIB_CLOCK_GETTIME.
8# For a program named, say foo, you should add a line like the following
9# in the corresponding Makefile.am file:
10# foo_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME)
11
12AC_DEFUN([gl_CLOCK_TIME],
13[
14  dnl Persuade glibc and Solaris <time.h> to declare these functions.
15  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
16
17  # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function.
18  # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
19
20  # Save and restore LIBS so e.g., -lrt, isn't added to it.  Otherwise, *all*
21  # programs in the package would end up linked with that potentially-shared
22  # library, inducing unnecessary run-time overhead.
23  gl_saved_libs=$LIBS
24    AC_SEARCH_LIBS(clock_gettime, [rt posix4],
25                   [test "$ac_cv_search_clock_gettime" = "none required" ||
26                    LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
27    AC_SUBST([LIB_CLOCK_GETTIME])
28    AC_CHECK_FUNCS(clock_gettime clock_settime)
29  LIBS=$gl_saved_libs
30])
31