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