gallium: fix gcc compile errors when using _XOPEN_SOURCE=600 but not std=c99
authorJose Fonseca <jfonseca@vmware.com>
Thu, 2 Apr 2015 15:35:16 +0000 (17:35 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Fri, 3 Apr 2015 17:22:09 +0000 (19:22 +0200)
The fpclassify stuff either needs std=c99 or _XOPEN_SOURCE=600 passed
to gcc, but when using the latter the lrint family of function will be defined
too.

include/c99_math.h

index ee0dd105e4989952a1d778bc69cf737ea06fc6e4..7ed7cc22176c45e4c93700eef5ec0d0ee598cffe 100644 (file)
@@ -83,7 +83,11 @@ roundf(float x)
 
 
 #if (defined(_MSC_VER) && _MSC_VER < 1800) || \
-    (!defined(_MSC_VER) && __STDC_VERSION__ < 199901L && !defined(__cplusplus))
+    (!defined(_MSC_VER) && \
+     __STDC_VERSION__ < 199901L && \
+     (!defined(_XOPEN_SOURCE) || _XOPEN_SOURCE < 600) && \
+     !defined(__cplusplus))
+
 static inline long int
 lrint(double d)
 {
@@ -135,6 +139,7 @@ llrintf(float f)
 
    return rounded;
 }
+
 #endif /* C99 */