Date: Monday, May 16, 2022 @ 20:29:56 Author: anatolik Revision: 1207606
archrelease: copy trunk to community-testing-x86_64 Added: riscv64-linux-gnu-gcc/repos/community-testing-x86_64/ riscv64-linux-gnu-gcc/repos/community-testing-x86_64/PKGBUILD (from rev 1207605, riscv64-linux-gnu-gcc/trunk/PKGBUILD) ----------+ PKGBUILD | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) Copied: riscv64-linux-gnu-gcc/repos/community-testing-x86_64/PKGBUILD (from rev 1207605, riscv64-linux-gnu-gcc/trunk/PKGBUILD) =================================================================== --- community-testing-x86_64/PKGBUILD (rev 0) +++ community-testing-x86_64/PKGBUILD 2022-05-16 20:29:56 UTC (rev 1207606) @@ -0,0 +1,104 @@ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Maintainer: Filipe Laíns (FFY00) <la...@archlinux.org> +# Contributor: Alexander F. Rødseth <xypr...@archlinux.org> +# Contributor: Emil Renner Berthing <a...@esmil.dk> + +_target=riscv64-linux-gnu +pkgname=$_target-gcc +pkgver=12.1.0 +pkgrel=1 +pkgdesc='Cross compiler for 32-bit and 64-bit RISC-V' +arch=('x86_64') +url='https://gcc.gnu.org/' +license=('GPL' 'LGPL' 'FDL') +groups=('risc-v') +depends=("$_target-binutils" "$_target-glibc" 'libmpc' 'libisl' 'zstd') +options=('!emptydirs' '!strip' '!lto') +source=("https://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-$pkgver.tar.xz") +sha512sums=('2121d295292814a6761edf1fba08c5f633ebe16f52b80e7b73a91050e71e1d2ed98bf17eebad263e191879561c02b48906c53faa4c4670c486a26fc75df23900') + +if [[ -n "$_snapshot" ]]; then + _basedir=gcc-$_snapshot +else + _basedir=gcc-$pkgver +fi + +prepare() { + cd $_basedir + + echo $pkgver > gcc/BASE-VER + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + rm -rf "$srcdir/gcc-build" + mkdir "$srcdir/gcc-build" +} + +build() { + cd gcc-build + + CFLAGS=${CFLAGS/-Werror=format-security/} + CXXFLAGS=${CXXFLAGS/-Werror=format-security/} + + # Using -pipe causes spurious test-suite failures. + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48565 + CFLAGS=${CFLAGS/-pipe/} + CXXFLAGS=${CXXFLAGS/-pipe/} + + "$srcdir/$_basedir/configure" \ + --prefix=/usr \ + --program-prefix=$_target- \ + --with-local-prefix=/usr/$_target \ + --with-sysroot=/usr/$_target \ + --with-build-sysroot=/usr/$_target \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --target=$_target \ + --host=$CHOST \ + --build=$CHOST \ + --with-system-zlib \ + --with-isl \ + --with-linker-hash-style=gnu \ + --disable-nls \ + --disable-libunwind-exceptions \ + --disable-libstdcxx-pch \ + --disable-libssp \ + --disable-multilib \ + --disable-werror \ + --enable-languages=c,c++ \ + --enable-shared \ + --enable-threads=posix \ + --enable-__cxa_atexit \ + --enable-clocale=gnu \ + --enable-gnu-unique-object \ + --enable-linker-build-id \ + --enable-lto \ + --enable-plugin \ + --enable-install-libiberty \ + --enable-gnu-indirect-function \ + --enable-default-pie \ + --enable-checking=release + make +} + +package() { + make -C gcc-build DESTDIR="$pkgdir" \ + install-gcc install-target-libgcc install-target-libstdc++-v3 + + # Strip target binaries + find "$pkgdir/usr/lib/gcc/$_target/" "$pkgdir/usr/$_target/lib" -type f \ + -and \( -name \*.a -or -name \*.o \) -exec $_target-objcopy \ + -R .comment -R .note -R .debug_info -R .debug_aranges -R .debug_pubnames \ + -R .debug_pubtypes -R .debug_abbrev -R .debug_line -R .debug_str \ + -R .debug_ranges -R .debug_loc '{}' \; + + # Strip host binaries + find "$pkgdir/usr/bin/" "$pkgdir/usr/lib/gcc/$_target/" -type f \ + -and \( -executable \) -exec strip '{}' \; + + # Remove files that conflict with host gcc package + rm -r "$pkgdir/usr/share/"{man/man7,info,"gcc-$pkgver"} +} + +# vim: ts=2 sw=2 et: