summaryrefslogtreecommitdiff
path: root/community/cross-arm-elf-binutils/PKGBUILD
blob: 74378797400b1812f3c890f9d4a9d4f1de9a1cd0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# $Id: PKGBUILD 35548 2010-12-21 16:53:03Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>

pkgname=cross-arm-elf-binutils
pkgver=2.21
pkgrel=2
_xprefix=/usr
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=(i686 x86_64 'mips64el')
license=(GPL)
options=(!libtool)
url="http://sources.redhat.com/binutils"
depends=('glibc' 'zlib')
source=(ftp://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.gz)
md5sums=('f11e10f312a58d82f14bf571dd9ff91c')

build() {
  cd $srcdir/binutils-${pkgver}

  [ $NOEXTRACT -eq 1 ] || ./configure --prefix=${_xprefix} \
	--program-prefix=arm-elf- \
	--enable-shared \
	--disable-multilib \
	--with-lib-path=${_xprefix}/lib/binutils/arm-elf \
	--disable-nls \
	--target=arm-elf \
	--host=$CHOST \
	--build=$CHOST \
	--with-sysroot=/usr/$CHOST/arm-elf \
#	--with-build-sysroot=/usr/i686-pc-linux-gnu/arm-elf/

#  mkdir -p $pkgdir/${_xprefix}/lib/binutils
#  sed -i 's|know (S_GET_VALUE (frag->tc_frag_data.last_map) < S_GET_VALUE (symbolP));|{know (S_GET_VALUE (frag->tc_frag_data.last_map) < S_GET_VALUE (symbolP));}|' gas/config/tc-arm.c

  make configure-host
  make tooldir=$pkgdir/${_xprefix}
  make prefix=$pkgdir/${_xprefix} tooldir=$pkgdir/${_xprefix} install

  mkdir -p $pkgdir/${_xprefix}/lib/binutils/arm-elf
  cp -v include/libiberty.h $pkgdir/${_xprefix}/lib/binutils/arm-elf

  rm -f $pkgdir/${_xprefix}/man/man1/{dlltool,nlmconv,windres}*

  rm -f $pkgdir/usr/bin/ar
  rm -f $pkgdir/usr/bin/as
  rm -f $pkgdir/usr/bin/ld
  rm -f $pkgdir/usr/bin/nm
  rm -f $pkgdir/usr/bin/objdump
  rm -f $pkgdir/usr/bin/ranlib
  rm -f $pkgdir/usr/bin/strip
  rm -f $pkgdir/usr/bin/objcopy
  rm -f $pkgdir/usr/lib/libiberty.a
  rm -rf $pkgdir/usr/share
}