1 # Description: The GNU C library for the ARM cross compiler
2 # URL: http://www.gnu.org/software/libc/
3 # Depends on: arm-gcc-interim
8 source=(http://ftp.gnu.org/gnu/glibc/glibc-$version.tar.bz2
9 http://ftp.gnu.org/gnu/glibc/glibc-ports-$version.tar.bz2
10 http://crux.nu/~tilman/arm-kernel-headers-2.6.33.tar.xz)
13 # install kernel headers
14 mkdir -p $PKG/usr/armv5tel-softfloat-linux-gnueabi
15 cp -r arm-kernel-headers-2.6.33/include \
16 $PKG/usr/armv5tel-softfloat-linux-gnueabi
17 chown root:root $PKG/usr/armv5tel-softfloat-linux-gnueabi
19 mv glibc-ports-$version glibc-$version/ports
21 sed -e 's/-lgcc_eh//g' -i glibc-$version/Makeconfig
26 cat >config.cache<<EOF
27 libc_cv_forced_unwind=yes
29 libc_cv_gnu89_inline=yes
35 BUILD_CC=gcc CC=armv5tel-softfloat-linux-gnueabi-gcc \
36 AR=armv5tel-softfloat-linux-gnueabi-ar \
37 RANLIB=armv5tel-softfloat-linux-gnueabi-ranlib \
38 ../glibc-$version/configure \
39 --prefix=/usr/armv5tel-softfloat-linux-gnueabi \
40 --libexecdir=/usr/armv5tel-softfloat-linux-gnueabi/lib \
41 --build=i686-cross-linux-gnu \
42 --host=armv5tel-softfloat-linux-gnueabi \
43 --with-headers=$PKG/usr/armv5tel-softfloat-linux-gnueabi/include \
45 --enable-kernel=2.6.33 \
51 --cache-file=config.cache
54 make install_root=$PKG install
56 rm -rf $PKG/usr/armv5tel-softfloat-linux-gnueabi/share/{info,locale}
58 # I _think_ these aren't needed :)
59 rm -rf $PKG/usr/armv5tel-softfloat-linux-gnueabi/share/{i18n,zoneinfo}
60 rmdir $PKG/usr/armv5tel-softfloat-linux-gnueabi/share
61 rm -rf $PKG/usr/armv5tel-softfloat-linux-gnueabi/{etc,bin,sbin}
62 rm -rf $PKG/usr/armv5tel-softfloat-linux-gnueabi/lib/gconv
64 # Strip libraries. We cannot let pkgmk do this; the system's strip
65 # program cannot handle ARM binaries.
66 armv5tel-softfloat-linux-gnueabi-strip --strip-debug \
67 $PKG/usr/armv5tel-softfloat-linux-gnueabi/lib/*.a
69 find $PKG/usr/armv5tel-softfloat-linux-gnueabi/lib \
70 -name "*.so" ! -name libc.so ! -name libpthread.so | xargs \
71 armv5tel-softfloat-linux-gnueabi-strip