From 162aa52538d38a0ca7f7969f79b1e1cd7f708e3c Mon Sep 17 00:00:00 2001 From: Ken Brown Date: Sun, 17 Feb 2019 12:10:26 -0500 Subject: [PATCH] Use 'timer_getoverrun' on Cygwin when possible * configure.ac: Add a check for the 'timer_getoverrun' function. * src/profiler.c [CYGWIN] : Define 'timer_getoverrun' as a macro only on versions of Cygwin where it is not already defined as a function. --- configure.ac | 2 +- src/profiler.c | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index 58579008f3..c26eb6d1e8 100644 --- a/configure.ac +++ b/configure.ac @@ -4126,7 +4126,7 @@ AC_DEFUN lrand48 random rint trunc \ select getpagesize setlocale newlocale \ getrlimit setrlimit shutdown \ -pthread_sigmask strsignal setitimer \ +pthread_sigmask strsignal setitimer timer_getoverrun \ sendto recvfrom getsockname getifaddrs freeifaddrs \ gai_strerror sync \ getpwent endpwent getgrent endgrent \ diff --git a/src/profiler.c b/src/profiler.c index 15a0eef0d3..293e52633a 100644 --- a/src/profiler.c +++ b/src/profiler.c @@ -232,9 +232,10 @@ static EMACS_INT current_sampling_interval; /* Signal handler for sampling profiler. */ -/* timer_getoverrun is not implemented on Cygwin, but the following - seems to be good enough for profiling. */ -#ifdef CYGWIN +/* timer_getoverrun is not implemented on Cygwin prior to + cygwin-3.0.0, but the following seems to be good enough for + profiling. */ +#if defined CYGWIN && !defined HAVE_TIMER_GETOVERRUN #define timer_getoverrun(x) 0 #endif -- 2.17.0