diff options
author | Alan Coopersmith <alan.coopersmith@oracle.com> | 2022-04-04 16:51:04 -0700 |
---|---|---|
committer | Alan Coopersmith <alan.coopersmith@oracle.com> | 2022-04-04 16:51:04 -0700 |
commit | 96934f4472f10a1e5fcf53f6cbb9c88d743fa520 (patch) | |
tree | 5eb22b4e625d3dcfdc1eb4cfef0dc7b4758b405b | |
parent | 7126b722a055545d25291cd10076f4c3fe52f039 (diff) |
Fall back to sin() and cos() calls on systems without sincos()
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-rw-r--r-- | Clock.c | 9 | ||||
-rw-r--r-- | configure.ac | 4 |
2 files changed, 11 insertions, 2 deletions
@@ -1734,7 +1734,14 @@ erase_hands(ClockWidget w, struct tm *tm) static void ClockAngle(double tick_units, double *sinp, double *cosp) { - sincos(tick_units * (M_PI / 180 / 10.0), sinp, cosp); + double angle = tick_units * (M_PI / 180 / 10.0); + +#ifdef HAVE_SINCOS + sincos(angle, sinp, cosp); +#else + *sinp = sin(angle); + *cosp = cos(angle); +#endif } /* diff --git a/configure.ac b/configure.ac index eb79e69..a310d50 100644 --- a/configure.ac +++ b/configure.ac @@ -53,7 +53,9 @@ if test x$use_xft != xno ; then PKG_CHECK_MODULES(XFT, [xrender xft]) # Solaris 11 has sqrt in libc but needs libm for sincos AC_SEARCH_LIBS(sqrt, [m]) - AC_SEARCH_LIBS(sincos, [m]) + AC_SEARCH_LIBS(sincos, [m], + AC_DEFINE([HAVE_SINCOS], [1], + [Define to 1 if you have the `sincos' function.])) XCLOCK_CFLAGS="$XCLOCK_CFLAGS $XFT_CFLAGS" XCLOCK_LIBS="$XCLOCK_LIBS $XFT_LIBS" AC_DEFINE([XRENDER],1,[Define to use X Render Extension]) |