This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: glibc 2.5+nptl build for arm softfloat eabi


Hi

I've had similar unresolved issues. I could not get it to work for the
MX31.

Vin


-----Original Message-----
From: crossgcc-owner@sourceware.org
[mailto:crossgcc-owner@sourceware.org] On Behalf Of Sean Kelley
Sent: Wednesday, December 20, 2006 8:13 AM
To: kraj@mvista.com
Cc: CrossGCC List
Subject: Re: glibc 2.5+nptl build for arm softfloat eabi

On 12/20/06, Sean Kelley <sean.v.kelley@gmail.com> wrote:
> Hi,
>
> On 12/11/06, Khem Raj <kraj@mvista.com> wrote:
> > Hi Dan and All
> >
> > This patch below adds support for glibc 2.5 based toolchain on arm
its
> > using the existing nptl patch on crosstool-0.43
> >
> > The component versions
> >
> > GCC = 4.1.1
> > binutils = 2.17
> > glibc = 2.5
> >
> >
> > This patch does few things
> >
> > 1. Adds support for glibc 2.5 and ports
> > 2. Support for linux-kernel-headers using make headers_install
(2.6.18 plus)
> > 3. Binutils 2.17
> > 4. ARM EABI build configuration using NPTL
> >
> > I have done successful builds using demo-i686 and
> > demo-arm-softfloat-eabi only haven't tested on other arches (help
needed)
>
> Is this patch all that is required on top of crosstool-0.43 or are
> there other patches that must be applied first?
>
> Thanks,
>
> Sean


When I build with your patch on crosstool-0.43 for
demo-arm-softfloat-eabi.sh, I get the following error.  Hence, my
question above.

See attached text output.

Sean


>
> >
> > The nptl build changes the build sequence a bit where gcc static is
> > built before building glibc-headers and startup files and uses a gcc
> > with shared libs to do the glibc build.
> >
> > It also introduces a new environment variables GLIBC_ADDON_NPTL and
> > GLIBC_ADDON_LINUXTHREADS to select the thread library to build.
> >
> > It also deals with the addons for glibc especially ports addon and
libidn.
> >
> > I have particularly ignored nptl with gcc < 4.1
> >
> > There were only two patches needed one for arm-softfloat in gcc and
> > another one in glibc to support the latest kernel header changes.
> >
> > Thanks
> >
> > --
> > Khem Raj
> > MontaVista Software Inc.
> > kraj@mvista.com
> >
> >
> >
> > diff -Naurp crosstool-0.43.orig/arm-softfloat-eabi.dat
crosstool-0.43/arm-softfloat-eabi.dat
> > --- crosstool-0.43.orig/arm-softfloat-eabi.dat  1969-12-31
16:00:00.000000000 -0800
> > +++ crosstool-0.43/arm-softfloat-eabi.dat       2006-12-08
02:23:16.000000000 -0800
> > @@ -0,0 +1,4 @@
> > +TARGET=arm-softfloat-linux-gnueabi
> > +TARGET_CFLAGS="-O"
> > +GCC_EXTRA_CONFIG="--with-float=soft"
> > +GLIBC_EXTRA_CONFIG="--without-fp"
> > diff -Naurp crosstool-0.43.orig/crosstool.sh
crosstool-0.43/crosstool.sh
> > --- crosstool-0.43.orig/crosstool.sh    2006-12-06
16:17:40.000000000 -0800
> > +++ crosstool-0.43/crosstool.sh 2006-12-11 10:54:52.000000000 -0800
> > @@ -68,17 +68,20 @@ TOP_DIR=${TOP_DIR-`pwd`}
> >  chmod 755 $TOP_DIR/config.guess
> >  BUILD=${GCC_BUILD-`$TOP_DIR/config.guess`}
> >  test -z "$BUILD" && abort "bug: BUILD not set?!"
> > -
> > +test -n "`echo $GLIBCTHREADS_FILENAME | grep linuxthreads`" &&
GLIBC_ADDON_LINUXTHREADS=1
> > +test -n "`echo $GLIBCTHREADS_FILENAME | grep nptl`" &&
GLIBC_ADDON_NPTL=1
> >  if test -z "${GLIBC_ADDON_OPTIONS}"; then
> > -   echo "GLIBC_ADDON_OPTIONS not set, so guessing addons from
GLIBCTHREADS_FILENAME and GLIBCCRYPT_FILENAME"
> > -   # this is lame, need to fix this for nptl later?
> > -   # (nptl is an addon, but it's shipped in the main tarball)
> > +   echo "GLIBC_ADDON_OPTIONS not set"
> >     GLIBC_ADDON_OPTIONS="="
> > -   case "${GLIBCTHREADS_FILENAME}" in
> > -     *linuxthreads*)
GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}linuxthreads," ;;
> > -   esac
> > +   if test '!' -z ${GLIBC_ADDON_LINUXTHREADS}; then
> > +       GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}linuxthreads,"
> > +       test -z "${GLIBCCRYPT_FILENAME}"   ||
GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}crypt,"
> > +   elif test '!' -z ${GLIBC_ADDON_NPTL}; then
> > +       GLIBC_ADDON_OPTIONS="=yes"
> > +   else
> > +       GLIBC_ADDON_OPTIONS="=no"
> > +   fi
> >     # crypt is only an addon for glibc-2.1.x
> > -   test -z "${GLIBCCRYPT_FILENAME}"   ||
GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}crypt,"
> >  fi
> >
> >  # Add some default glibc config options if not given by user.
These used to be hardcoded.
> > @@ -98,10 +101,14 @@ esac
> >
> >  # One is forbidden
> >  test -z "${LD_LIBRARY_PATH}" || abort  "glibc refuses to build if
LD_LIBRARY_PATH is set.  Please unset it before running this script."
> > +if test '!' -z "${GLIBC_ADDON_NPTL}"; then
> > +    GLIBC_EXTRA_CONFIG="--with-tls --with-__thread
${GLIBC_EXTRA_CONFIG}"
> > +    GLIBC_MIN_KERNEL=2.6.4
> > +else
> > +    GLIBC_EXTRA_CONFIG="--without-tls --without-__thread
${GLIBC_EXTRA_CONFIG}"
> > +    GLIBC_MIN_KERNEL=2.4.3
> > +fi
> >
> > -# And one is derived if unset.
> > -test -z "${GLIBCTHREADS_FILENAME}" &&
> > -GLIBCTHREADS_FILENAME=`echo $GLIBC_DIR | sed
's/glibc-/glibc-linuxthreads-/'`
> >
> >  # Check for a few prerequisites that have tripped people up.
> >  awk '/x/' < /dev/null  || abort "You need awk to build a
toolchain."
> > @@ -311,7 +318,7 @@ fi
> >
> >  cd $LINUX_HEADER_DIR
> >  mkdir -p $HEADERDIR
> > -
> > +INSTALL_HEADERS_DIR=`echo $HEADERDIR | sed 's/include//'`
> >  # no indentation for now because indentation levels are rising too
high
> >  if test -z "$LINUX_SANITIZED_HEADER_DIR" ; then
> >
> > @@ -325,11 +332,17 @@ fi
> >  # autodetect kernel version from contents of Makefile
> >  KERNEL_VERSION=`awk '/^VERSION =/ { print $3 }'
$LINUX_HEADER_DIR/Makefile`
> >  KERNEL_PATCHLEVEL=`awk '/^PATCHLEVEL =/ { print $3 }'
$LINUX_HEADER_DIR/Makefile`
> > +KERNEL_SUBLEVEL=`awk '/^SUBLEVEL =/ { print $3 }'
$LINUX_HEADER_DIR/Makefile`
> > +if [[ "$KERNEL_VERSION.$KERNEL_PATCHLEVEL" = "2.6" &&
KERNEL_SUBLEVEL -ge 18 ]]; then
> > +   make ARCH=$ARCH INSTALL_HDR_PATH=$INSTALL_HEADERS_DIR
headers_check
> > +   make ARCH=$ARCH INSTALL_HDR_PATH=$INSTALL_HEADERS_DIR
headers_install
> > +else
> >
> >  case "$KERNEL_VERSION.$KERNEL_PATCHLEVEL.x" in
> >  2.2.x|2.4.x) make ARCH=$ARCH symlinks    include/linux/version.h
> >               ;;
> > -2.6.x)       case $ARCH in
> > +2.6.x)
> > +       case $ARCH in
> >               sh*)        # sh does secret stuff in 'make prepare'
that can't be triggered separately,
> >                           # but happily, it doesn't use target gcc,
so we can use it.
> >                           # Update: this fails on 2.6.11, as it
installs elfconfig.h, which requires target compiler :-(
> > @@ -351,7 +364,7 @@ case "$KERNEL_VERSION.$KERNEL_PATCHLEVEL
> >  *)           abort "Unsupported kernel version
$KERNEL_VERSION.$KERNEL_PATCHLEVEL"
> >  esac
> >  cp -r include/asm-generic $HEADERDIR/asm-generic
> > -
> > +fi # [ KERNEL_SUBLEVEL -gt 17 ]
> >  fi # test -z "$LINUX_SANITIZED_HEADER_DIR"
> >
> >  cp -r include/linux $HEADERDIR
> > @@ -390,7 +403,42 @@ cd ..
> >
> >  # test to see if this step passed
> >  logresult binutils ${PREFIX}/bin/${TARGET}-ld${EXEEXT}
> > +if test '!' -z ${GLIBC_ADDON_NPTL}; then
> > +#---------------------------------------------------------
> > +echo "Build gcc-core w/o shared libgcc (just enough to build glibc
starfiles)"
> > +
> > +mkdir -p build-gcc-core-static; cd build-gcc-core-static
> > +
> > +echo Copy headers to install area of bootstrap gcc, so it can build
libgcc2
> > +mkdir -p $CORE_PREFIX/$TARGET/include
> > +cp -r $HEADERDIR/* $CORE_PREFIX/$TARGET/include
> > +
> > +# Use --with-local-prefix so older gccs don't look in /usr/local
(http://gcc.gnu.org/PR10532)
> > +# Use funky prefix so it doesn't contaminate real prefix, in case
GCC_DIR != GCC_CORE_DIR
> > +
> > +if test '!' -f Makefile; then
> > +    ${GCC_CORE_DIR}/configure $CANADIAN_BUILD --target=$TARGET
--host=$GCC_HOST --prefix=$CORE_PREFIX \
> > +        --with-local-prefix=${SYSROOT} \
> > +        --disable-multilib \
> > +        --with-newlib \
> > +        ${GCC_EXTRA_CONFIG} \
> > +        ${GCC_SYSROOT_ARG_CORE} \
> > +        --disable-nls \
> > +        --enable-threads=no \
> > +        --enable-symvers=gnu \
> > +        --enable-__cxa_atexit \
> > +        --enable-languages=c \
> > +        --disable-shared
> > +fi
> > +
> > +test "$CANADIAN_BUILD" = "" || make $PARALLELMFLAGS
all-build-libiberty || true
> > +make $PARALLELMFLAGS all-gcc
> > +make install-gcc
> >
> > +cd ..
> > +
> > +logresult gcc-core $CORE_PREFIX/bin/${TARGET}-gcc${EXEEXT}
> > +fi #test '!' -z ${GLIBC_ADDON_NPTL}; then
> >  #---------------------------------------------------------
> >  echo "Install glibc headers needed to build bootstrap compiler --
but only if gcc-3.x"
> >
> > @@ -417,7 +465,10 @@ if grep -q 'gcc-[34]' ${GCC_CORE_DIR}/Ch
> >          # Override libc_cv_ppc_machine so glibc-cvs doesn't
complain
> >          # 'a version of binutils that supports .machine "altivec"
is needed'.
> >          libc_cv_ppc_machine=yes \
> > -        CC=gcc \
> > +       libc_cv_forced_unwind=yes \
> > +       libc_cv_c_cleanup=yes \
> > +        BUILD_CC=gcc \
> > +        CC=${TARGET}-gcc${EXEEXT} \
> >              ${GLIBC_DIR}/configure --prefix=/usr \
> >              --build=$BUILD --host=$TARGET \
> >              --without-cvs --disable-sanity-checks
--with-headers=$HEADERDIR \
> > @@ -463,13 +514,47 @@ if grep -q 'gcc-[34]' ${GCC_CORE_DIR}/Ch
> >      # so uncomment this if you need it
> >      #cp misc/syscall-list.h $HEADERDIR/bits/syscall.h
> >
> > +    if test '!' -z "${GLIBC_ADDON_NPTL}"; then
> > +        # To build gcc with thread support requires real pthread
headers. These
> > +        # will have to manually be copied from under the tree of
the desired
> > +        # target pthread implementation.
> > +        cp ${GLIBC_DIR}/nptl/sysdeps/pthread/pthread.h
$HEADERDIR/pthread.h
> > +
pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/${ARCH}/bits/pthreadtypes.h
> > +
> > +        # On s390, powerpc and sparc we also require
bits/wordsize.h.
> > +        case $TARGET in
> > +        sparc* | s390* | powerpc* )
> > +            case $TARGET in
> > +            sparc64* )
wordsize_h=sysdeps/sparc/sparc64/bits/wordsize.h
> > +
pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h
> > +                        ;;
> > +            sparc* )
wordsize_h=sysdeps/sparc/sparc32/bits/wordsize.h
> > +
pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h
> > +                        ;;
> > +            s390x* )
wordsize_h=sysdeps/s390/s390x/bits/wordsize.h
> > +                        ;;
> > +            s390* )
wordsize_h=sysdeps/s390/s390/bits/wordsize.h
> > +                        ;;
> > +            powerpc64* )
wordsize_h=sysdeps/powerpc/powerpc64/bits/wordsize.h
> > +
pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h
> > +                        ;;
> > +            powerpc* )
wordsize_h=sysdeps/powerpc/powerpc32/bits/wordsize.h
> > +
pthreadtypes_h=nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h
> > +                        ;;
> > +            esac
> > +            test ! -f $HEADERDIR/bits/wordsize.h && cp
${GLIBC_DIR}/${wordsize_h} $HEADERDIR/bits/wordsize.h
> > +            cp ${GLIBC_DIR}/${pthreadtypes_h}
$HEADERDIR/bits/pthreadtypes.h
> > +           ;;
> > +       esac
> > +    fi # GLIBC_ADDONS_NPTL
> > +
> >      cd ..
> >  fi
> > -
> > +if test '!' -z ${GLIBC_ADDON_LINUXTHREADS}; then
> >  #---------------------------------------------------------
> > -echo "Build gcc-core (just enough to build glibc)"
> > +echo "Build gcc-core w/o shared libgcc (just enough to build glibc
starfiles)"
> >
> > -mkdir -p build-gcc-core; cd build-gcc-core
> > +mkdir -p build-gcc-core-static; cd build-gcc-core-static
> >
> >  echo Copy headers to install area of bootstrap gcc, so it can build
libgcc2
> >  mkdir -p $CORE_PREFIX/$TARGET/include
> > @@ -494,15 +579,132 @@ if test '!' -f Makefile; then
> >  fi
> >
> >  test "$CANADIAN_BUILD" = "" || make $PARALLELMFLAGS
all-build-libiberty || true
> > -make $PARALLELMFLAGS all-gcc
> > +make $PARALLELMFLAGS all-gcc
> >  make install-gcc
> >
> >  cd ..
> >
> >  logresult gcc-core $CORE_PREFIX/bin/${TARGET}-gcc${EXEEXT}
> > +fi #test '!' -z ${GLIBC_ADDON_LINUXTHREADS}; then
> > +
> > +# Following extra steps required for building an NPTL enabled
glibc.
> > +if test '!' -z "${GLIBC_ADDON_NPTL}"; then
> > +    #---------------------------------------------------------
> > +    echo "Build glibc startfiles (required for shared libgcc)"
> > +
> > +    mkdir -p build-glibc-startfiles; cd build-glibc-startfiles
> > +
> > +    # sh4 really needs to set configparms as of gcc-3.4/glibc-2.3.2
> > +    # note: this is awkward, doesn't work well if you need more
than one line in configparms
> > +    echo ${GLIBC_CONFIGPARMS} > configparms
> > +
> > +    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
> > +        sparc64* ) echo "libc_cv_sparc64_tls=yes" >> config.cache
;;
> > +    esac
> > +
> > +    if test '!' -f Makefile; then
> > +        # Configure with --prefix the way we want it on the
target...
> > +        # There are a whole lot of settings here.  You'll probably
want
> > +        # to read up on what they all mean, and customize a bit.
> > +        # e.g. I picked --enable-kernel=2.4.3 here just because
it's the kernel Bill
> > +        # used in his example gcc2.95.3 script.  That means some
backwards compatibility
> > +        # stuff is turned on in glibc that you may not need if
you're using a newer kernel.
> > +        # Compare these options with the ones used when installing
the glibc headers above - they're different.
> > +        # Adding "--without-gd" option to avoid error
"memusagestat.c:36:16: gd.h: No such file or directory"
> > +        # See also
http://sources.redhat.com/ml/libc-alpha/2000-07/msg00024.html.
> > +        # Set BUILD_CC, or you won't be able to build datafiles
> > +        # Set --build, else glibc-2.3.2 will think you're not
cross-compiling, and try to run the test programs
> > +
> > +        BUILD_CC=gcc CFLAGS="$TARGET_CFLAGS" CC="${TARGET}-gcc
$GLIBC_EXTRA_CC_ARGS" \
> > +        AR=${TARGET}-ar RANLIB=${TARGET}-ranlib \
> > +            ${GLIBC_DIR}/configure --prefix=/usr \
> > +           --build=$BUILD --host=$TARGET \
> > +            ${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
> > +    fi
> > +
> > +    #TODO: should check whether slibdir has been set in configparms
to */lib64
> > +    #      and copy the startfiles into the appropriate libdir.
> > +    make csu/subdir_lib
> > +
> > +    test -z "${USE_SYSROOT}" &&
> > +    cp -fp csu/crt[1in].o ${SYSROOT}/lib/ ||
> > +    cp -fp csu/crt[1in].o ${SYSROOT}/usr/lib/
> > +
> > +    cd ..
> >
> > +    #---------------------------------------------------------
> > +    echo "Build gcc-core w shared libgcc"
> > +
> > +    mkdir -p build-gcc-core-shared; cd build-gcc-core-shared
> > +
> > +    # Use --with-local-prefix so older gccs don't look in
/usr/local (http://gcc.gnu.org/PR10532)
> > +
> > +    if test '!' -f Makefile; then
> > +        ${GCC_DIR}/configure $CANADIAN_BUILD --target=$TARGET
--host=$GCC_HOST --prefix=$PREFIX \
> > +           --with-local-prefix=${SYSROOT} \
> > +           --disable-multilib \
> > +            ${GCC_EXTRA_CONFIG} \
> > +           ${GCC_SYSROOT_ARG_CORE} \
> > +           --disable-nls \
> > +           --enable-symvers=gnu \
> > +           --enable-__cxa_atexit \
> > +            --enable-languages=c \
> > +            --enable-shared
> > +    fi
> > +
> > +    # HACK: we need to override SHLIB_LC from
gcc/config/t-slibgcc-elf-ver or
> > +    #       gcc/config/t-libunwind so -lc is removed from the link
for
> > +    #       libgcc_s.so, as we do not have a target -lc yet.
> > +    #       This is not as ugly as it appears to be ;-) All symbols
get resolved
> > +    #       during the glibc build, and we provide a proper
libgcc_s.so for the
> > +    #       cross toolchain during the final gcc build.
> > +    #
> > +    #       As we cannot modify the source tree, nor override
SHLIB_LC itself
> > +    #       during configure or make, we have to edit the resultant
> > +    #       gcc/libgcc.mk itself to remove -lc from the link.
> > +    #       This causes us to have to jump through some hoops...
> > +    #
> > +    #       To produce libgcc.mk to edit we firstly require
libiberty.a,
> > +    #       so we configure then build it.
> > +    #       Next we have to configure gcc, create libgcc.mk then
edit it...
> > +    #       So much easier if we just edit the source tree, but
hey...
> > +    if test '!' -f ${GCC_DIR}/gcc/BASE-VER; then
> > +       make configure-libiberty
> > +       make -C libiberty libiberty.a
> > +       make configure-gcc
> > +       make configure-libcpp
> > +       make all-libcpp
> > +    else
> > +       make configure-gcc
> > +       make configure-libcpp
> > +       make configure-build-libiberty
> > +       make all-libcpp
> > +       make all-build-libiberty
> > +    fi
> > +    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
> > +
> > +    test "$CANADIAN_BUILD" = "" || make $PARALLELMFLAGS
all-build-libiberty || true
> > +    make $PARALLELMFLAGS all-gcc
> > +    make install-gcc
> > +
> > +    cd ..
> > +
> > +    test -x ${PREFIX}/bin/${TARGET}-gcc || abort Build failed
during gcc-core
> > +
> > +fi # GLIBC_ADDON_NPTL
> >  #---------------------------------------------------------
> > -echo Build glibc and linuxthreads
> > +echo Build glibc
> >
> >  mkdir -p build-glibc; cd build-glibc
> >
> > @@ -510,6 +712,16 @@ mkdir -p build-glibc; cd build-glibc
> >  # note: this is awkward, doesn't work well if you need more than
one line in configparms
> >  echo ${GLIBC_CONFIGPARMS} > configparms
> >
> > +if test '!' -z "${GLIBC_ADDON_NPTL}"; then
> > +    # 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
> > +        sparc64* ) echo "libc_cv_sparc64_tls=yes" >> config.cache
;;
> > +    esac
> > +fi # GLIBC_ADDON_NPTL
> > +
> >  if test '!' -f Makefile; then
> >      # Configure with --prefix the way we want it on the target...
> >      # There are a whole lot of settings here.  You'll probably want
> > @@ -534,9 +746,11 @@ if test '!' -f Makefile; then
> >          ${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
> > +        --enable-add-ons${GLIBC_ADDON_OPTIONS}
--with-headers=$HEADERDIR \
> > +        --cache-file=config.cache
> >  fi
> >
> >  if grep -l '^install-lib-all:' ${GLIBC_DIR}/Makerules > /dev/null;
then
> > diff -Naurp crosstool-0.43.orig/demo-arm-softfloat-eabi.sh
crosstool-0.43/demo-arm-softfloat-eabi.sh
> > --- crosstool-0.43.orig/demo-arm-softfloat-eabi.sh      1969-12-31
16:00:00.000000000 -0800
> > +++ crosstool-0.43/demo-arm-softfloat-eabi.sh   2006-12-09
17:14:06.000000000 -0800
> > @@ -0,0 +1,33 @@
> > +#!/bin/sh
> > +# This script has one line for each known working toolchain
> > +# for this architecture.  Uncomment the one you want.
> > +# Generated by generate-demo.pl from buildlogs/all.dats.txt
> > +
> > +set -ex
> > +TARBALLS_DIR=$HOME/downloads
> > +RESULT_TOP=/opt/crosstool
> > +export TARBALLS_DIR RESULT_TOP
> > +GCC_LANGUAGES="c,c++"
> > +export GCC_LANGUAGES
> > +GLIBC_ADDON_NPTL=1
> > +export GLIBC_ADDON_NPTL=1
> > +
> > +# Really, you should do the mkdir before running this,
> > +# and chown /opt/crosstool to yourself so you don't need to run as
root.
> > +mkdir -p $RESULT_TOP
> > +
> > +#eval `cat arm-softfloat.dat gcc-2.95.3-glibc-2.1.3.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-2.95.3-glibc-2.2.2.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-2.95.3-glibc-2.2.5.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.2.3-glibc-2.2.5.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.2.3-glibc-2.3.2.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.2.3-glibc-2.3.2-tls.dat` sh
all.sh --notest
> > +#eval `cat arm-softfloat.dat gcc-3.3.6-glibc-2.2.2.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.3.6-glibc-2.2.5.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.3.6-glibc-2.3.2.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.3.6-glibc-2.3.2-tls.dat` sh
all.sh --notest
> > +#eval `cat arm-softfloat.dat gcc-3.4.5-glibc-2.2.5.dat` sh all.sh
--notest
> > +#eval `cat arm-softfloat.dat gcc-3.4.5-glibc-2.3.5.dat` sh all.sh
--notest
> > +eval `cat arm-softfloat-eabi.dat gcc-4.1.1-glibc-2.5.dat` sh all.sh
-notest -nounpack
> > +
> > +echo Done.
> > diff -Naurp crosstool-0.43.orig/gcc-4.1.1-glibc-2.5.dat
crosstool-0.43/gcc-4.1.1-glibc-2.5.dat
> > --- crosstool-0.43.orig/gcc-4.1.1-glibc-2.5.dat 1969-12-31
16:00:00.000000000 -0800
> > +++ crosstool-0.43/gcc-4.1.1-glibc-2.5.dat      2006-12-09
17:08:30.000000000 -0800
> > @@ -0,0 +1,10 @@
> > +BINUTILS_DIR=binutils-2.17
> > +GCC_CORE_DIR=gcc-4.1.1
> > +GCC_DIR=gcc-4.1.1
> > +GLIBC_DIR=glibc-2.5
> > +LINUX_DIR=linux-2.6.18.5
> > +GLIBCTHREADS_FILENAME=
> > +GLIBCPORTS_FILENAME=glibc-ports-2.5
> > +GLIBCLIBIDN_FILENAME=glibc-libidn-2.5
> > +GDB_DIR=gdb-6.5
> > +GLIBC_EXTRA_CONFIG="$GLIBC_EXTRA_CONFIG --with-tls --with-__thread
--enable-kernel=2.6.0"
> > diff -Naurp crosstool-0.43.orig/getandpatch.sh
crosstool-0.43/getandpatch.sh
> > --- crosstool-0.43.orig/getandpatch.sh  2006-12-06
16:17:40.000000000 -0800
> > +++ crosstool-0.43/getandpatch.sh       2006-12-09
15:53:28.000000000 -0800
> > @@ -153,7 +153,19 @@ getUnpackAndPatch() {
> >      if [ -d kernel ]; then
> >          mv kernel $BASENAME
> >      fi
> > +    # rename glibc-ports-${version} to ports
> > +    # because there will be patches for ports and they have to be
edited
> > +    # everytime for different version just because ports will have
glibc
> > +    # version in its name. Renaming to ports will let the patch
applied to
> > +    # glibc-ports-2.5 to glibc-ports-2.6 in future.
> >
> > +    if [ -n "`echo $ARCHIVE_NAME | grep glibc-ports-`" ]; then
> > +       mv glibc-ports-2* ports
> > +    fi
> > +    if [ -n "`echo $ARCHIVE_NAME | grep glibc-libidn-`" ]; then
> > +       mv glibc-libidn-2* libidn
> > +    fi
> > +
> >      # Apply any patches for this component
> >      # -f is required for patches that delete files, like
> >      # patches/glibc-2.2.5/hhl-powerpc-fpu.patch,
> > @@ -163,7 +175,7 @@ getUnpackAndPatch() {
> >      # Use -g0 else patch-2.5.8 on MacOSX tries to run perforce!
> >      if test -d $TOP_DIR/patches/$BASENAME; then
> >          case $ARCHIVE_NAME in
> > -        glibc-[a-z]*-2*) ;;              # glibc addon, so we're
already in right directory
> > +        glibc-[a-z]*-2*) ;; # glibc addon, so we're already in
right directory
> >          *)           cd $BASENAME ;;
> >          esac
> >
> > @@ -270,12 +282,13 @@ if test "${CYGWIN_DIR}" = ""; then
> >
http://ep09.pld-linux.org/~mmazur/linux-libc-headers/${LINUX_SANITIZED_H
EADER_DIR}.tar.bz2 \
> >
ftp://ftp.lfs-matrix.net/pub/linux-libc-headers/${LINUX_SANITIZED_HEADER
_DIR}.tar.bz2
> >    # Glibc addons must come after glibc
> > -  getUnpackAndPatch     \
> > +test -n "${GLIBCTHREADS_FILENAME}"  &&  getUnpackAndPatch     \
> >
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCTHREADS_FILENAME.tar.bz2 \
> >
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCTHREADS_FILENAME.tar.gz \
> >
ftp://gcc.gnu.org/pub/glibc/releases/$GLIBCTHREADS_FILENAME.tar.bz2 \
> > -
ftp://gcc.gnu.org/pub/glibc/releases/$GLIBCTHREADS_FILENAME.tar.gz
> > -
> > +
ftp://gcc.gnu.org/pub/glibc/releases/$GLIBCTHREADS_FILENAME.tar.gz
> > + test x$GLIBCPORTS_FILENAME = x || getUnpackAndPatch
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCPORTS_FILENAME.tar.gz
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCPORTS_FILENAME.tar.bz2
> > + test x$GLIBCLIBIDN_FILENAME = x || getUnpackAndPatch
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCLIBIDN_FILENAME.tar.gz
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCLIBIDN_FILENAME.tar.bz2
> >    test x$GLIBCCRYPT_FILENAME = x || getUnpackAndPatch
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCCRYPT_FILENAME.tar.gz
ftp://ftp.gnu.org/pub/gnu/glibc/$GLIBCCRYPT_FILENAME.tar.bz2
> >  fi
> >
> > diff -Naurp crosstool-0.43.orig/patches/gcc-4.0.1/libiberty.patch
crosstool-0.43/patches/gcc-4.0.1/libiberty.patch
> > --- crosstool-0.43.orig/patches/gcc-4.0.1/libiberty.patch
1969-12-31 16:00:00.000000000 -0800
> > +++ crosstool-0.43/patches/gcc-4.0.1/libiberty.patch    2006-12-08
01:48:52.000000000 -0800
> > @@ -0,0 +1,11 @@
> > +--- gcc-4.0.1.orig/gcc/Makefile.in     2005-04-04
21:45:13.000000000 +0200
> > ++++ gcc-4.0.1/gcc/Makefile.in  2005-08-05 22:12:56.544994408 +0200
> > +@@ -757,7 +757,7 @@
> > +
> > + # Build and host support libraries.
> > + LIBIBERTY = ../libiberty/libiberty.a
> > +-BUILD_LIBIBERTY = ../$(build_subdir)/libiberty/libiberty.a
> > ++BUILD_LIBIBERTY = ../libiberty/libiberty.a
> > +
> > + # Dependencies on the intl and portability libraries.
> > + LIBDEPS= $(CPPLIB) $(LIBIBERTY) $(LIBINTL_DEP) $(LIBICONV_DEP)
> > diff -Naurp
crosstool-0.43.orig/patches/gcc-4.1.1/gcc-arm-softfp.patch
crosstool-0.43/patches/gcc-4.1.1/gcc-arm-softfp.patch
> > --- crosstool-0.43.orig/patches/gcc-4.1.1/gcc-arm-softfp.patch
1969-12-31 16:00:00.000000000 -0800
> > +++ crosstool-0.43/patches/gcc-4.1.1/gcc-arm-softfp.patch
2006-12-09 12:54:28.000000000 -0800
> > @@ -0,0 +1,25 @@
> > +Description:
> > +  Enable the soft-fp routines for ARM GNU/Linux, so that they can
be
> > +  used for --with-float=soft.
> > +
> > +Patch rejected by community, so local to Montavista.
> > +http://gcc.gnu.org/ml/gcc-patches/2004-04/msg01570.html
> > +
> > +Index: gcc-4.1.0/gcc/config/arm/t-linux
> > +===================================================================
> > +--- gcc-4.1.0.orig/gcc/config/arm/t-linux
> > ++++ gcc-4.1.0/gcc/config/arm/t-linux
> > +@@ -4,7 +4,12 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
> > + LIBGCC2_DEBUG_CFLAGS = -g0
> > +
> > + LIB1ASMSRC = arm/lib1funcs.asm
> > +-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
> > ++LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
> > ++      _call_via_rX _interwork_call_via_rX \
> > ++      _lshrdi3 _ashrdi3 _ashldi3 \
> > ++      _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi
_fixunsdfsi \
> > ++      _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2
\
> > ++      _fixsfsi _fixunssfsi _floatdidf _floatdisf
> > +
> > + # MULTILIB_OPTIONS = mhard-float/msoft-float
> > + # MULTILIB_DIRNAMES = hard-float soft-float
> > diff -Naurp
crosstool-0.43.orig/patches/glibc-ports-2.5/glibc-arm-no-procinfo_h.patc
h crosstool-0.43/patches/glibc-ports-2.5/glibc-arm-no-procinfo_h.patch
> > ---
crosstool-0.43.orig/patches/glibc-ports-2.5/glibc-arm-no-procinfo_h.patc
h   1969-12-31 16:00:00.000000000 -0800
> > +++
crosstool-0.43/patches/glibc-ports-2.5/glibc-arm-no-procinfo_h.patch
2006-12-09 12:30:45.000000000 -0800
> > @@ -0,0 +1,325 @@
> > +http://sources.redhat.com/ml/libc-ports/2006-10/msg00040.html
> > +Avoid using asm/procinfo.h
> > +
> > +    * From: "Joseph S. Myers" <joseph at codesourcery dot com>
> > +    * To: libc-ports at sourceware dot org
> > +    * Date: Tue, 24 Oct 2006 19:25:12 +0000 (UTC)
> > +    * Subject: Avoid using asm/procinfo.h
> > +
> > +I previously noted
> > +<http://sourceware.org/ml/libc-ports/2006-08/msg00023.html> that
the
> > +use of <asm/procinfo.h>, a Linux-specific kernel header, in
> > +sysdeps/arm/eabi, is an abstraction violation, and that in
principle
> > +all the files in sysdeps/arm/eabi should use sysdep.h not
> > +asm/procinfo.h for HWCAP_VFP.
> > +
> > +The ARM kernel maintainers have now declared that <asm/procinfo.h>
> > +should not be used outside the kernel at all (and in particular
that
> > +headers_install is correct in not exporting it), and that these
> > +definitions will move to a different kernel header.  This gives a
> > +concrete reason for making the change to use glibc's internal
> > +definitions, which this patch does, thereby allowing glibc to build
> > +with the exported headers.
> > +
> > +2006-10-24  Joseph S. Myers  <joseph@codesourcery.com>
> > +
> > +       * sysdeps/arm/eabi/fclrexcpt.c: Include <sysdep.h> instead
of
> > +       <asm/procinfo.h>.  Use HWCAP_ARM_VFP instead of HWCAP_VFP.
> > +       * sysdeps/arm/eabi/fedisblxcpt.c: Likewise.
> > +       * sysdeps/arm/eabi/feenablxcpt.c: Likewise.
> > +       * sysdeps/arm/eabi/fegetenv.c: Likewise.
> > +       * sysdeps/arm/eabi/fegetexcept.c: Likewise.
> > +       * sysdeps/arm/eabi/fegetround.c: Likewise.
> > +       * sysdeps/arm/eabi/feholdexcpt.c: Likewise.
> > +       * sysdeps/arm/eabi/fesetenv.c: Likewise.
> > +       * sysdeps/arm/eabi/fesetround.c: Likewise.
> > +       * sysdeps/arm/eabi/fraiseexcpt.c: Likewise.
> > +       * sysdeps/arm/eabi/fsetexcptflg.c: Likewise.
> > +       * sysdeps/arm/eabi/ftestexcept.c: Likewise.
> > +       * sysdeps/arm/eabi/setfpucw.c: Likewise.
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fclrexcpt.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fclrexcpt.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fclrexcpt.c
> > +--- libc/ports/sysdeps/arm/eabi/fclrexcpt.c    10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fclrexcpt.c    24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + __feclearexcept (int excepts)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned long int temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fedisblxcpt.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fedisblxcpt.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fedisblxcpt.c
> > +--- libc/ports/sysdeps/arm/eabi/fedisblxcpt.c  10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fedisblxcpt.c  24 Oct 2006 19:17:51
-0000
> > +@@ -24,12 +24,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + fedisableexcept (int excepts)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned long int new_exc, old_exc;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/feenablxcpt.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/feenablxcpt.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 feenablxcpt.c
> > +--- libc/ports/sysdeps/arm/eabi/feenablxcpt.c  10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/feenablxcpt.c  24 Oct 2006 19:17:51
-0000
> > +@@ -24,12 +24,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + feenableexcept (int excepts)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned long int new_exc, old_exc;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fegetenv.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fegetenv.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fegetenv.c
> > +--- libc/ports/sysdeps/arm/eabi/fegetenv.c     10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fegetenv.c     24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + __fegetenv (fenv_t *envp)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned long int temp;
> > +       _FPU_GETCW (temp);
> > +Index: libc/ports/sysdeps/arm/eabi/fegetexcept.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fegetexcept.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fegetexcept.c
> > +--- libc/ports/sysdeps/arm/eabi/fegetexcept.c  10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fegetexcept.c  24 Oct 2006 19:17:51
-0000
> > +@@ -24,12 +24,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + fegetexcept (void)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned long temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fegetround.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fegetround.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fegetround.c
> > +--- libc/ports/sysdeps/arm/eabi/fegetround.c   10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fegetround.c   24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + fegetround (void)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned int temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/feholdexcpt.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/feholdexcpt.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 feholdexcpt.c
> > +--- libc/ports/sysdeps/arm/eabi/feholdexcpt.c  10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/feholdexcpt.c  24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + feholdexcept (fenv_t *envp)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned long int temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fesetenv.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fesetenv.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fesetenv.c
> > +--- libc/ports/sysdeps/arm/eabi/fesetenv.c     10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fesetenv.c     24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + __fesetenv (const fenv_t *envp)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       unsigned int temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fesetround.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fesetround.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fesetround.c
> > +--- libc/ports/sysdeps/arm/eabi/fesetround.c   10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fesetround.c   24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + fesetround (int round)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       fpu_control_t temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/fraiseexcpt.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fraiseexcpt.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fraiseexcpt.c
> > +--- libc/ports/sysdeps/arm/eabi/fraiseexcpt.c  10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fraiseexcpt.c  24 Oct 2006 19:17:51
-0000
> > +@@ -24,12 +24,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + feraiseexcept (int excepts)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       int fpscr;
> > +       const float fp_zero = 0.0, fp_one = 1.0, fp_max = FLT_MAX,
> > +Index: libc/ports/sysdeps/arm/eabi/fsetexcptflg.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/fsetexcptflg.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 fsetexcptflg.c
> > +--- libc/ports/sysdeps/arm/eabi/fsetexcptflg.c 10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/fsetexcptflg.c 24 Oct 2006 19:17:51
-0000
> > +@@ -24,12 +24,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + __fesetexceptflag (const fexcept_t *flagp, int excepts)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       fexcept_t temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/ftestexcept.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/ftestexcept.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 ftestexcept.c
> > +--- libc/ports/sysdeps/arm/eabi/ftestexcept.c  10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/ftestexcept.c  24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + int
> > + fetestexcept (int excepts)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       fexcept_t temp;
> > +
> > +Index: libc/ports/sysdeps/arm/eabi/setfpucw.c
> > +===================================================================
> > +RCS file: /cvs/glibc/ports/sysdeps/arm/eabi/setfpucw.c,v
> > +retrieving revision 1.1
> > +diff -u -r1.1 setfpucw.c
> > +--- libc/ports/sysdeps/arm/eabi/setfpucw.c     10 Oct 2005 15:29:32
-0000      1.1
> > ++++ libc/ports/sysdeps/arm/eabi/setfpucw.c     24 Oct 2006 19:17:51
-0000
> > +@@ -23,12 +23,12 @@
> > + #include <unistd.h>
> > + #include <ldsodefs.h>
> > + #include <dl-procinfo.h>
> > +-#include <asm/procinfo.h>
> > ++#include <sysdep.h>
> > +
> > + void
> > + __setfpucw (fpu_control_t set)
> > + {
> > +-  if (GLRO (dl_hwcap) & HWCAP_VFP)
> > ++  if (GLRO (dl_hwcap) & HWCAP_ARM_VFP)
> > +     {
> > +       fpu_control_t cw;
> >
> >
> >
> > --
> > For unsubscribe information see http://sourceware.org/lists.html#faq
> >
> >
>
>
> --
> Sean Kelley
>


-- 
Sean Kelley

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]