# $Id: PKGBUILD 137507 2015-07-27 15:44:14Z anatolik $
# Maintainer: schuay <jakob.gruber@gmail.com>
# Contributor: Brad Fanella <bradfanella@archlinux.us>
# Contributor: Corrado Primier <bardo@aur.archlinux.org>
# Contributor: danst0 <danst0@west.de>

# Build order: avr-binutils -> avr-gcc -> avr-libc

pkgname=avr-binutils
pkgver=2.25.1
pkgrel=1
pkgdesc="A set of programs to assemble and manipulate binary and object files for the AVR architecture"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/binutils/"
license=('GPL')
depends=('glibc>=2.17' 'zlib' 'binutils')
options=('!distcc' '!ccache')
install=avr-binutils.install
source=(ftp://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.bz2{,.sig}
        avr-size.patch)
sha1sums=('1d597ae063e3947a5f61e23ceda8aebf78405fcd'
          'SKIP'
          'b6d1ff7084b1f0a3fd2dee5383019ffb202e6c9a')
validpgpkeys=('EAF1C276A747E9ED86210CBAC3126D3B4AE55E93')  # Tristan Gingold

_builddir=binutils-build

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

    # See https://bugs.archlinux.org/task/32504
    # And https://bugs.archlinux.org/task/40986
    patch -Np0 < ${srcdir}/avr-size.patch

    # https://bugs.archlinux.org/task/34629
    sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure

    rm -rf ${srcdir}/${_builddir}
    mkdir ${srcdir}/${_builddir}
}

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

    config_guess=$(./config.guess)

    cd ${srcdir}/${_builddir}

    ${srcdir}/binutils-${pkgver}/configure \
        --prefix=/usr \
        --with-lib-path=/usr/lib:/usr/local/lib \
        --with-bugurl=https://bugs.archlinux.org/ \
        --enable-ld=default \
        --enable-gold \
        --enable-plugins \
        --enable-threads \
        --with-pic \
        --enable-shared \
        --disable-werror \
        --disable-multilib \
        --build=${config_guess} \
        --target=avr \
        $CONFIGFLAG

    # This checks the host environment and makes sure all the necessary tools are available to compile Binutils.
    make configure-host

    make tooldir=/usr
}

package() {
    cd ${srcdir}/${_builddir}

    make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install

    for bin in ar as nm objcopy objdump ranlib strip ; do
        rm -f ${pkgdir}/usr/bin/${bin}
    done

    for info in as bfd binutils gprof ld; do
        mv ${pkgdir}/usr/share/info/${info}.info ${pkgdir}/usr/share/info/avr-${info}.info
    done

    rm -rf ${pkgdir}/usr/share/locale
}
