Fix 'nextafter*' for android build issue. #217
diff --git a/glm/gtc/ulp.inl b/glm/gtc/ulp.inl
index 91846b2..be2770f 100644
--- a/glm/gtc/ulp.inl
+++ b/glm/gtc/ulp.inl
@@ -204,7 +204,7 @@
# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return detail::nextafterf(x, FLT_MAX);
# elif(GLM_PLATFORM & GLM_PLATFORM_ANDROID)
- return _nextafterf(x, FLT_MAX);
+ return __builtin_nextafterf(x, FLT_MAX);
# else
return nextafterf(x, FLT_MAX);
# endif
@@ -217,6 +217,8 @@
return std::nextafter(x, std::numeric_limits<double>::max());
# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return detail::nextafter(x, std::numeric_limits<double>::max());
+# elif(GLM_PLATFORM & GLM_PLATFORM_ANDROID)
+ return __builtin_nextafter(x, FLT_MAX);
# else
return nextafter(x, DBL_MAX);
# endif
@@ -238,7 +240,7 @@
# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return detail::nextafterf(x, FLT_MIN);
# elif(GLM_PLATFORM & GLM_PLATFORM_ANDROID)
- return _nextafterf(x, FLT_MIN);
+ return __builtin_nextafterf(x, FLT_MIN);
# else
return nextafterf(x, FLT_MIN);
# endif
@@ -248,8 +250,10 @@
{
# if((GLM_LANG & GLM_LANG_CXX11_FLAG) && !(GLM_PLATFORM & GLM_PLATFORM_ANDROID))
return std::nextafter(x, std::numeric_limits<double>::min());
-# elif((GLM_PLATFORM & GLM_PLATFORM_ANDROID) || (GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
+# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return _nextafter(x, DBL_MIN);
+# elif(GLM_PLATFORM & GLM_PLATFORM_ANDROID)
+ return __builtin_nextafter(x, DBL_MIN);
# else
return nextafter(x, DBL_MIN);
# endif
diff --git a/readme.txt b/readme.txt
index 5581eb2..cc17c1f 100644
--- a/readme.txt
+++ b/readme.txt
@@ -50,7 +50,7 @@
================================================================================
GLM 0.9.5.5: 2014-XX-XX
--------------------------------------------------------------------------------
-- Fixed std::nextafter not supported with C++11 on Android #213
+- Fixed std::nextafter not supported with C++11 on Android #217
- Fixed missing value_type for dual quaternion
- Fixed return type of dual quaternion length
- Fixed infinite loop in isfinite function with GCC #221