Second set of fixes for Android #284

This commit is contained in:
Christophe Riccio 2014-12-09 23:54:03 +01:00
parent c02d031eaf
commit e4ccd06e29
7 changed files with 23 additions and 23 deletions

View file

@ -546,7 +546,7 @@ namespace detail
{
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'isnan' only accept floating-point inputs");
# if GLM_LANG & GLM_LANG_CXX11_FLAG
# if GLM_HAS_CXX11_STL
return std::isnan(x);
# elif GLM_COMPILER & (GLM_COMPILER_VC | GLM_COMPILER_INTEL)
return _isnan(x) != 0;
@ -580,17 +580,17 @@ namespace detail
{
GLM_STATIC_ASSERT(std::numeric_limits<genType>::is_iec559, "'isinf' only accept floating-point inputs");
# if(GLM_LANG & GLM_LANG_CXX11_FLAG)
# if GLM_HAS_CXX11_STL
return std::isinf(x);
# elif(GLM_COMPILER & (GLM_COMPILER_INTEL | GLM_COMPILER_VC))
# elif GLM_COMPILER & (GLM_COMPILER_INTEL | GLM_COMPILER_VC)
return _fpclass(x) == _FPCLASS_NINF || _fpclass(x) == _FPCLASS_PINF;
# elif(GLM_COMPILER & (GLM_COMPILER_GCC | (GLM_COMPILER_APPLE_CLANG | GLM_COMPILER_LLVM)))
# elif GLM_COMPILER & (GLM_COMPILER_GCC | (GLM_COMPILER_APPLE_CLANG | GLM_COMPILER_LLVM))
# if(GLM_PLATFORM & GLM_PLATFORM_ANDROID && __cplusplus < 201103L)
return _isinf(x) != 0;
# else
return std::isinf(x);
# endif
# elif(GLM_COMPILER & GLM_COMPILER_CUDA)
# elif GLM_COMPILER & GLM_COMPILER_CUDA
// http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/docs/online/group__CUDA__MATH__DOUBLE_g13431dd2b40b51f9139cbb7f50c18fab.html#g13431dd2b40b51f9139cbb7f50c18fab
return isinf(double(x)) != 0;
# else

View file

@ -39,7 +39,7 @@
namespace glm{
namespace detail
{
# if GLM_LANG & GLM_LANG_CXX11_FLAG
# if GLM_HAS_CXX11_STL
using std::log2;
# else
template <typename genType>

View file

@ -162,7 +162,7 @@ namespace glm
}
// asinh
# if GLM_LANG & GLM_LANG_CXX11_FLAG
# if GLM_HAS_CXX11_STL
using std::asinh;
# else
template <typename genType>
@ -181,7 +181,7 @@ namespace glm
}
// acosh
# if GLM_LANG & GLM_LANG_CXX11_FLAG
# if GLM_HAS_CXX11_STL
using std::acosh;
# else
template <typename genType>
@ -202,7 +202,7 @@ namespace glm
}
// atanh
# if GLM_LANG & GLM_LANG_CXX11_FLAG
# if GLM_HAS_CXX11_STL
using std::atanh;
# else
template <typename genType>

View file

@ -420,17 +420,17 @@
#if defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_LANG_DISPLAYED)
# define GLM_MESSAGE_LANG_DISPLAYED
# if(GLM_LANG & GLM_LANG_CXXGNU_FLAG)
# if GLM_LANG & GLM_LANG_CXXGNU_FLAG
# pragma message("GLM: C++ with language extensions")
# elif(GLM_LANG & GLM_LANG_CXXMS_FLAG)
# elif GLM_LANG & GLM_LANG_CXXMS_FLAG
# pragma message("GLM: C++ with language extensions")
# elif(GLM_LANG & GLM_LANG_CXX11_FLAG)
# elif GLM_LANG & GLM_LANG_CXX11_FLAG
# pragma message("GLM: C++11")
# elif(GLM_LANG & GLM_LANG_CXX0X_FLAG)
# elif GLM_LANG & GLM_LANG_CXX0X_FLAG
# pragma message("GLM: C++0x")
# elif(GLM_LANG & GLM_LANG_CXX03_FLAG)
# elif GLM_LANG & GLM_LANG_CXX03_FLAG
# pragma message("GLM: C++03")
# elif(GLM_LANG & GLM_LANG_CXX98_FLAG)
# elif GLM_LANG & GLM_LANG_CXX98_FLAG
# pragma message("GLM: C++98")
# else
# pragma message("GLM: C++ language undetected")

View file

@ -203,7 +203,7 @@ namespace glm
template <>
GLM_FUNC_QUALIFIER float next_float(float const & x)
{
# if((GLM_LANG & GLM_LANG_CXX11_FLAG) && !(GLM_PLATFORM & GLM_PLATFORM_ANDROID))
# if GLM_HAS_CXX11_STL
return std::nextafter(x, std::numeric_limits<float>::max());
# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return detail::nextafterf(x, FLT_MAX);
@ -217,7 +217,7 @@ namespace glm
template <>
GLM_FUNC_QUALIFIER double next_float(double const & x)
{
# if((GLM_LANG & GLM_LANG_CXX11_FLAG) && !(GLM_PLATFORM & GLM_PLATFORM_ANDROID))
# if GLM_HAS_CXX11_STL
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());
@ -239,7 +239,7 @@ namespace glm
GLM_FUNC_QUALIFIER float prev_float(float const & x)
{
# if((GLM_LANG & GLM_LANG_CXX11_FLAG) && !(GLM_PLATFORM & GLM_PLATFORM_ANDROID))
# if GLM_HAS_CXX11_STL
return std::nextafter(x, std::numeric_limits<float>::min());
# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return detail::nextafterf(x, FLT_MIN);
@ -252,7 +252,7 @@ namespace glm
GLM_FUNC_QUALIFIER double prev_float(double const & x)
{
# if((GLM_LANG & GLM_LANG_CXX11_FLAG) && !(GLM_PLATFORM & GLM_PLATFORM_ANDROID))
# if GLM_HAS_CXX11_STL
return std::nextafter(x, std::numeric_limits<double>::min());
# elif((GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS)))
return _nextafter(x, DBL_MIN);

View file

@ -39,7 +39,7 @@ namespace glm
{
GLM_STATIC_ASSERT(std::numeric_limits<T>::is_iec559, "'isdenormal' only accept floating-point inputs");
# if(GLM_LANG & GLM_LANG_CXX11_FLAG)
# if GLM_HAS_CXX11_STL
return std::fpclassify(x) == FP_SUBNORMAL;
# else
return x != static_cast<T>(0) && std::fabs(x) < std::numeric_limits<T>::min();

View file

@ -39,11 +39,11 @@ namespace glm
GLM_FUNC_QUALIFIER bool isfinite(
genType const & x)
{
# if(GLM_LANG & GLM_LANG_CXX11_FLAG)
# if GLM_HAS_CXX11_STL
return std::isfinite(x) != 0;
# elif(GLM_COMPILER & GLM_COMPILER_VC)
# elif GLM_COMPILER & GLM_COMPILER_VC
return _finite(x);
# elif(GLM_COMPILER & GLM_COMPILER_GCC && GLM_PLATFORM & GLM_PLATFORM_ANDROID)
# elif GLM_COMPILER & GLM_COMPILER_GCC && GLM_PLATFORM & GLM_PLATFORM_ANDROID
return _isfinite(x) != 0;
# else
return x >= std::numeric_limits<genType>::min() && x <= std::numeric_limits<genType>::max();