On 01/17/2015 07:10 AM, Felix Janda wrote: > Fixes compilation with musl libc. > --- > src/mesa/main/querymatrix.c | 16 +++++----------- > 1 file changed, 5 insertions(+), 11 deletions(-) > > diff --git a/src/mesa/main/querymatrix.c b/src/mesa/main/querymatrix.c > index eb36c76..57c536f 100644 > --- a/src/mesa/main/querymatrix.c > +++ b/src/mesa/main/querymatrix.c > @@ -37,8 +37,10 @@ > #define INT_TO_FIXED(x) ((GLfixed) ((x) << 16)) > #define FLOAT_TO_FIXED(x) ((GLfixed) ((x) * 65536.0)) > > -#if defined(_MSC_VER) > -#if _MSC_VER < 1800 /* Not required on VS2013 and above. */ > +#if defined(fpclassify) > +/* fpclassify is available. */
At first I thought, "This is hinky because it assumes that fpclassify is a #define." After that I looked up the documentation of fpclassify, and I found, "ISO C99 defines macros that let you determine what sort of floating-point number a variable holds." Could we change the comment here to be: /* ISO C99 says that fpclassify is a macro. Assume that any implementation * of fpclassify, whether it's in a C99 compiler or not, will be a macro. */ That way the next person doesn't have to do the same research. With that change, the patch is Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> > +#elif defined(_MSC_VER) > +/* Not required on VS2013 and above. */ > /* Oddly, the fpclassify() function doesn't exist in such a form > * on MSVC. This is an implementation using slightly different > * lower-level Windows functions. > @@ -71,16 +73,8 @@ fpclassify(double x) > return FP_NAN; > } > } > -#endif /* _MSC_VER < 1800 */ > - > -#elif defined(__APPLE__) || defined(__CYGWIN__) || defined(__FreeBSD__) || \ > - defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) > || \ > - (defined(__sun) && defined(__C99FEATURES__)) || defined(__MINGW32__) || > \ > - (defined(__sun) && defined(__GNUC__)) || defined(ANDROID) || > defined(__HAIKU__) > - > -/* fpclassify is available. */ > > -#elif !defined(_XOPEN_SOURCE) || _XOPEN_SOURCE < 600 > +#else > > enum {FP_NAN, FP_INFINITE, FP_ZERO, FP_SUBNORMAL, FP_NORMAL} > fpclassify(double x) > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev