aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt5
-rw-r--r--OpenAL32/Include/alu.h26
2 files changed, 3 insertions, 28 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5f08d736..64656c45 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -275,10 +275,11 @@ CHECK_SYMBOL_EXISTS(floorf math.h HAVE_FLOORF)
IF(HAVE_FENV_H)
CHECK_SYMBOL_EXISTS(fesetround fenv.h HAVE_FESETROUND)
ENDIF()
+IF(HAVE_FLOAT_H)
+ CHECK_SYMBOL_EXISTS(_controlfp float.h HAVE__CONTROLFP)
+ENDIF()
CHECK_FUNCTION_EXISTS(strtof HAVE_STRTOF)
-CHECK_FUNCTION_EXISTS(_controlfp HAVE__CONTROLFP)
-
CHECK_FUNCTION_EXISTS(stat HAVE_STAT)
CHECK_FUNCTION_EXISTS(strcasecmp HAVE_STRCASECMP)
IF(NOT HAVE_STRCASECMP)
diff --git a/OpenAL32/Include/alu.h b/OpenAL32/Include/alu.h
index 951ef0d7..94e3dc17 100644
--- a/OpenAL32/Include/alu.h
+++ b/OpenAL32/Include/alu.h
@@ -9,32 +9,6 @@
#include <math.h>
#ifdef HAVE_FLOAT_H
#include <float.h>
-/* HACK: Seems cross-compiling with MinGW includes the wrong float.h, which
- * doesn't define Windows' _controlfp and related macros */
-#if defined(__MINGW32__) && !defined(_RC_CHOP)
-/* Control word masks for unMask */
-#define _MCW_EM 0x0008001F /* Error masks */
-#define _MCW_IC 0x00040000 /* Infinity */
-#define _MCW_RC 0x00000300 /* Rounding */
-#define _MCW_PC 0x00030000 /* Precision */
-/* Control word values for unNew (use with related unMask above) */
-#define _EM_INVALID 0x00000010
-#define _EM_DENORMAL 0x00080000
-#define _EM_ZERODIVIDE 0x00000008
-#define _EM_OVERFLOW 0x00000004
-#define _EM_UNDERFLOW 0x00000002
-#define _EM_INEXACT 0x00000001
-#define _IC_AFFINE 0x00040000
-#define _IC_PROJECTIVE 0x00000000
-#define _RC_CHOP 0x00000300
-#define _RC_UP 0x00000200
-#define _RC_DOWN 0x00000100
-#define _RC_NEAR 0x00000000
-#define _PC_24 0x00020000
-#define _PC_53 0x00010000
-#define _PC_64 0x00000000
-_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _controlfp (unsigned int unNew, unsigned int unMask);
-#endif
#endif
#ifdef HAVE_IEEEFP_H
#include <ieeefp.h>