diff --git a/configure.ac b/configure.ac index 1b1f1add..80fb1245 100644 --- a/configure.ac +++ b/configure.ac @@ -81,9 +81,18 @@ AC_FUNC_STRFTIME AC_FUNC_STRTOD AC_CHECK_FUNCS([getaddrinfo gethostbyname localtime_r memmove memset mkdir select snprintf socket strcasecmp strchr strdup strerror strncasecmp strcasestr strrchr strstr strtol uname vsnprintf]) +# Check for clock_gettime +LIBS_save="$LIBS"; LIBS="" +AC_SEARCH_LIBS([clock_gettime], [rt], [ac_cv_clock_gettime=1; EXTRA_LIBS="$EXTRA_LIBS $LIBS"], + [ac_cv_clock_gettime=0]) +AC_DEFINE_UNQUOTED(HAVE_CLOCK_GETTIME, $ac_cv_clock_gettime, [Define to 1 if we have clock_gettime]) +LIBS="$LIBS_save" # Check for dlopen -AC_SEARCH_LIBS([dlopen], [dl], [ac_cv_dlopen=1], [ac_cv_dlopen=0]) +LIBS_save="$LIBS"; LIBS="" +AC_SEARCH_LIBS([dlopen], [dl], [ac_cv_dlopen=1; EXTRA_LIBS="$EXTRA_LIBS $LIBS"], [ac_cv_dlopen=0]) AC_DEFINE_UNQUOTED(HAVE_DLOPEN, $ac_cv_dlopen, [Define to 1 if we have dlopen]) +LIBS="$LIBS_save" +AC_SUBST([EXTRA_LIBS]) AC_PRESERVE_HELP_ORDER diff --git a/m4/static.m4 b/m4/static.m4 index 463142d0..4d32f89e 100644 --- a/m4/static.m4 +++ b/m4/static.m4 @@ -6,8 +6,4 @@ AC_DEFUN([AC_FLDIGI_STATIC], [ *) AC_MSG_ERROR([bad value ${enableval} for --enable-static]) ;; esac], [ac_cv_static=no]) - if test "x$ac_cv_static" = "xyes"; then - AC_CHECK_LIB([rt], [clock_gettime], [RTLIB=-lrt]) - fi - AC_SUBST([RTLIB]) ]) diff --git a/src/Makefile.am b/src/Makefile.am index a65e9fbb..a8491649 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -15,7 +15,7 @@ AM_CFLAGS = $(AM_CXXFLAGS) AM_LDFLAGS = @MAC_UNIVERSAL_LDFLAGS@ LDADD = @PORTAUDIO_LIBS@ @BOOST_LDFLAGS@ @FLTK_LIBS@ @SNDFILE_LIBS@ \ - @SAMPLERATE_LIBS@ @PULSEAUDIO_LIBS@ @HAMLIB_LIBS@ @IMAGE_LIBS@ @XMLRPC_LIBS@ @RTLIB@ + @SAMPLERATE_LIBS@ @PULSEAUDIO_LIBS@ @HAMLIB_LIBS@ @IMAGE_LIBS@ @XMLRPC_LIBS@ @EXTRA_LIBS@ HAMLIB_SRC = include/hamlib.h rigcontrol/hamlib.cxx include/rigclass.h rigcontrol/rigclass.cxx diff --git a/src/main.cxx b/src/main.cxx index 56e5bbea..d639fcea 100644 --- a/src/main.cxx +++ b/src/main.cxx @@ -765,10 +765,18 @@ double speed_test(int converter, unsigned repeat) src_simple(&src, SRC_SINC_FASTEST, 1); struct timespec t0, t1; +#ifdef _POSIX_MONOTONIC_CLOCK + clock_gettime(CLOCK_MONOTONIC, &t0); +#else clock_gettime(CLOCK_REALTIME, &t0); +#endif for (unsigned i = 0; i < repeat; i++) src_simple(&src, SRC_SINC_FASTEST, 1); +#ifdef _POSIX_MONOTONIC_CLOCK + clock_gettime(CLOCK_MONOTONIC, &t1); +#else clock_gettime(CLOCK_REALTIME, &t1); +#endif delete [] src.data_in; delete [] src.data_out;