#! /bin/sh # Copyright (C) 2004 Nokia # Author: lauri.leukkunen@nokia.com # Licenced under GPL, see top level COPYING file for details function my_untar { local filename=$1 local targetdir=$2 my_cat $filename | tar xf - -C $targetdir; } function my_cat { local mycat; if echo $1 | grep -q "\.bz2"; then mycat=bzcat; fi if echo $1 | grep -q "\.gz"; then mycat=zcat; fi if [ x$mycat = x ]; then mycat=cat; fi eval "$mycat $*"; } . ./versions deb_version=$GCC_VER deb_patch_version=$GCC_DEB_PATCH_VER fixed_deb_version=$(echo $deb_version | sed "s/_/-/g") gcc_tarball=gcc-$gcc_version.tar.bz2 gpc_tarball=gpc-$gpc_minimal_version-minimal.tar.bz2 deb_srctar=./download/gcc-$deb_version.orig.tar.gz deb_diff=./download/gcc-$deb_version-$deb_patch_version.diff.gz tmpdir=$(mktemp -d ./tmp-gcc.XXXXXXXXX) my_untar $deb_srctar $tmpdir my_cat $deb_diff | patch -d $tmpdir/gcc-$fixed_deb_version.orig -p1 my_untar $tmpdir/gcc-$fixed_deb_version.orig/$gcc_tarball $tmpdir/ ARCH=$1 if [ x$ARCH = x ]; then ARCH=arm; fi for p in $(cd $tmpdir/gcc-$fixed_deb_version.orig/; echo " DEB_TARGET_ARCH=$ARCH include debian/rules.patch print_patchlist: @echo \$(debian_patches); " | make -f - print_patchlist); do sh $tmpdir/gcc-$fixed_deb_version.orig/debian/patches/$p.dpatch -patch -d $tmpdir/gcc-$gcc_version; done mv $tmpdir/gcc-$gcc_version work/gcc-$fixed_deb_version-patched rm -rf $tmpdir