diff options
author | Dmitry Antipov <dmantipov@yandex.ru> | 2014-07-28 10:28:15 +0400 |
---|---|---|
committer | Dmitry Antipov <dmantipov@yandex.ru> | 2014-07-28 10:28:15 +0400 |
commit | 768b24eb0e880c0b39e36fd089905cdca572a758 (patch) | |
tree | 75899b103fedc549e5d17294d39bfcb4ed0a9bc9 /m4 | |
parent | 7daa4ff121ad8da6e609b959d5c95796e5d3a9eb (diff) | |
download | emacs-768b24eb0e880c0b39e36fd089905cdca572a758.tar.gz |
On GNU/Linux, use timerfd for asynchronous timers.
* configure.ac (toplevel): Check whether GNU/Linux-specific
timerfd functions and macros are available.
* m4/clock_time.m4 (gl_CLOCK_TIME): Check for clock_getres as well.
* src/atimer.c (toplevel) [HAVE_TIMERFD]: Include sys/timerfd.h.
(toplevel): Rename alarm_timer_ok to special_timer_available.
[HAVE_TIMERFD]: Declare timerfd.
[HAVE_CLOCK_GETRES]: Declare resolution.
(start_atimer) [HAVE_CLOCK_GETRES]: Round up timestamp to
system timer resolution.
(set_alarm) [HAVE_TIMERFD]: Use timerfd_settime.
(timerfd_callback) [HAVE_TIMERFD]: New function.
(atimer_result, debug_timer_callback, Fdebug_timer_check)
[ENABLE_CHECKING]: New function for the sake of automated tests.
(init_atimer) [HAVE_TIMERFD]: Setup timerfd.
[HAVE_CLOCK_GETRES]: Likewise for system timer resolution.
[ENABLE_CHECKING]: Defsubr test function.
* src/atimer.h (timerfd_callback) [HAVE_TIMERFD]: Add prototype.
* src/lisp.h (add_timer_wait_descriptor) [HAVE_TIMERFD]: Likewise.
* src/process.c (add_timer_wait_descriptor) [HAVE_TIMERFD]: New function.
* test/automated/timer-tests.el (timer-tests-debug-timer-check): New test.
Diffstat (limited to 'm4')
-rw-r--r-- | m4/clock_time.m4 | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/m4/clock_time.m4 b/m4/clock_time.m4 index 6c4a637dc62..8513c6d781a 100644 --- a/m4/clock_time.m4 +++ b/m4/clock_time.m4 @@ -26,6 +26,6 @@ AC_DEFUN([gl_CLOCK_TIME], AC_SEARCH_LIBS([clock_gettime], [rt posix4], [test "$ac_cv_search_clock_gettime" = "none required" || LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime]) - AC_CHECK_FUNCS([clock_gettime clock_settime]) + AC_CHECK_FUNCS([clock_getres clock_gettime clock_settime]) LIBS=$gl_saved_libs ]) |