# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc pkgname=binutils pkgver=2.42 _commit=5f62caec8175cf80a29f2bcab2c5077cbfae8c89 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' 'jansson') checkdepends=('dejagnu' 'bc') options=('!libtool' '!distcc' '!ccache') #source=("https://github.com/bminor/binutils-gdb/archive/${_commit}.zip" source=("https://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.xz" "https://github.com/bminor/binutils-gdb/commit/6aa1b7df2fc435ba1b744f20db5c6d3013496249.diff") sha256sums=('f6e4d41fd5fc778b06b7891457b3620da5ecea1006c6a4a41ae998109f85a800' '8cc8126661aa3cf62ba32a033284cbc195954f8a467e644f0ae0e561a360084e') prepare() { cd binutils-${pkgver} # libiberty configure tests sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure # Keep indirect symbol from IR if referenced from shared object #patch -p1 -i ${srcdir}/6aa1b7df2fc435ba1b744f20db5c6d3013496249.diff } build() { mkdir -p binutils-build cd binutils-build ../binutils-${pkgver}/configure \ --prefix=/usr \ --with-lib-path=/usr/lib:/usr/local/lib \ --with-bugurl=https://github.com/KaOSx/core/issues \ --enable-ld=default \ --enable-gold \ --with-pic \ --enable-plugins \ --enable-threads \ --enable-default-execstack=no \ --enable-jansson \ --disable-werror \ --disable-multilib \ --disable-gdb make configure-host make tooldir=${pkgdir}/usr } check() { cd binutils-build # check log files make LDFLAGS="" -k check || true } package() { cd binutils-build make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install rm ${pkgdir}/usr/share/man/man1/{dlltool,windres,windmc}* # part of gdb rm ${pkgdir}/usr/share/info/ctf-spec.info rm ${pkgdir}/usr/share/info/sframe-spec.info rm ${pkgdir}/usr/include/sframe.h rm ${pkgdir}/usr/include/sframe-api.h rm ${pkgdir}/usr/lib/libsframe.a }