build: tms470: work around glibc math.h problems
authorMans Rullgard <mans@mansr.com>
Sat, 13 Oct 2012 02:16:13 +0000 (03:16 +0100)
committerMans Rullgard <mans@mansr.com>
Sat, 13 Oct 2012 17:21:36 +0000 (18:21 +0100)
The glibc definitions of INFINITY and NAN do not work with the
tms470 compiler, nor do our usual fallbacks.

Signed-off-by: Mans Rullgard <mans@mansr.com>
compat/tms470/math.h [new file with mode: 0644]
configure

diff --git a/compat/tms470/math.h b/compat/tms470/math.h
new file mode 100644 (file)
index 0000000..1104d74
--- /dev/null
@@ -0,0 +1,7 @@
+#include_next <math.h>
+
+#undef INFINITY
+#undef NAN
+
+#define INFINITY (*(const float*)((const unsigned []){ 0x7f800000 }))
+#define NAN      (*(const float*)((const unsigned []){ 0x7fc00000 }))
index 3e29909..d8a5728 100755 (executable)
--- a/configure
+++ b/configure
@@ -2911,6 +2911,7 @@ test -n "$libc_type" && enable $libc_type
 # hacks for compiler/libc/os combinations
 
 if enabled_all tms470 glibc; then
 # hacks for compiler/libc/os combinations
 
 if enabled_all tms470 glibc; then
+    CPPFLAGS="-I${source_path}/compat/tms470 ${CPPFLAGS}"
     add_cppflags -D__USER_LABEL_PREFIX__=
     add_cppflags -D__builtin_memset=memset
     add_cppflags -D__gnuc_va_list=va_list -D_VA_LIST_DEFINED
     add_cppflags -D__USER_LABEL_PREFIX__=
     add_cppflags -D__builtin_memset=memset
     add_cppflags -D__gnuc_va_list=va_list -D_VA_LIST_DEFINED