[PATCH] crosstool-0.42+NPTL-khem vs nyet-ppc860
Nye Liu
nyet@mrv.com
Sat Aug 19 00:42:00 GMT 2006
Enclosed is a diff vs khem's patch (http://sourceware.org/ml/crossgcc/2006-03/msg00090.html)
On Fri, Aug 18, 2006 at 05:25:58PM -0700, Nye Liu wrote:
> I have successfully compiled a toolchain and libraries for ppc860 using
> nptl, gcc-4.1.0, and glibc-2.3.6
>
> the problem below was solved by adding
> GLIBC_EXTRA_CC_ARGS="-fno-unit-at-a-time"
> to my powerpc-860.dat
>
> im using a combination of khem's patch
> http://sourceware.org/ml/crossgcc/2006-03/msg00090.html
>
> plus a bit of steve's patch
> http://sourceware.org/ml/crossgcc/2006-06/msg00096.html
>
> also, i had to use
> GCC_EXTRA_CONFIG="--disable-multilib"
> to get rid of the GCC_NO_EXECUTABLES problem.
>
> im still sort of confused how GLIBC_EXTRA_CONFIG can co-exist in both
> gcc*.dat and the architecture .dats... do they get merged somewhere that
> i dont see?
>
> patch forthcoming once i clean it up some, there are a few more
> important changes
>
--
Nye Liu
nliu@mrv.com
(818) 772-6235x248
(818) 772-0576 fax
"Who would be stupid enough to quote a fictitious character?"
-- Don Quixote
-------------- next part --------------
Index: crosstool.sh
===================================================================
--- crosstool.sh (.../vendor/crosstool/0.42-khem-nptl) (revision 5825)
+++ crosstool.sh (.../trunk/tools/crosstool) (revision 5825)
@@ -556,9 +556,11 @@
echo "libc_cv_forced_unwind=yes" > config.cache
echo "libc_cv_c_cleanup=yes" >> config.cache
- # this here is moot, currently you cannot build nptl for sparc64
case ${TARGET} in
+ # this here is moot, currently you cannot build nptl for sparc64
sparc64* ) echo "libc_cv_sparc64_tls=yes" >> config.cache ;;
+ # remove inline asm powerpc memset, which is broken for 860
+ powerpc-860* ) rm -f ${GLIBC_DIR}/sysdeps/powerpc/powerpc32/memset.S ;;
esac
if test '!' -f Makefile; then
@@ -650,7 +652,7 @@
make -C gcc libgcc.mk
if test '!' -f gcc/libgcc.mk-ORIG ; then cp -p gcc/libgcc.mk gcc/libgcc.mk-ORIG; fi
- sed 's@-lc@@g' < gcc/libgcc.mk-ORIG > gcc/libgcc.mk
+ sed 's@ -lc @ @g' < gcc/libgcc.mk-ORIG > gcc/libgcc.mk
test "$CANADIAN_BUILD" = "" || make $PARALLELMFLAGS all-build-libiberty || true
make $PARALLELMFLAGS all-gcc
@@ -674,9 +676,11 @@
# Following configure tests fail while cross-compiling
echo "libc_cv_forced_unwind=yes" > config.cache
echo "libc_cv_c_cleanup=yes" >> config.cache
- # The following is moot, currently you cannot build nptl for sparc64
case ${TARGET} in
+ # The following is moot, currently you cannot build nptl for sparc64
sparc64* ) echo "libc_cv_sparc64_tls=yes" >> config.cache ;;
+ # remove inline asm powerpc memset, which is broken for 860
+ powerpc-860* ) rm -f ${GLIBC_DIR}/sysdeps/powerpc/powerpc32/memset.S ;;
esac
fi # GLIBC_ADDON_NPTL
@@ -695,10 +699,11 @@
${GLIBC_DIR}/configure --prefix=/usr \
--build=$BUILD --host=$TARGET \
${GLIBC_EXTRA_CONFIG} ${DEFAULT_GLIBC_EXTRA_CONFIG} \
+ --enable-kernel=${GLIBC_MIN_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
$SHARED_MODE \
--enable-add-ons${GLIBC_ADDON_OPTIONS} --with-headers=$HEADERDIR \
- --cache-file=config.cache
+ --cache-file=config.cache
fi
if grep -l '^install-lib-all:' ${GLIBC_DIR}/Makerules > /dev/null; then
@@ -862,3 +867,4 @@
#---------------------------------------------------------
echo Cross-toolchain build complete. Result in ${PREFIX}.
exit 0
+
Index: getandpatch.sh
===================================================================
--- getandpatch.sh (.../vendor/crosstool/0.42-khem-nptl) (revision 5825)
+++ getandpatch.sh (.../trunk/tools/crosstool) (revision 5825)
@@ -33,8 +33,9 @@
test -z "${LINUX_SANITIZED_HEADER_DIR}" && echo "Not downloading linux-libc-headers. Set LINUX_SANITIZED_HEADER_DIR to do so"
test -z "${LINUX_DIR}" && echo "Not downloading kernel sources. Set LINUX_DIR if you want to do so"
# And one is derived if not set explicitly.
-if test '!' -z "${GLIBC_ADDON_LINUXTHREADS}"; then
+ if test '!' -z "${GLIBC_ADDON_LINUXTHREADS}"; then
GLIBCTHREADS_FILENAME=`echo $GLIBC_DIR | sed 's/glibc-/glibc-linuxthreads-/'`
+ fi
fi
test -z "${TARBALLS_DIR}" && abort "Please set TARBALLS_DIR to the directory to download tarballs to."
Index: powerpc-860.dat
===================================================================
--- powerpc-860.dat (.../vendor/crosstool/0.42-khem-nptl) (revision 5825)
+++ powerpc-860.dat (.../trunk/tools/crosstool) (revision 5825)
@@ -1,4 +1,5 @@
TARGET=powerpc-860-linux-gnu
TARGET_CFLAGS="-O"
-GCC_EXTRA_CONFIG="--with-cpu=860 --enable-cxx-flags=-mcpu=860"
+GCC_EXTRA_CONFIG="--with-cpu=860 --enable-cxx-flags=-mcpu=860 --disable-multilib"
+GLIBC_EXTRA_CC_ARGS="-fno-unit-at-a-time"
GLIBC_EXTRA_CONFIG="--without-fp"
-------------- next part --------------
--
For unsubscribe information see http://sourceware.org/lists.html#faq
More information about the crossgcc
mailing list