1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- # Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
- # Contributor: Allan McRae <allan@archlinux.org>
- # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
- pkgname=binutils
- pkgver=2.37
- pkgrel=1
- pkgdesc='A set of programs to assemble and manipulate binary and object files'
- arch=(x86_64)
- url='https://www.gnu.org/software/binutils/'
- license=(GPL)
- groups=(base-devel)
- depends=(glibc zlib elfutils)
- makedepends=(elfutils git)
- conflicts=(binutils-multilib)
- replaces=(binutils-multilib)
- options=(staticlibs !distcc !ccache)
- #_commit=cb5f6a3e146cc70bc2d864989386df80acec5d3e
- #source=(git+https://sourceware.org/git/binutils-gdb.git#commit=$_commit)
- source=(https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.lz)
- sha256sums=('b05287b811bc3ab4beb8192f8b20673e378e9cfe70a3d634fc374e7939281425')
- prepare() {
- [[ ! -d binutils-gdb ]] && ln -s binutils-$pkgver binutils-gdb
- mkdir -p binutils-build
- cd binutils-gdb
- # Turn off development mode (-Werror, gas run-time checks, date in sonames)
- sed -i '/^development=/s/true/false/' bfd/development.sh
- # hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS"
- sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
- }
- build() {
- cd binutils-build
- "$srcdir/binutils-gdb/configure" \
- --prefix=/usr \
- --with-lib-path=/usr/lib:/usr/local/lib \
- --with-bugurl=https://bugs.archlinux.org/ \
- --enable-cet \
- --enable-deterministic-archives \
- --enable-gold \
- --enable-ld=default \
- --enable-lto \
- --enable-plugins \
- --enable-relro \
- --enable-targets=x86_64-pep \
- --enable-threads \
- --disable-gdb \
- --disable-werror \
- --with-debuginfod \
- --with-pic \
- --with-system-zlib
- make configure-host
- make tooldir=/usr
- }
- check() {
- cd binutils-build
- # unset LDFLAGS as testsuite makes assumptions about which ones are active
- # ignore failures in gold testsuite...
- make -k LDFLAGS="" check || true
- }
- package() {
- cd binutils-build
- make prefix="$pkgdir/usr" tooldir="$pkgdir/usr" install
- # Remove unwanted files
- rm -f "$pkgdir"/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}*
- # No shared linking to these files outside binutils
- rm -f "$pkgdir"/usr/lib/lib{bfd,opcodes}.so
- echo 'INPUT( /usr/lib/libbfd.a -liberty -lz -ldl )' > "$pkgdir/usr/lib/libbfd.so"
- echo 'INPUT( /usr/lib/libopcodes.a -lbfd )' > "$pkgdir/usr/lib/libopcodes.so"
- }
|