# Maintainer: Peter Jung # Contributor: grant0417 # Contributor: Araragi Hokuto # Contributor: Marc Boocha _target=x86_64-elf pkgname=$_target-gcc pkgver=12.2.0 pkgrel=1 pkgdesc='The GNU Compiler Collection - cross compiler for x86_64-elf target' arch=(x86_64) url='http://gcc.gnu.org/' license=('GPL' 'LGPL' 'FDL') depends=("$_target-binutils" 'zlib' 'libmpc') makedepends=('gmp' 'mpfr') options=(!emptydirs) conflicts=("$_target-gcc") changelog='.Changelog' source=("https://mirrors.kernel.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz" "https://mirrors.kernel.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz.sig") sha256sums=('e549cf9cf3594a00e27b6589d4322d70e0720cdd213f39beb4181e06926230ff' 'SKIP') _basedir=gcc-$pkgver validpgpkeys=( '13975A70E63C361C73AE69EF6EEB81F8981C74C7' # Richard Guenther 'D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62' # Jakub Jelinek ) prepare() { cd $_basedir sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure mkdir -p $srcdir/build } build() { cd build # GCC build fails with format-security. CFLAGS=${CFLAGS/-Werror=format-security/} CXXFLAGS=${CXXFLAGS/-Werror=format-security/} $srcdir/$_basedir/configure \ --prefix=/usr \ --disable-nls \ --disable-plugin \ --target=$_target \ --libexecdir=/usr/lib \ --enable-languages=c,c++ \ --without-headers \ --with-bugurl=https://aur.archlinux.org/packages/x86_64-elf-gcc/ make all-gcc make all-target-libgcc } check() { cd build # Increase stack size to prevent test failures. # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827 ulimit -s 32768 # Don't abort on error as some are "expected". make -k check || true $srcdir/$_basedir/contrib/test_summary } package() { cd build make DESTDIR="$pkgdir" install-gcc make DESTDIR="$pkgdir" install-target-libgcc # Remove info and make since it expected already present by host compiler rm -vr "$pkgdir"/usr/share/{info,man} }