wok annotate cross-arm-gcc/receipt @ rev 12734

syslinux: remove default.cfg
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon May 07 10:33:31 2012 +0200 (2012-05-07)
parents 8e206a5a6836
children
rev   line source
pankso@12701 1 # SliTaz package receipt.
pankso@12701 2
pankso@12701 3 PACKAGE="cross-arm-gcc"
pankso@12701 4 VERSION="4.6.3"
pankso@12701 5 CATEGORY="system-tools"
pankso@12701 6 SHORT_DESC="Cross compiler for targeting ARM platform."
pankso@12701 7 MAINTAINER="pankso@slitaz.org"
pankso@12701 8 SOURCE="gcc"
pankso@12701 9 WEB_SITE="http://gcc.gnu.org/"
pankso@12701 10 TARBALL="$SOURCE-$VERSION.tar.bz2"
pankso@12701 11 WGET_URL="$GNU_MIRROR/gcc/gcc-$VERSION/$TARBALL"
pankso@12701 12
pankso@12710 13 DEPENDS="mpc-library elfutils linux-arm-api-headers cross-arm-binutils"
pankso@12701 14 BUILD_DEPENDS="linux-arm-api-headers cross-arm-binutils gmp gmp-dev \
pankso@12701 15 mpfr mpfr-dev mpc-library elfutils-dev"
pankso@12701 16
pankso@12701 17 # Cross toolchain variables.
pankso@12701 18 CROSS_TARGET="arm-slitaz-linux-gnueabi"
pankso@12701 19 CROSS_PREFIX="/usr/cross/arm"
pankso@12701 20 CROSS_TRIPLET="--build=$HOST_SYSTEM --host=$HOST_SYSTEM --target=$CROSS_TARGET"
pankso@12701 21
pankso@12701 22 # CFLAGS and CXXFLAGS must not be set during the building of cross-tools.
pankso@12701 23 unset CFLAGS CXXFLAGS CONFIG_SITE
pankso@12701 24
pankso@12701 25 # Path to cross tools
pankso@12701 26 export PATH=$PATH:$CROSS_PREFIX/bin
pankso@12701 27
pankso@12701 28 # Rules to configure and make the package.
pankso@12701 29 compile_rules()
pankso@12701 30 {
pankso@12701 31 cd $src
pankso@12701 32
pankso@12701 33 # Package cross-arm-toolchain use 'cook --options' when rebuilding
pankso@12701 34 # the full SliTaz ARM cross toolchain.
pankso@12701 35 [ "$2" == "--first-pass" ] && opt=$2
pankso@12701 36 [ "$3" == "--first-pass" ] && opt=$3
pankso@12701 37
pankso@12716 38 # Use libiberty.a from binutils.
pankso@12716 39 sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in || return 1
pankso@12716 40
pankso@12701 41 mkdir -p ../build && cd ../build
pankso@12701 42
pankso@12701 43 case $opt in
pankso@12701 44 --first-pass)
pankso@12701 45 # Used by cross-arm-toolchain when rebuilding the full toolchain.
pankso@12701 46 echo "cook: configure GCC for: cross toolchain first pass"
pankso@12701 47 $src/configure \
pankso@12701 48 --prefix=$CROSS_PREFIX \
pankso@12710 49 --libexec=$CROSS_PREFIX/lib \
pankso@12701 50 --disable-shared \
pankso@12716 51 --enable-languages=c \
pankso@12701 52 --disable-threads \
pankso@12716 53 --disable-multilib \
pankso@12716 54 --disable-nls \
pankso@12701 55 --without-headers \
pankso@12716 56 --disable-libgomp \
pankso@12716 57 --disable-libmudflap \
pankso@12716 58 --disable-libssp \
pankso@12701 59 $CROSS_TRIPLET &&
pankso@12701 60 make all-gcc all-target-libgcc &&
pankso@12701 61 make install-gcc install-target-libgcc &&
pankso@12701 62 cd ${install}${CROSS_PREFIX}/lib/gcc/$CROSS_TARGET/$VERSION &&
pankso@12701 63 ln -s libgcc.a libgcc_eh.a ;;
pankso@12701 64 *)
pankso@12701 65 # Used to produce a full featured ARM GCC cross compiler.
pankso@12701 66 echo "cook: configure GCC for: final/full cross compiler"
pankso@12710 67
pankso@12716 68 # We cant't have cross-arm-glibc it in DEPENDS since it not build
pankso@12716 69 # when we compile GCC --first-pass
pankso@12710 70 if [ ! "/var/lib/tazpkg/installed/cross-arm-glibc" ]; then
pankso@12710 71 tazpkg -i /home/slitaz/packages/cross-arm-glibc-2.14.1.tazpkg
pankso@12710 72 fi
pankso@12710 73
pankso@12701 74 $src/configure \
pankso@12701 75 --prefix=$CROSS_PREFIX \
pankso@12710 76 --libexec=$CROSS_PREFIX/lib \
pankso@12701 77 --enable-shared \
pankso@12701 78 --enable-languages=c,c++ \
pankso@12701 79 --enable-c99 \
pankso@12701 80 --enable-long-long \
pankso@12701 81 --enable-__cxa_atexit \
pankso@12716 82 --enable-threads=posix \
pankso@12716 83 --with-pkgversion="SliTaz" \
pankso@12701 84 $CROSS_TRIPLET &&
pankso@12716 85 make && make install &&
pankso@12716 86 make all-target-libgcc &&
pankso@12716 87 make install-target-libgcc ;;
pankso@12701 88 esac
pankso@12701 89
pankso@12716 90 # Some configure options we could use
pankso@12701 91 #--enable-multilib
pankso@12701 92 #--enable-addons
pankso@12716 93 #--with-newlib
pankso@12701 94 }
pankso@12701 95
pankso@12701 96 # Rules to gen a SliTaz package suitable for Tazpkg.
pankso@12701 97 genpkg_rules()
pankso@12701 98 {
pankso@12701 99 mkdir -p $fs/usr
pankso@12701 100 cp -a $install/usr/cross $fs/usr
pankso@12701 101 rm -rf ${fs}${CROSS_PREFIX}/share
pankso@12716 102
pankso@12716 103 # This will fix GCC final build since we dont use --with-sysroot=
pankso@12716 104 # Without that we go errors such as: cannot find crtn.o
pankso@12716 105 cd ${fs}${CROSS_PREFIX}/$CROSS_TARGET
pankso@12716 106 for dir in lib include; do
pankso@12716 107 mv -f $dir/* ../$dir 2>/dev/null
pankso@12716 108 rmdir $dir 2>/dev/null
pankso@12716 109 ln -s ../$dir .
pankso@12716 110 done
pankso@12701 111 }