Date: Wednesday, March 27, 2013 @ 02:05:52 Author: allan Revision: 180849
major upstream update Modified: gcc/trunk/PKGBUILD ----------+ PKGBUILD | 65 ++++++++++++++++++++++++++++++------------------------------- 1 file changed, 33 insertions(+), 32 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-03-26 23:07:40 UTC (rev 180848) +++ PKGBUILD 2013-03-27 01:05:52 UTC (rev 180849) @@ -5,8 +5,8 @@ # NOTE: libtool requires rebuilt with each new gcc version pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go') -pkgver=4.7.2 -pkgrel=4 +pkgver=4.8.0 +pkgrel=1 #_snapshot=4.7-20120721 pkgdesc="The GNU Compiler Collection" arch=('i686' 'x86_64') @@ -15,34 +15,26 @@ makedepends=('binutils>=2.23' 'libmpc' 'cloog' 'ppl' 'gcc-ada' 'doxygen') checkdepends=('dejagnu') options=('!libtool' '!emptydirs') -source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2) #ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 - gcc-4.7.1-libgo-write.patch) -md5sums=('cc308a0891e778cfda7a151ab8a6e762' - 'df82dd175ac566c8a6d46b11ac21f14c') +md5sums=('e6040024eb9e761c3bea348d1fa5abb0') if [ -n "${_snapshot}" ]; then - _basedir="${srcdir}/gcc-${_snapshot}" + _basedir=gcc-${_snapshot} else - _basedir="${srcdir}/gcc-${pkgver}" + _basedir=gcc-${pkgver} fi build() { - cd ${_basedir} + cd ${srcdir}/${_basedir} - # Do not install libiberty - sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in - # Do not run fixincludes sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in # Arch Linux installs x86_64 libraries /lib [[ $CARCH == "x86_64" ]] && sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53679 - patch -p1 -i ${srcdir}/gcc-4.7.1-libgo-write.patch - echo ${pkgver} > gcc/BASE-VER # using -pipe causes spurious test-suite failures @@ -53,7 +45,7 @@ cd ${srcdir} mkdir gcc-build && cd gcc-build - ${_basedir}/configure --prefix=/usr \ + ${srcdir}/${_basedir}/configure --prefix=/usr \ --libdir=/usr/lib --libexecdir=/usr/lib \ --mandir=/usr/share/man --infodir=/usr/share/info \ --with-bugurl=https://bugs.archlinux.org/ \ @@ -67,9 +59,8 @@ --disable-ppl-version-check --disable-cloog-version-check \ --enable-lto --enable-gold --enable-ld=default \ --enable-plugin --with-plugin-ld=ld.gold \ - --with-linker-hash-style=gnu \ - --disable-multilib --disable-libssp \ - --disable-build-with-cxx --disable-build-poststage1-with-cxx \ + --with-linker-hash-style=gnu --disable-install-libiberty \ + --disable-multilib --disable-libssp --disable-werror \ --enable-checking=release make @@ -87,7 +78,7 @@ # do not abort on error as some are "expected" make -k check || true - ${_basedir}/contrib/test_summary + ${srcdir}/${_basedir}/contrib/test_summary } package_gcc-libs() @@ -99,9 +90,13 @@ cd ${srcdir}/gcc-build make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared - for lib in libmudflap libgomp libstdc++-v3/src libitm; do + for lib in libmudflap libgomp libstdc++-v3/src libitm libsanitizer/asan; do make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES done + + [[ $CARCH == "x86_64" ]] && \ + make -j1 -C $CHOST/libsanitizer/tsan DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES + make -j1 -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info make -j1 -C $CHOST/libitm DESTDIR=${pkgdir} install-info @@ -117,7 +112,7 @@ find ${pkgdir} -name *.a -delete # Install Runtime Library Exception - install -Dm644 ${_basedir}/COPYING.RUNTIME \ + install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION } @@ -133,12 +128,12 @@ make -j1 DESTDIR=${pkgdir} install install -d $pkgdir/usr/share/gdb/auto-load/usr/lib - mv $pkgdir{,/usr/share/gdb/auto-load}/usr/lib/libstdc++.so.6.0.17-gdb.py + mv $pkgdir{,/usr/share/gdb/auto-load}/usr/lib/libstdc++.so.6.0.18-gdb.py # unfortunately it is much, much easier to install the lot and clean-up the mess... rm $pkgdir/usr/bin/{{$CHOST-,}gfortran,{$CHOST-,}gccgo,gnat*} rm $pkgdir/usr/lib/*.so* - rm $pkgdir/usr/lib/lib{ffi,gfortran,go{,begin},objc}.a + rm $pkgdir/usr/lib/lib{atomic,ffi,gfortran,go{,begin},objc,quadmath}.a rm $pkgdir/usr/lib/libgfortran.spec rm -r $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{ada{include,lib},finclude,include/objc} rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/ffi{,target}.h @@ -188,7 +183,7 @@ ${CHOST}/libstdc++-v3/doc/doxygen/man/man3/*.3 # Install Runtime Library Exception - install -Dm644 ${_basedir}/COPYING.RUNTIME \ + install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc/RUNTIME.LIBRARY.EXCEPTION } @@ -206,10 +201,14 @@ ln -s gfortran ${pkgdir}/usr/bin/f95 - rm ${pkgdir}/usr/lib/libgfortran.so* + # remove files included in gcc-libs or gcc + rm ${pkgdir}/usr/lib/lib{gfortran,quadmath,gcc_s}.so* + rm ${pkgdir}/usr/lib/gcc/$CHOST/${pkgver}/{*.o,libgc*} + rm ${pkgdir}/usr/share/info/libquadmath.info + rm -r $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include # Install Runtime Library Exception - install -Dm644 ${_basedir}/COPYING.RUNTIME \ + install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc-fortran/RUNTIME.LIBRARY.EXCEPTION } @@ -223,11 +222,13 @@ install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ - # remove libraries included in gcc-libs - rm ${pkgdir}/usr/lib/libobjc.so* + # remove files included in gcc-libs or gcc + rm ${pkgdir}/usr/lib/lib{gcc_s,objc}.so* + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{*.o,lib*} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/unwind.h # Install Runtime Library Exception - install -Dm644 ${_basedir}/COPYING.RUNTIME \ + install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc-objc/RUNTIME.LIBRARY.EXCEPTION } @@ -244,7 +245,7 @@ ln -s gcc ${pkgdir}/usr/bin/gnatgcc # Install Runtime Library Exception - install -Dm644 ${_basedir}/COPYING.RUNTIME \ + install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc-ada/RUNTIME.LIBRARY.EXCEPTION } @@ -260,6 +261,6 @@ install -Dm755 gcc/go1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/go1 # Install Runtime Library Exception - install -Dm644 ${_basedir}/COPYING.RUNTIME \ + install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc-go/RUNTIME.LIBRARY.EXCEPTION }