Hi Rene & List,
Cross building for Mips64,
During the 2nd pass of glibc (after building gcc)
I got the following failure:
make[2]: ***
[/opt/T2/t2-trunk/src.glibc.GW-Octeon-64.20100201.193115.9580.ubuntu1/glibc-2.11.1/objdir/math/s_copysign.o]
Error 1
make[2]: *** Waiting for unfinished jobs....
../sysdeps/ieee754/dbl-64/s_scalbn.c: In function '__scalbn':
./math_private.h:214: warning: inlining failed in call to '__copysign':
call is unlikely and code size would grow
../sysdeps/ieee754/dbl-64/s_scalbn.c:57: warning: called from here
./math_private.h:214: warning: inlining failed in call to '__copysign':
call is unlikely and code size would grow
../sysdeps/ieee754/dbl-64/s_scalbn.c:61: warning: called from here
make[2]: Leaving directory
`/opt/T2/t2-trunk/src.glibc.GW-Octeon-64.20100201.193115.9580.ubuntu1/glibc-2.11.1/math'
make[1]: *** [math/subdir_lib] Error
2
../sysdeps/ieee754/dbl-64/s_copysign.c:27: error: redefinition of
'__copysign'
./math_private.h:214: note: previous definition of '__copysign' was here
make[2]: ***
[/opt/T2/t2-trunk/src.glibc.GW-Octeon-64.20100201.193115.9580.ubuntu1/glibc-2.11.1/objdir/math/s_copysign.o]
Error 1
make[2]: *** Waiting for unfinished jobs....
../sysdeps/ieee754/dbl-64/s_scalbn.c: In function '__scalbn':
./math_private.h:214: warning: inlining failed in call to '__copysign':
call is unlikely and code size would grow
../sysdeps/ieee754/dbl-64/s_scalbn.c:57: warning: called from here
./math_private.h:214: warning: inlining failed in call to '__copysign':
call is unlikely and code size would grow
../sysdeps/ieee754/dbl-64/s_scalbn.c:61: warning: called from here
make[2]: Leaving directory
`/opt/T2/t2-trunk/src.glibc.GW-Octeon-64.20100201.193115.9580.ubuntu1/glibc-2.11.1/math'
make[1]: *** [math/subdir_lib] Error 2
make[1]: Leaving directory
`/opt/T2/t2-trunk/src.glibc.GW-Octeon-64.20100201.193115.9580.ubuntu1/glibc-2.11.1'
make: *** [all] Error 2
Seems like it needs the -fgnu89-inline option to compile.
was not able to get it to work by stoking config.cache, but it did work
when I added it directly to the gcc options:
Changes below:
Index: package/base/glibc/glibc.conf
===================================================================
--- package/base/glibc/glibc.conf (revision 35446)
+++ package/base/glibc/glibc.conf (working copy)
@@ -36,6 +36,14 @@
var_insert GCC_WRAPPER_INSERT ' ' '-O'
var_remove SYSGCC_WRAPPER_INSERT ' ' '-O0'
+# On Mips64 the following fails unless we build with: -fgnu89-inline
+# "sysdeps/ieee754/dbl-64/s_copysign.c:27: error: redefinition of
'__copysign'"
+# Tweaking libc_cv_gnu89_inline in config.cache did not help,
+# so we will directly jam the -fgnu89-inline compiler option directly
into gcc
+if [ $arch = mips64 ] ; then
+ var_insert GCC_WRAPPER_INSERT ' ' '-fgnu89-inline'
+fi
+
# does currently not inline all necessary with -Os
# glibc-2.7/objdir/libc_pic.os: In function `faccessat':
(.text+0x7bfaf): undefined reference to `fstatat64'
GCC_WRAPPER_INSERT="${GCC_WRAPPER_INSERT//-Os/-O2}"
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[email protected] with a subject of: unsubscribe t2