Date: Wednesday, February 5, 2020 @ 14:54:11 Author: bpiotrowski Revision: 374673
archrelease: copy trunk to testing-x86_64 Added: gcc/repos/testing-x86_64/PKGBUILD (from rev 374672, gcc/trunk/PKGBUILD) gcc/repos/testing-x86_64/c89 (from rev 374672, gcc/trunk/c89) gcc/repos/testing-x86_64/c99 (from rev 374672, gcc/trunk/c99) gcc/repos/testing-x86_64/gdc_artificial_decl.patch (from rev 374672, gcc/trunk/gdc_artificial_decl.patch) gcc/repos/testing-x86_64/gdc_phobos_path.patch (from rev 374672, gcc/trunk/gdc_phobos_path.patch) gcc/repos/testing-x86_64/gdc_thunk_weak_ref.patch (from rev 374672, gcc/trunk/gdc_thunk_weak_ref.patch) Deleted: gcc/repos/testing-x86_64/PKGBUILD gcc/repos/testing-x86_64/c89 gcc/repos/testing-x86_64/c99 gcc/repos/testing-x86_64/gdc_artificial_decl.patch gcc/repos/testing-x86_64/gdc_phobos_path.patch gcc/repos/testing-x86_64/gdc_thunk_weak_ref.patch ---------------------------+ PKGBUILD | 830 +++++++++++++++++++++----------------------- c89 | 20 - c99 | 20 - gdc_artificial_decl.patch | 86 ++-- gdc_phobos_path.patch | 28 - gdc_thunk_weak_ref.patch | 28 - 6 files changed, 505 insertions(+), 507 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2020-02-05 14:53:55 UTC (rev 374672) +++ PKGBUILD 2020-02-05 14:54:11 UTC (rev 374673) @@ -1,416 +0,0 @@ -# Maintainer: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> -# Contributor: Allan McRae <al...@archlinux.org> -# Contributor: Daniel Kozak <kozz...@gmail.com> - -# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc -# NOTE: libtool requires rebuilt with each new gcc version - -pkgname=(gcc gcc-libs gcc-fortran gcc-objc gcc-ada gcc-go lib32-gcc-libs gcc-d) -pkgver=9.2.1+20200130 -_majorver=${pkgver:0:1} -_islver=0.21 -pkgrel=1 -pkgdesc='The GNU Compiler Collection' -arch=(x86_64) -license=(GPL LGPL FDL custom) -url='https://gcc.gnu.org' -makedepends=(binutils libmpc gcc-ada doxygen lib32-glibc lib32-gcc-libs python git) -checkdepends=(dejagnu inetutils) -options=(!emptydirs) -_libdir=usr/lib/gcc/$CHOST/${pkgver%%+*} -#source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig} -_commit=6957d3e4eef1f4243eb23ff62aea06139ef4415a -source=(git://gcc.gnu.org/git/gcc.git#commit=$_commit - http://isl.gforge.inria.fr/isl-${_islver}.tar.xz - c89 c99 - gdc_phobos_path.patch - gdc_artificial_decl.patch - gdc_thunk_weak_ref.patch) -validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrow...@archlinux.org - 86CFFCA918CF3AF47147588051E8B148A9999C34 # evange...@foutrelis.com - 13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guent...@gmail.com - 33C235A34C46AA3FFB293709A328C3A2C3C45C06) # Jakub Jelinek <ja...@redhat.com> -sha256sums=('SKIP' - '777058852a3db9500954361e294881214f6ecd4b594c00da5eee974cd6a54960' - 'de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931' - '2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a' - 'c86372c207d174c0918d4aedf1cb79f7fc093649eb1ad8d9450dccc46849d308' - '3862757491160700ac2fb723096f6f636f30320cccc6efd9537149ed348b57d1' - '9699d7105375754f0dcf6abff87d09b270565bfc6578a13641770f3fc62d678a') - -prepare() { - [[ ! -d gcc ]] && ln -s gcc-${pkgver/+/-} gcc - cd gcc - - echo "Arch Linux $pkgver-$pkgrel" > DEV-PHASE - - # link isl for in-tree build - ln -s ../isl-${_islver} isl - - # Do not run fixincludes - sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in - - # Arch Linux installs x86_64 libraries /lib - sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 - - # hack! - some configure tests for header files using "$CPP $CPPFLAGS" - sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure - - # D hacks - patch -p1 -i "$srcdir/gdc_phobos_path.patch" - patch -p1 -i "$srcdir/gdc_artificial_decl.patch" - patch -p1 -i "$srcdir/gdc_thunk_weak_ref.patch" - #sed -i "/GDCFLAGSX=/s/-Wall/-shared-libphobos -Wall/" libphobos/configure - - mkdir -p "$srcdir/gcc-build" -} - -build() { - cd gcc-build - - # using -pipe causes spurious test-suite failures - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48565 - CFLAGS=${CFLAGS/-pipe/} - CXXFLAGS=${CXXFLAGS/-pipe/} - - "$srcdir/gcc/configure" --prefix=/usr \ - --libdir=/usr/lib \ - --libexecdir=/usr/lib \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --with-pkgversion="Arch Linux $pkgver-$pkgrel" \ - --with-bugurl=https://bugs.archlinux.org/ \ - --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d \ - --enable-shared \ - --enable-threads=posix \ - --with-system-zlib \ - --with-isl \ - --enable-__cxa_atexit \ - --disable-libunwind-exceptions \ - --enable-clocale=gnu \ - --disable-libstdcxx-pch \ - --disable-libssp \ - --enable-gnu-unique-object \ - --enable-linker-build-id \ - --enable-lto \ - --enable-plugin \ - --enable-install-libiberty \ - --with-linker-hash-style=gnu \ - --enable-gnu-indirect-function \ - --enable-multilib \ - --disable-werror \ - --enable-checking=release \ - --enable-default-pie \ - --enable-default-ssp \ - --enable-cet=auto \ - gdc_include_dir=/usr/include/dlang/gdc - - make - - # make documentation - make -C $CHOST/libstdc++-v3/doc doc-man-doxygen -} - -check() { - cd gcc-build - - # disable libphobos test to avoid segfaults and other unfunny ways to waste my time - sed -i '/maybe-check-target-libphobos \\/d' Makefile - - # do not abort on error as some are "expected" - make -k check || true - "$srcdir/gcc/contrib/test_summary" -} - -package_gcc-libs() { - pkgdesc='Runtime libraries shipped by GCC' - depends=('glibc>=2.27') - options+=(!strip) - provides=($pkgname-multilib libgo.so libgfortran.so libgphobos.so - libubsan.so libasan.so libtsan.so liblsan.so) - replaces=($pkgname-multilib libgphobos) - - cd gcc-build - make -C $CHOST/libgcc DESTDIR="$pkgdir" install-shared - rm -f "$pkgdir/$_libdir/libgcc_eh.a" - - for lib in libatomic \ - libgfortran \ - libgo \ - libgomp \ - libitm \ - libquadmath \ - libsanitizer/{a,l,ub,t}san \ - libstdc++-v3/src \ - libvtv; do - make -C $CHOST/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES - done - - make -C $CHOST/libobjc DESTDIR="$pkgdir" install-libs - make -C $CHOST/libstdc++-v3/po DESTDIR="$pkgdir" install - - make -C $CHOST/libphobos DESTDIR="$pkgdir" install - rm -rf "$pkgdir"/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/d/ - rm -f "$pkgdir"/usr/lib/libgphobos.spec - - for lib in libgomp \ - libitm \ - libquadmath; do - make -C $CHOST/$lib DESTDIR="$pkgdir" install-info - done - - # remove files provided by lib32-gcc-libs - rm -rf "$pkgdir"/usr/lib32/ - - # Install Runtime Library Exception - install -Dm644 "$srcdir/gcc/COPYING.RUNTIME" \ - "$pkgdir/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION" -} - -package_gcc() { - pkgdesc="The GNU Compiler Collection - C and C++ frontends" - depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.28' libmpc) - groups=('base-devel') - optdepends=('lib32-gcc-libs: for generating code for 32-bit ABI') - provides=($pkgname-multilib) - replaces=($pkgname-multilib) - options+=(staticlibs) - - cd gcc-build - - make -C gcc DESTDIR="$pkgdir" install-driver install-cpp install-gcc-ar \ - c++.install-common install-headers install-plugin install-lto-wrapper - - install -m755 -t "$pkgdir/usr/bin/" gcc/gcov{,-tool} - install -m755 -t "$pkgdir/${_libdir}/" gcc/{cc1,cc1plus,collect2,lto1} - - make -C $CHOST/libgcc DESTDIR="$pkgdir" install - make -C $CHOST/32/libgcc DESTDIR="$pkgdir" install - rm -f "$pkgdir"/usr/lib{,32}/libgcc_s.so* - - make -C $CHOST/libstdc++-v3/src DESTDIR="$pkgdir" install - make -C $CHOST/libstdc++-v3/include DESTDIR="$pkgdir" install - make -C $CHOST/libstdc++-v3/libsupc++ DESTDIR="$pkgdir" install - make -C $CHOST/libstdc++-v3/python DESTDIR="$pkgdir" install - make -C $CHOST/32/libstdc++-v3/src DESTDIR="$pkgdir" install - make -C $CHOST/32/libstdc++-v3/include DESTDIR="$pkgdir" install - make -C $CHOST/32/libstdc++-v3/libsupc++ DESTDIR="$pkgdir" install - - make DESTDIR="$pkgdir" install-libcc1 - install -d "$pkgdir/usr/share/gdb/auto-load/usr/lib" - mv "$pkgdir"/usr/lib/libstdc++.so.6.*-gdb.py \ - "$pkgdir/usr/share/gdb/auto-load/usr/lib/" - rm "$pkgdir"/usr/lib{,32}/libstdc++.so* - - make DESTDIR="$pkgdir" install-fixincludes - make -C gcc DESTDIR="$pkgdir" install-mkheaders - - make -C lto-plugin DESTDIR="$pkgdir" install - install -dm755 "$pkgdir"/usr/lib/bfd-plugins/ - ln -s /${_libdir}/liblto_plugin.so \ - "$pkgdir/usr/lib/bfd-plugins/" - - make -C $CHOST/libgomp DESTDIR="$pkgdir" install-nodist_{libsubinclude,toolexeclib}HEADERS - make -C $CHOST/libitm DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - make -C $CHOST/libquadmath DESTDIR="$pkgdir" install-nodist_libsubincludeHEADERS - make -C $CHOST/libsanitizer DESTDIR="$pkgdir" install-nodist_{saninclude,toolexeclib}HEADERS - make -C $CHOST/libsanitizer/asan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - make -C $CHOST/libsanitizer/tsan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - make -C $CHOST/libsanitizer/lsan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - make -C $CHOST/32/libgomp DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - make -C $CHOST/32/libitm DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - make -C $CHOST/32/libsanitizer DESTDIR="$pkgdir" install-nodist_{saninclude,toolexeclib}HEADERS - make -C $CHOST/32/libsanitizer/asan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS - - make -C libiberty DESTDIR="$pkgdir" install - install -m644 libiberty/pic/libiberty.a "$pkgdir/usr/lib" - - make -C gcc DESTDIR="$pkgdir" install-man install-info - rm "$pkgdir"/usr/share/man/man1/{gccgo,gfortran,gdc}.1 - rm "$pkgdir"/usr/share/info/{gccgo,gfortran,gnat-style,gnat_rm,gnat_ugn,gdc}.info - - make -C libcpp DESTDIR="$pkgdir" install - make -C gcc DESTDIR="$pkgdir" install-po - - # many packages expect this symlink - ln -s gcc "$pkgdir"/usr/bin/cc - - # POSIX conformance launcher scripts for c89 and c99 - install -Dm755 "$srcdir/c89" "$pkgdir/usr/bin/c89" - install -Dm755 "$srcdir/c99" "$pkgdir/usr/bin/c99" - - # install the libstdc++ man pages - make -C $CHOST/libstdc++-v3/doc DESTDIR="$pkgdir" doc-install-man - - # remove files provided by lib32-gcc-libs - rm -f "$pkgdir"/usr/lib32/lib{stdc++,gcc_s}.so - - # byte-compile python libraries - python -m compileall "$pkgdir/usr/share/gcc-${pkgver%%+*}/" - python -O -m compileall "$pkgdir/usr/share/gcc-${pkgver%%+*}/" - - # Install Runtime Library Exception - install -d "$pkgdir/usr/share/licenses/$pkgname/" - ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ - "$pkgdir/usr/share/licenses/$pkgname/" -} - -package_gcc-fortran() { - pkgdesc='Fortran front-end for GCC' - depends=("gcc=$pkgver-$pkgrel") - provides=($pkgname-multilib) - replaces=($pkgname-multilib) - - cd gcc-build - make -C $CHOST/libgfortran DESTDIR="$pkgdir" install-cafexeclibLTLIBRARIES \ - install-{toolexeclibDATA,nodist_fincludeHEADERS,gfor_cHEADERS} - make -C $CHOST/32/libgfortran DESTDIR=$pkgdir install-cafexeclibLTLIBRARIES \ - install-{toolexeclibDATA,nodist_fincludeHEADERS,gfor_cHEADERS} - make -C $CHOST/libgomp DESTDIR="$pkgdir" install-nodist_fincludeHEADERS - make -C gcc DESTDIR="$pkgdir" fortran.install-{common,man,info} - install -Dm755 gcc/f951 "$pkgdir/${_libdir}/f951" - - ln -s gfortran "$pkgdir/usr/bin/f95" - - # Install Runtime Library Exception - install -d "$pkgdir/usr/share/licenses/$pkgname/" - ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ - "$pkgdir/usr/share/licenses/$pkgname/" -} - -package_gcc-objc() { - pkgdesc='Objective-C front-end for GCC' - depends=("gcc=$pkgver-$pkgrel") - provides=($pkgname-multilib) - replaces=($pkgname-multilib) - - cd gcc-build - make DESTDIR="$pkgdir" -C $CHOST/libobjc install-headers - install -dm755 "$pkgdir/${_libdir}" - install -m755 gcc/cc1obj{,plus} "$pkgdir/${_libdir}/" - - # Install Runtime Library Exception - install -d "$pkgdir/usr/share/licenses/$pkgname/" - ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ - "$pkgdir/usr/share/licenses/$pkgname/" -} - -package_gcc-ada() { - pkgdesc='Ada front-end for GCC (GNAT)' - depends=("gcc=$pkgver-$pkgrel") - provides=($pkgname-multilib) - replaces=($pkgname-multilib) - options+=(staticlibs) - - cd gcc-build/gcc - make DESTDIR="$pkgdir" ada.install-{common,info} - install -m755 gnat1 "$pkgdir/${_libdir}" - - cd "$srcdir"/gcc-build/$CHOST/32/libada - make DESTDIR=${pkgdir} INSTALL="install" \ - INSTALL_DATA="install -m644" install-libada - - ln -s gcc "$pkgdir/usr/bin/gnatgcc" - - # insist on dynamic linking, but keep static libraries because gnatmake complains - mv "$pkgdir"/${_libdir}/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir/usr/lib" - ln -s libgnarl-${_majorver}.so "$pkgdir/usr/lib/libgnarl.so" - ln -s libgnat-${_majorver}.so "$pkgdir/usr/lib/libgnat.so" - rm -f "$pkgdir"/${_libdir}/adalib/libgna{rl,t}.so - - install -d "$pkgdir/usr/lib32/" - mv "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir/usr/lib32" - ln -s libgnarl-${_majorver}.so "$pkgdir/usr/lib32/libgnarl.so" - ln -s libgnat-${_majorver}.so "$pkgdir/usr/lib32/libgnat.so" - rm -f "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}.so - - # Install Runtime Library Exception - install -d "$pkgdir/usr/share/licenses/$pkgname/" - ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ - "$pkgdir/usr/share/licenses/$pkgname/" -} - -package_gcc-go() { - pkgdesc='Go front-end for GCC' - depends=("gcc=$pkgver-$pkgrel") - provides=("go=1.12.2" $pkgname-multilib) - replaces=($pkgname-multilib) - conflicts=(go) - - cd gcc-build - make -C $CHOST/libgo DESTDIR="$pkgdir" install-exec-am - make -C $CHOST/32/libgo DESTDIR="$pkgdir" install-exec-am - make DESTDIR="$pkgdir" install-gotools - make -C gcc DESTDIR="$pkgdir" go.install-{common,man,info} - - rm -f "$pkgdir"/usr/lib{,32}/libgo.so* - install -Dm755 gcc/go1 "$pkgdir/${_libdir}/go1" - - # Install Runtime Library Exception - install -d "$pkgdir/usr/share/licenses/$pkgname/" - ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ - "$pkgdir/usr/share/licenses/$pkgname/" -} - -package_lib32-gcc-libs() { - pkgdesc='32-bit runtime libraries shipped by GCC' - depends=('lib32-glibc>=2.27') - provides=(libgo.so libgfortran.so libubsan.so libasan.so) - groups=(multilib-devel) - options=(!emptydirs !strip) - - cd gcc-build - - make -C $CHOST/32/libgcc DESTDIR="$pkgdir" install-shared - rm -f "$pkgdir/$_libdir/32/libgcc_eh.a" - - for lib in libatomic \ - libgfortran \ - libgo \ - libgomp \ - libitm \ - libquadmath \ - libsanitizer/{a,l,ub}san \ - libstdc++-v3/src \ - libvtv; do - make -C $CHOST/32/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES - done - - make -C $CHOST/32/libobjc DESTDIR="$pkgdir" install-libs - - make -C $CHOST/libphobos DESTDIR="$pkgdir" install - rm -f "$pkgdir"/usr/lib32/libgphobos.spec - - # remove files provided by gcc-libs - rm -rf "$pkgdir"/usr/lib - - # Install Runtime Library Exception - install -Dm644 "$srcdir/gcc/COPYING.RUNTIME" \ - "$pkgdir/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION" -} - -package_gcc-d() { - pkgdesc="D frontend for GCC" - depends=("gcc=$pkgver-$pkgrel") - provides=(gdc) - replaces=(gdc) - options=('staticlibs') - - cd gcc-build - make -C gcc DESTDIR="$pkgdir" d.install-{common,man,info} - - install -Dm755 gcc/gdc "$pkgdir"/usr/bin/gdc - install -Dm755 gcc/d21 "$pkgdir"/"$_libdir"/d21 - - make -C $CHOST/libphobos DESTDIR="$pkgdir" install - rm -f "$pkgdir/usr/lib/"lib{gphobos,gdruntime}.so* - rm -f "$pkgdir/usr/lib32/"lib{gphobos,gdruntime}.so* - - install -d "$pkgdir"/usr/include/dlang - ln -s /"${_libdir}"/include/d "$pkgdir"/usr/include/dlang/gdc - - # Install Runtime Library Exception - install -d "$pkgdir/usr/share/licenses/$pkgname/" - ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ - "$pkgdir/usr/share/licenses/$pkgname/" -} Copied: gcc/repos/testing-x86_64/PKGBUILD (from rev 374672, gcc/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2020-02-05 14:54:11 UTC (rev 374673) @@ -0,0 +1,414 @@ +# Maintainer: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> +# Contributor: Allan McRae <al...@archlinux.org> +# Contributor: Daniel Kozak <kozz...@gmail.com> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc +# NOTE: libtool requires rebuilt with each new gcc version + +pkgname=(gcc gcc-libs gcc-fortran gcc-objc gcc-ada gcc-go lib32-gcc-libs gcc-d) +pkgver=9.2.1+20200130 +_majorver=${pkgver:0:1} +_islver=0.21 +pkgrel=2 +pkgdesc='The GNU Compiler Collection' +arch=(x86_64) +license=(GPL LGPL FDL custom) +url='https://gcc.gnu.org' +makedepends=(binutils libmpc gcc-ada doxygen lib32-glibc lib32-gcc-libs python git) +checkdepends=(dejagnu inetutils) +options=(!emptydirs) +_libdir=usr/lib/gcc/$CHOST/${pkgver%%+*} +#source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig} +_commit=6957d3e4eef1f4243eb23ff62aea06139ef4415a +source=(git://gcc.gnu.org/git/gcc.git#commit=$_commit + http://isl.gforge.inria.fr/isl-${_islver}.tar.xz + c89 c99 + gdc_phobos_path.patch + gdc_artificial_decl.patch + gdc_thunk_weak_ref.patch) +validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrow...@archlinux.org + 86CFFCA918CF3AF47147588051E8B148A9999C34 # evange...@foutrelis.com + 13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guent...@gmail.com + 33C235A34C46AA3FFB293709A328C3A2C3C45C06) # Jakub Jelinek <ja...@redhat.com> +sha256sums=('SKIP' + '777058852a3db9500954361e294881214f6ecd4b594c00da5eee974cd6a54960' + 'de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931' + '2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a' + 'c86372c207d174c0918d4aedf1cb79f7fc093649eb1ad8d9450dccc46849d308' + '3862757491160700ac2fb723096f6f636f30320cccc6efd9537149ed348b57d1' + '9699d7105375754f0dcf6abff87d09b270565bfc6578a13641770f3fc62d678a') + +prepare() { + [[ ! -d gcc ]] && ln -s gcc-${pkgver/+/-} gcc + cd gcc + + # link isl for in-tree build + ln -s ../isl-${_islver} isl + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + # Arch Linux installs x86_64 libraries /lib + sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 + + # hack! - some configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure + + # D hacks + patch -p1 -i "$srcdir/gdc_phobos_path.patch" + patch -p1 -i "$srcdir/gdc_artificial_decl.patch" + patch -p1 -i "$srcdir/gdc_thunk_weak_ref.patch" + #sed -i "/GDCFLAGSX=/s/-Wall/-shared-libphobos -Wall/" libphobos/configure + + mkdir -p "$srcdir/gcc-build" +} + +build() { + cd gcc-build + + # using -pipe causes spurious test-suite failures + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48565 + CFLAGS=${CFLAGS/-pipe/} + CXXFLAGS=${CXXFLAGS/-pipe/} + + "$srcdir/gcc/configure" --prefix=/usr \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-pkgversion="Arch Linux $pkgver-$pkgrel" \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d \ + --enable-shared \ + --enable-threads=posix \ + --with-system-zlib \ + --with-isl \ + --enable-__cxa_atexit \ + --disable-libunwind-exceptions \ + --enable-clocale=gnu \ + --disable-libstdcxx-pch \ + --disable-libssp \ + --enable-gnu-unique-object \ + --enable-linker-build-id \ + --enable-lto \ + --enable-plugin \ + --enable-install-libiberty \ + --with-linker-hash-style=gnu \ + --enable-gnu-indirect-function \ + --enable-multilib \ + --disable-werror \ + --enable-checking=release \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-cet=auto \ + gdc_include_dir=/usr/include/dlang/gdc + + make + + # make documentation + make -C $CHOST/libstdc++-v3/doc doc-man-doxygen +} + +check() { + cd gcc-build + + # disable libphobos test to avoid segfaults and other unfunny ways to waste my time + sed -i '/maybe-check-target-libphobos \\/d' Makefile + + # do not abort on error as some are "expected" + make -k check || true + "$srcdir/gcc/contrib/test_summary" +} + +package_gcc-libs() { + pkgdesc='Runtime libraries shipped by GCC' + depends=('glibc>=2.27') + options+=(!strip) + provides=($pkgname-multilib libgo.so libgfortran.so libgphobos.so + libubsan.so libasan.so libtsan.so liblsan.so) + replaces=($pkgname-multilib libgphobos) + + cd gcc-build + make -C $CHOST/libgcc DESTDIR="$pkgdir" install-shared + rm -f "$pkgdir/$_libdir/libgcc_eh.a" + + for lib in libatomic \ + libgfortran \ + libgo \ + libgomp \ + libitm \ + libquadmath \ + libsanitizer/{a,l,ub,t}san \ + libstdc++-v3/src \ + libvtv; do + make -C $CHOST/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES + done + + make -C $CHOST/libobjc DESTDIR="$pkgdir" install-libs + make -C $CHOST/libstdc++-v3/po DESTDIR="$pkgdir" install + + make -C $CHOST/libphobos DESTDIR="$pkgdir" install + rm -rf "$pkgdir"/$_libdir/include/d/ + rm -f "$pkgdir"/usr/lib/libgphobos.spec + + for lib in libgomp \ + libitm \ + libquadmath; do + make -C $CHOST/$lib DESTDIR="$pkgdir" install-info + done + + # remove files provided by lib32-gcc-libs + rm -rf "$pkgdir"/usr/lib32/ + + # Install Runtime Library Exception + install -Dm644 "$srcdir/gcc/COPYING.RUNTIME" \ + "$pkgdir/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION" +} + +package_gcc() { + pkgdesc="The GNU Compiler Collection - C and C++ frontends" + depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.28' libmpc) + groups=('base-devel') + optdepends=('lib32-gcc-libs: for generating code for 32-bit ABI') + provides=($pkgname-multilib) + replaces=($pkgname-multilib) + options+=(staticlibs) + + cd gcc-build + + make -C gcc DESTDIR="$pkgdir" install-driver install-cpp install-gcc-ar \ + c++.install-common install-headers install-plugin install-lto-wrapper + + install -m755 -t "$pkgdir/usr/bin/" gcc/gcov{,-tool} + install -m755 -t "$pkgdir/${_libdir}/" gcc/{cc1,cc1plus,collect2,lto1} + + make -C $CHOST/libgcc DESTDIR="$pkgdir" install + make -C $CHOST/32/libgcc DESTDIR="$pkgdir" install + rm -f "$pkgdir"/usr/lib{,32}/libgcc_s.so* + + make -C $CHOST/libstdc++-v3/src DESTDIR="$pkgdir" install + make -C $CHOST/libstdc++-v3/include DESTDIR="$pkgdir" install + make -C $CHOST/libstdc++-v3/libsupc++ DESTDIR="$pkgdir" install + make -C $CHOST/libstdc++-v3/python DESTDIR="$pkgdir" install + make -C $CHOST/32/libstdc++-v3/src DESTDIR="$pkgdir" install + make -C $CHOST/32/libstdc++-v3/include DESTDIR="$pkgdir" install + make -C $CHOST/32/libstdc++-v3/libsupc++ DESTDIR="$pkgdir" install + + make DESTDIR="$pkgdir" install-libcc1 + install -d "$pkgdir/usr/share/gdb/auto-load/usr/lib" + mv "$pkgdir"/usr/lib/libstdc++.so.6.*-gdb.py \ + "$pkgdir/usr/share/gdb/auto-load/usr/lib/" + rm "$pkgdir"/usr/lib{,32}/libstdc++.so* + + make DESTDIR="$pkgdir" install-fixincludes + make -C gcc DESTDIR="$pkgdir" install-mkheaders + + make -C lto-plugin DESTDIR="$pkgdir" install + install -dm755 "$pkgdir"/usr/lib/bfd-plugins/ + ln -s /${_libdir}/liblto_plugin.so \ + "$pkgdir/usr/lib/bfd-plugins/" + + make -C $CHOST/libgomp DESTDIR="$pkgdir" install-nodist_{libsubinclude,toolexeclib}HEADERS + make -C $CHOST/libitm DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + make -C $CHOST/libquadmath DESTDIR="$pkgdir" install-nodist_libsubincludeHEADERS + make -C $CHOST/libsanitizer DESTDIR="$pkgdir" install-nodist_{saninclude,toolexeclib}HEADERS + make -C $CHOST/libsanitizer/asan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + make -C $CHOST/libsanitizer/tsan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + make -C $CHOST/libsanitizer/lsan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + make -C $CHOST/32/libgomp DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + make -C $CHOST/32/libitm DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + make -C $CHOST/32/libsanitizer DESTDIR="$pkgdir" install-nodist_{saninclude,toolexeclib}HEADERS + make -C $CHOST/32/libsanitizer/asan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS + + make -C libiberty DESTDIR="$pkgdir" install + install -m644 libiberty/pic/libiberty.a "$pkgdir/usr/lib" + + make -C gcc DESTDIR="$pkgdir" install-man install-info + rm "$pkgdir"/usr/share/man/man1/{gccgo,gfortran,gdc}.1 + rm "$pkgdir"/usr/share/info/{gccgo,gfortran,gnat-style,gnat_rm,gnat_ugn,gdc}.info + + make -C libcpp DESTDIR="$pkgdir" install + make -C gcc DESTDIR="$pkgdir" install-po + + # many packages expect this symlink + ln -s gcc "$pkgdir"/usr/bin/cc + + # POSIX conformance launcher scripts for c89 and c99 + install -Dm755 "$srcdir/c89" "$pkgdir/usr/bin/c89" + install -Dm755 "$srcdir/c99" "$pkgdir/usr/bin/c99" + + # install the libstdc++ man pages + make -C $CHOST/libstdc++-v3/doc DESTDIR="$pkgdir" doc-install-man + + # remove files provided by lib32-gcc-libs + rm -f "$pkgdir"/usr/lib32/lib{stdc++,gcc_s}.so + + # byte-compile python libraries + python -m compileall "$pkgdir/usr/share/gcc-${pkgver%%+*}/" + python -O -m compileall "$pkgdir/usr/share/gcc-${pkgver%%+*}/" + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + +package_gcc-fortran() { + pkgdesc='Fortran front-end for GCC' + depends=("gcc=$pkgver-$pkgrel") + provides=($pkgname-multilib) + replaces=($pkgname-multilib) + + cd gcc-build + make -C $CHOST/libgfortran DESTDIR="$pkgdir" install-cafexeclibLTLIBRARIES \ + install-{toolexeclibDATA,nodist_fincludeHEADERS,gfor_cHEADERS} + make -C $CHOST/32/libgfortran DESTDIR=$pkgdir install-cafexeclibLTLIBRARIES \ + install-{toolexeclibDATA,nodist_fincludeHEADERS,gfor_cHEADERS} + make -C $CHOST/libgomp DESTDIR="$pkgdir" install-nodist_fincludeHEADERS + make -C gcc DESTDIR="$pkgdir" fortran.install-{common,man,info} + install -Dm755 gcc/f951 "$pkgdir/${_libdir}/f951" + + ln -s gfortran "$pkgdir/usr/bin/f95" + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + +package_gcc-objc() { + pkgdesc='Objective-C front-end for GCC' + depends=("gcc=$pkgver-$pkgrel") + provides=($pkgname-multilib) + replaces=($pkgname-multilib) + + cd gcc-build + make DESTDIR="$pkgdir" -C $CHOST/libobjc install-headers + install -dm755 "$pkgdir/${_libdir}" + install -m755 gcc/cc1obj{,plus} "$pkgdir/${_libdir}/" + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + +package_gcc-ada() { + pkgdesc='Ada front-end for GCC (GNAT)' + depends=("gcc=$pkgver-$pkgrel") + provides=($pkgname-multilib) + replaces=($pkgname-multilib) + options+=(staticlibs) + + cd gcc-build/gcc + make DESTDIR="$pkgdir" ada.install-{common,info} + install -m755 gnat1 "$pkgdir/${_libdir}" + + cd "$srcdir"/gcc-build/$CHOST/32/libada + make DESTDIR=${pkgdir} INSTALL="install" \ + INSTALL_DATA="install -m644" install-libada + + ln -s gcc "$pkgdir/usr/bin/gnatgcc" + + # insist on dynamic linking, but keep static libraries because gnatmake complains + mv "$pkgdir"/${_libdir}/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir/usr/lib" + ln -s libgnarl-${_majorver}.so "$pkgdir/usr/lib/libgnarl.so" + ln -s libgnat-${_majorver}.so "$pkgdir/usr/lib/libgnat.so" + rm -f "$pkgdir"/${_libdir}/adalib/libgna{rl,t}.so + + install -d "$pkgdir/usr/lib32/" + mv "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir/usr/lib32" + ln -s libgnarl-${_majorver}.so "$pkgdir/usr/lib32/libgnarl.so" + ln -s libgnat-${_majorver}.so "$pkgdir/usr/lib32/libgnat.so" + rm -f "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}.so + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + +package_gcc-go() { + pkgdesc='Go front-end for GCC' + depends=("gcc=$pkgver-$pkgrel") + provides=("go=1.12.2" $pkgname-multilib) + replaces=($pkgname-multilib) + conflicts=(go) + + cd gcc-build + make -C $CHOST/libgo DESTDIR="$pkgdir" install-exec-am + make -C $CHOST/32/libgo DESTDIR="$pkgdir" install-exec-am + make DESTDIR="$pkgdir" install-gotools + make -C gcc DESTDIR="$pkgdir" go.install-{common,man,info} + + rm -f "$pkgdir"/usr/lib{,32}/libgo.so* + install -Dm755 gcc/go1 "$pkgdir/${_libdir}/go1" + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + +package_lib32-gcc-libs() { + pkgdesc='32-bit runtime libraries shipped by GCC' + depends=('lib32-glibc>=2.27') + provides=(libgo.so libgfortran.so libubsan.so libasan.so) + groups=(multilib-devel) + options=(!emptydirs !strip) + + cd gcc-build + + make -C $CHOST/32/libgcc DESTDIR="$pkgdir" install-shared + rm -f "$pkgdir/$_libdir/32/libgcc_eh.a" + + for lib in libatomic \ + libgfortran \ + libgo \ + libgomp \ + libitm \ + libquadmath \ + libsanitizer/{a,l,ub}san \ + libstdc++-v3/src \ + libvtv; do + make -C $CHOST/32/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES + done + + make -C $CHOST/32/libobjc DESTDIR="$pkgdir" install-libs + + make -C $CHOST/libphobos DESTDIR="$pkgdir" install + rm -f "$pkgdir"/usr/lib32/libgphobos.spec + + # remove files provided by gcc-libs + rm -rf "$pkgdir"/usr/lib + + # Install Runtime Library Exception + install -Dm644 "$srcdir/gcc/COPYING.RUNTIME" \ + "$pkgdir/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION" +} + +package_gcc-d() { + pkgdesc="D frontend for GCC" + depends=("gcc=$pkgver-$pkgrel") + provides=(gdc) + replaces=(gdc) + options=('staticlibs') + + cd gcc-build + make -C gcc DESTDIR="$pkgdir" d.install-{common,man,info} + + install -Dm755 gcc/gdc "$pkgdir"/usr/bin/gdc + install -Dm755 gcc/d21 "$pkgdir"/"$_libdir"/d21 + + make -C $CHOST/libphobos DESTDIR="$pkgdir" install + rm -f "$pkgdir/usr/lib/"lib{gphobos,gdruntime}.so* + rm -f "$pkgdir/usr/lib32/"lib{gphobos,gdruntime}.so* + + install -d "$pkgdir"/usr/include/dlang + ln -s /"${_libdir}"/include/d "$pkgdir"/usr/include/dlang/gdc + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} Deleted: c89 =================================================================== --- c89 2020-02-05 14:53:55 UTC (rev 374672) +++ c89 2020-02-05 14:54:11 UTC (rev 374673) @@ -1,10 +0,0 @@ -#!/bin/sh -fl="-std=c89" -for opt; do - case "$opt" in - -ansi|-std=c89|-std=iso9899:1990) fl="";; - -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2 - exit 1;; - esac -done -exec gcc $fl ${1+"$@"} Copied: gcc/repos/testing-x86_64/c89 (from rev 374672, gcc/trunk/c89) =================================================================== --- c89 (rev 0) +++ c89 2020-02-05 14:54:11 UTC (rev 374673) @@ -0,0 +1,10 @@ +#!/bin/sh +fl="-std=c89" +for opt; do + case "$opt" in + -ansi|-std=c89|-std=iso9899:1990) fl="";; + -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} Deleted: c99 =================================================================== --- c99 2020-02-05 14:53:55 UTC (rev 374672) +++ c99 2020-02-05 14:54:11 UTC (rev 374673) @@ -1,10 +0,0 @@ -#!/bin/sh -fl="-std=c99" -for opt; do - case "$opt" in - -std=c99|-std=iso9899:1999) fl="";; - -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2 - exit 1;; - esac -done -exec gcc $fl ${1+"$@"} Copied: gcc/repos/testing-x86_64/c99 (from rev 374672, gcc/trunk/c99) =================================================================== --- c99 (rev 0) +++ c99 2020-02-05 14:54:11 UTC (rev 374673) @@ -0,0 +1,10 @@ +#!/bin/sh +fl="-std=c99" +for opt; do + case "$opt" in + -std=c99|-std=iso9899:1999) fl="";; + -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} Deleted: gdc_artificial_decl.patch =================================================================== --- gdc_artificial_decl.patch 2020-02-05 14:53:55 UTC (rev 374672) +++ gdc_artificial_decl.patch 2020-02-05 14:54:11 UTC (rev 374673) @@ -1,43 +0,0 @@ -diff --git a/gcc/d/d-tree.h b/gcc/d/d-tree.h -index a514bc3902f..303d52390c2 100644 ---- a/gcc/d/d-tree.h -+++ b/gcc/d/d-tree.h -@@ -600,6 +600,7 @@ extern tree d_signed_type (tree); - extern void d_keep (tree); - - /* In decl.cc. */ -+extern const char *mangle_decl (Dsymbol *); - extern tree mangle_internal_decl (Dsymbol *, const char *, const char *); - extern void build_decl_tree (Dsymbol *); - extern tree get_symbol_decl (Declaration *); -diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc -index 49723649230..90871b4c90b 100644 ---- a/gcc/d/decl.cc -+++ b/gcc/d/decl.cc -@@ -59,7 +59,7 @@ along with GCC; see the file COPYING3. If not see - - /* Return identifier for the external mangled name of DECL. */ - --static const char * -+const char * - mangle_decl (Dsymbol *decl) - { - if (decl->isFuncDeclaration ()) -diff --git a/gcc/d/typeinfo.cc b/gcc/d/typeinfo.cc -index bbd3961181d..a678b7938a6 100644 ---- a/gcc/d/typeinfo.cc -+++ b/gcc/d/typeinfo.cc -@@ -1107,8 +1107,12 @@ public: - CONSTRUCTOR_APPEND_ELT (elms, size_int (i), - build_typeinfo (d->loc, arg->type)); - } -+ -+ const char *prefix = concat (GDC_PREFIX ("__tuple"), -+ mangle_decl (Module::rootModule), NULL); -+ - tree ctor = build_constructor (build_ctype (satype), elms); -- tree decl = build_artificial_decl (TREE_TYPE (ctor), ctor); -+ tree decl = build_artificial_decl (TREE_TYPE (ctor), ctor, prefix); - - /* The internal pointer reference should be public, but not visible outside - the compilation unit, as it's referencing COMDAT decls. */ Copied: gcc/repos/testing-x86_64/gdc_artificial_decl.patch (from rev 374672, gcc/trunk/gdc_artificial_decl.patch) =================================================================== --- gdc_artificial_decl.patch (rev 0) +++ gdc_artificial_decl.patch 2020-02-05 14:54:11 UTC (rev 374673) @@ -0,0 +1,43 @@ +diff --git a/gcc/d/d-tree.h b/gcc/d/d-tree.h +index a514bc3902f..303d52390c2 100644 +--- a/gcc/d/d-tree.h ++++ b/gcc/d/d-tree.h +@@ -600,6 +600,7 @@ extern tree d_signed_type (tree); + extern void d_keep (tree); + + /* In decl.cc. */ ++extern const char *mangle_decl (Dsymbol *); + extern tree mangle_internal_decl (Dsymbol *, const char *, const char *); + extern void build_decl_tree (Dsymbol *); + extern tree get_symbol_decl (Declaration *); +diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc +index 49723649230..90871b4c90b 100644 +--- a/gcc/d/decl.cc ++++ b/gcc/d/decl.cc +@@ -59,7 +59,7 @@ along with GCC; see the file COPYING3. If not see + + /* Return identifier for the external mangled name of DECL. */ + +-static const char * ++const char * + mangle_decl (Dsymbol *decl) + { + if (decl->isFuncDeclaration ()) +diff --git a/gcc/d/typeinfo.cc b/gcc/d/typeinfo.cc +index bbd3961181d..a678b7938a6 100644 +--- a/gcc/d/typeinfo.cc ++++ b/gcc/d/typeinfo.cc +@@ -1107,8 +1107,12 @@ public: + CONSTRUCTOR_APPEND_ELT (elms, size_int (i), + build_typeinfo (d->loc, arg->type)); + } ++ ++ const char *prefix = concat (GDC_PREFIX ("__tuple"), ++ mangle_decl (Module::rootModule), NULL); ++ + tree ctor = build_constructor (build_ctype (satype), elms); +- tree decl = build_artificial_decl (TREE_TYPE (ctor), ctor); ++ tree decl = build_artificial_decl (TREE_TYPE (ctor), ctor, prefix); + + /* The internal pointer reference should be public, but not visible outside + the compilation unit, as it's referencing COMDAT decls. */ Deleted: gdc_phobos_path.patch =================================================================== --- gdc_phobos_path.patch 2020-02-05 14:53:55 UTC (rev 374672) +++ gdc_phobos_path.patch 2020-02-05 14:54:11 UTC (rev 374673) @@ -1,14 +0,0 @@ -diff -Naur a/gcc/d/d-incpath.cc b/gcc/d/d-incpath.cc ---- a/gcc/d/d-incpath.cc 2019-01-01 13:31:55.000000000 +0100 -+++ b/gcc/d/d-incpath.cc 2019-06-28 08:32:00.326241502 +0200 -@@ -140,7 +140,7 @@ - path = xstrdup (p->fname); - - /* Add D-specific suffix. */ -- path = concat (path, "/d", NULL); -+ path = concat (path, "/dlang/gdc", NULL); - - /* Ignore duplicate entries. */ - bool found = false; - - Copied: gcc/repos/testing-x86_64/gdc_phobos_path.patch (from rev 374672, gcc/trunk/gdc_phobos_path.patch) =================================================================== --- gdc_phobos_path.patch (rev 0) +++ gdc_phobos_path.patch 2020-02-05 14:54:11 UTC (rev 374673) @@ -0,0 +1,14 @@ +diff -Naur a/gcc/d/d-incpath.cc b/gcc/d/d-incpath.cc +--- a/gcc/d/d-incpath.cc 2019-01-01 13:31:55.000000000 +0100 ++++ b/gcc/d/d-incpath.cc 2019-06-28 08:32:00.326241502 +0200 +@@ -140,7 +140,7 @@ + path = xstrdup (p->fname); + + /* Add D-specific suffix. */ +- path = concat (path, "/d", NULL); ++ path = concat (path, "/dlang/gdc", NULL); + + /* Ignore duplicate entries. */ + bool found = false; + + Deleted: gdc_thunk_weak_ref.patch =================================================================== --- gdc_thunk_weak_ref.patch 2020-02-05 14:53:55 UTC (rev 374672) +++ gdc_thunk_weak_ref.patch 2020-02-05 14:54:11 UTC (rev 374673) @@ -1,14 +0,0 @@ -diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc -index 49723649230..d31f6bef8d4 100644 ---- a/gcc/d/decl.cc -+++ b/gcc/d/decl.cc -@@ -1817,6 +1817,9 @@ make_thunk (FuncDeclaration *decl, int offset) - DECL_COMDAT (thunk) = DECL_COMDAT (function); - DECL_WEAK (thunk) = DECL_WEAK (function); - -+ if (DECL_VISIBILITY (function) == 0) -+ DECL_WEAK (thunk) = 1; -+ - tree target_name = DECL_ASSEMBLER_NAME (function); - unsigned identlen = IDENTIFIER_LENGTH (target_name) + 14; - const char *ident = XNEWVEC (const char, identlen); Copied: gcc/repos/testing-x86_64/gdc_thunk_weak_ref.patch (from rev 374672, gcc/trunk/gdc_thunk_weak_ref.patch) =================================================================== --- gdc_thunk_weak_ref.patch (rev 0) +++ gdc_thunk_weak_ref.patch 2020-02-05 14:54:11 UTC (rev 374673) @@ -0,0 +1,14 @@ +diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc +index 49723649230..d31f6bef8d4 100644 +--- a/gcc/d/decl.cc ++++ b/gcc/d/decl.cc +@@ -1817,6 +1817,9 @@ make_thunk (FuncDeclaration *decl, int offset) + DECL_COMDAT (thunk) = DECL_COMDAT (function); + DECL_WEAK (thunk) = DECL_WEAK (function); + ++ if (DECL_VISIBILITY (function) == 0) ++ DECL_WEAK (thunk) = 1; ++ + tree target_name = DECL_ASSEMBLER_NAME (function); + unsigned identlen = IDENTIFIER_LENGTH (target_name) + 14; + const char *ident = XNEWVEC (const char, identlen);