summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2023-02-18 10:00:10 -0500
committerMatthias Clasen <mclasen@redhat.com>2023-02-18 10:41:02 -0500
commit6cb612ac15923844155885b7eaa02764de84936e (patch)
tree5905a2240a6e3787d3ca0b1cb966ae77ba2c0c03 /tests
parent9f64202a60e587871cfcd60a150ca814b1d75970 (diff)
downloadgtk+-6cb612ac15923844155885b7eaa02764de84936e.tar.gz
gtk-demo: Fix build without sincos
We are getting into trouble here if sincos isn't detected but still present in headers. Avoid that. Also fix the other copy of gtkgears.c.
Diffstat (limited to 'tests')
-rw-r--r--tests/gtkgears.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/tests/gtkgears.c b/tests/gtkgears.c
index 2ece67dcf9..4e1f6135f5 100644
--- a/tests/gtkgears.c
+++ b/tests/gtkgears.c
@@ -48,14 +48,16 @@
#define VERTICES_PER_TOOTH 34
#define GEAR_VERTEX_STRIDE 6
-#ifndef HAVE_SINCOS
-static void
-sincos (double x, double *_sin, double *_cos)
+static inline void
+_sincos (double x, double *_sin, double *_cos)
{
+#ifdef HAVE_SINCOS
+ sincos (x, _sin, _cos);
+#else
*_sin = sin (x);
*_cos = cos (x);
-}
#endif
+}
/**
* Struct describing the vertices in triangle strip
@@ -306,11 +308,11 @@ create_gear (GLfloat inner_radius,
struct point p[7];
/* Calculate needed sin/cos for various angles */
- sincos(i * 2.0 * G_PI / teeth + da * 0, &s[0], &c[0]);
- sincos(i * 2.0 * M_PI / teeth + da * 1, &s[1], &c[1]);
- sincos(i * 2.0 * M_PI / teeth + da * 2, &s[2], &c[2]);
- sincos(i * 2.0 * M_PI / teeth + da * 3, &s[3], &c[3]);
- sincos(i * 2.0 * M_PI / teeth + da * 4, &s[4], &c[4]);
+ _sincos(i * 2.0 * G_PI / teeth + da * 0, &s[0], &c[0]);
+ _sincos(i * 2.0 * M_PI / teeth + da * 1, &s[1], &c[1]);
+ _sincos(i * 2.0 * M_PI / teeth + da * 2, &s[2], &c[2]);
+ _sincos(i * 2.0 * M_PI / teeth + da * 3, &s[3], &c[3]);
+ _sincos(i * 2.0 * M_PI / teeth + da * 4, &s[4], &c[4]);
GEAR_POINT(p[0], r2, 1);
GEAR_POINT(p[1], r2, 2);
@@ -519,7 +521,7 @@ static void perspective(GLfloat *m, GLfloat fovy, GLfloat aspect, GLfloat zNear,
identity(tmp);
deltaZ = zFar - zNear;
- sincos(radians, &sine, &cosine);
+ _sincos(radians, &sine, &cosine);
if ((deltaZ == 0) || (sine == 0) || (aspect == 0))
return;