Erroneous usage of __LONGDOUBLE128 (which was introduced to GCC for AIX support) was causing mathinline.h to lack an implementation of __signbitl for powerpc32. This caused checklocal-plt make check failure for PowerPC. The correct define to use is __LONG_DOUBLE_128__. diff -X /home/ryanarn/bin/dontdiff -uNr glibc/sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h glibc.new/sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h --- glibc/sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h 2008-08-07 10:54:03.000000000 -0500 +++ glibc.new/sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h 2008-08-07 16:17:36.000000000 -0500 @@ -72,7 +72,7 @@ __extension__ union { double __d; int __i[2]; } __u = { __d: __x }; return __u.__i[0] < 0; } -# ifdef __LONGDOUBLE128 +# ifdef __LONG_DOUBLE_128__ __MATH_INLINE int __NTH (__signbitl (long double __x)) { I'll post this to mainline with a ChangeLog after full testing with GCC 4.1 & GCC 4.3 compilers and on different PowerPC arches.
Applied to cvs.