summaryrefslogtreecommitdiff
path: root/core/gcc
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@endefensadelsl.org>2014-01-01 16:37:20 -0300
committerNicolás Reynolds <fauno@endefensadelsl.org>2014-01-01 16:37:20 -0300
commit6124dfa10e2a69fc79efc85f611c8db582caf711 (patch)
treee9706ae64164967e8448140e9cb6534dfbb0a2a3 /core/gcc
parent385fda403f286573a778ee525fe56a86d11fc967 (diff)
parent5a81550adad5ccde4ad6924cfee2b2ef96d02c98 (diff)
Merge branch 'master' of gparabola:abslibre/abslibre-pre-mips64el
Conflicts: community/almanah/PKGBUILD community/audit/PKGBUILD community/bird/PKGBUILD community/blobby2/PKGBUILD community/blueman/PKGBUILD community/bomberclone/PKGBUILD community/botan/PKGBUILD community/cantata/PKGBUILD community/cinnamon-desktop/PKGBUILD community/cinnamon-settings-daemon/PKGBUILD community/cinnamon/PKGBUILD community/clearsilver/PKGBUILD community/clinica/PKGBUILD community/confuse/PKGBUILD community/deadbeef/PKGBUILD community/dvdrtools/PKGBUILD community/etl/PKGBUILD community/extremetuxracer/PKGBUILD community/fcitx-mozc/PKGBUILD community/flashrom/PKGBUILD community/freedroidrpg/PKGBUILD community/gcolor2/PKGBUILD community/geary/PKGBUILD community/glob2/PKGBUILD community/gnash/PKGBUILD community/gnome-commander/PKGBUILD community/gnome-settings-daemon-updates/PKGBUILD community/gnuchess/PKGBUILD community/haskell-bytestring-show/PKGBUILD community/haskell-hslogger/PKGBUILD community/haskell-vector/PKGBUILD community/hedgewars/PKGBUILD community/hitori/PKGBUILD community/inputattach/PKGBUILD community/jack2/PKGBUILD community/kid3/PKGBUILD community/lcdproc/PKGBUILD community/libcec/PKGBUILD community/libvirt/PKGBUILD community/libwww/PKGBUILD community/lightdm/PKGBUILD community/lincity-ng/PKGBUILD community/linux-tools/PKGBUILD community/linuxtv-dvb-apps/PKGBUILD community/lockdev/PKGBUILD community/log4cpp/PKGBUILD community/love/PKGBUILD community/luajit/PKGBUILD community/lxc/PKGBUILD community/metamail/PKGBUILD community/mingw32-binutils/PKGBUILD community/mingw32-gcc/PKGBUILD community/mingw32-pthreads/PKGBUILD community/mongodb/PKGBUILD community/nemo/PKGBUILD community/par2cmdline/PKGBUILD community/pdfedit/PKGBUILD community/perl-json-xs/PKGBUILD community/pidgin-talkfilters/PKGBUILD community/pokerth/PKGBUILD community/setconf/PKGBUILD community/stfl/PKGBUILD community/talkfilters/PKGBUILD community/tre/PKGBUILD community/ubuntuone-client-gnome/PKGBUILD community/ubuntuone-client/PKGBUILD community/vor/PKGBUILD community/warmux/PKGBUILD community/wdm/PKGBUILD community/xbmc-pvr-addons/PKGBUILD core/gcc/PKGBUILD core/lvm2/PKGBUILD core/systemd/PKGBUILD core/sysvinit-tools/PKGBUILD extra/aubio/PKGBUILD extra/avidemux/PKGBUILD extra/bluez4/PKGBUILD extra/boost/PKGBUILD extra/calligra/PKGBUILD extra/caribou/PKGBUILD extra/chemtool/PKGBUILD extra/cinepaint/PKGBUILD extra/conky/PKGBUILD extra/cups/PKGBUILD extra/enlightenment16/PKGBUILD extra/exo/PKGBUILD extra/fakechroot/PKGBUILD extra/farstream-0.1/PKGBUILD extra/ffmpeg-compat/PKGBUILD extra/fltk/PKGBUILD extra/git/PKGBUILD extra/gpart/PKGBUILD extra/gstreamer0.10-base/PKGBUILD extra/gstreamer0.10-ffmpeg/PKGBUILD extra/gstreamer0.10-good/PKGBUILD extra/gstreamer0.10-ugly/PKGBUILD extra/gtk-vnc/PKGBUILD extra/haveged/PKGBUILD extra/icewm/PKGBUILD extra/imagemagick/PKGBUILD extra/kactivities/PKGBUILD extra/kdeaccessibility-jovie/PKGBUILD extra/kdeaccessibility-kaccessible/PKGBUILD extra/kdeaccessibility-kmag/PKGBUILD extra/kdeaccessibility-kmousetool/PKGBUILD extra/kdeaccessibility-kmouth/PKGBUILD extra/kdeadmin-kcron/PKGBUILD extra/kdeadmin-ksystemlog/PKGBUILD extra/kdeadmin-kuser/PKGBUILD extra/kdeartwork/PKGBUILD extra/kdebase-konsole/PKGBUILD extra/kdebase-workspace/PKGBUILD extra/kdebase/PKGBUILD extra/kdebindings-kimono/PKGBUILD extra/kdebindings-korundum/PKGBUILD extra/kdebindings-kross/PKGBUILD extra/kdebindings-perlkde/PKGBUILD extra/kdebindings-perlqt/PKGBUILD extra/kdebindings-python/PKGBUILD extra/kdebindings-qtruby/PKGBUILD extra/kdebindings-qyoto/PKGBUILD extra/kdebindings-smokegen/PKGBUILD extra/kdebindings-smokekde/PKGBUILD extra/kdebindings-smokeqt/PKGBUILD extra/kdeedu-analitza/PKGBUILD extra/kdeedu-blinken/PKGBUILD extra/kdeedu-cantor/PKGBUILD extra/kdeedu-kalgebra/PKGBUILD extra/kdeedu-kalzium/PKGBUILD extra/kdeedu-kanagram/PKGBUILD extra/kdeedu-kbruch/PKGBUILD extra/kdeedu-kgeography/PKGBUILD extra/kdeedu-khangman/PKGBUILD extra/kdeedu-kig/PKGBUILD extra/kdeedu-kiten/PKGBUILD extra/kdeedu-klettres/PKGBUILD extra/kdeedu-kmplot/PKGBUILD extra/kdeedu-kstars/PKGBUILD extra/kdeedu-ktouch/PKGBUILD extra/kdeedu-kturtle/PKGBUILD extra/kdeedu-kwordquiz/PKGBUILD extra/kdeedu-marble/PKGBUILD extra/kdeedu-pairs/PKGBUILD extra/kdeedu-parley/PKGBUILD extra/kdeedu-rocs/PKGBUILD extra/kdeedu-step/PKGBUILD extra/kdegames-bomber/PKGBUILD extra/kdegames-bovo/PKGBUILD extra/kdegames-granatier/PKGBUILD extra/kdegames-kapman/PKGBUILD extra/kdegames-katomic/PKGBUILD extra/kdegames-kblackbox/PKGBUILD extra/kdegames-kblocks/PKGBUILD extra/kdegames-kbounce/PKGBUILD extra/kdegames-kbreakout/PKGBUILD extra/kdegames-kdiamond/PKGBUILD extra/kdegames-kfourinline/PKGBUILD extra/kdegames-kgoldrunner/PKGBUILD extra/kdegames-kigo/PKGBUILD extra/kdegames-killbots/PKGBUILD extra/kdegames-kiriki/PKGBUILD extra/kdegames-kjumpingcube/PKGBUILD extra/kdegames-klickety/PKGBUILD extra/kdegames-klines/PKGBUILD extra/kdegames-kmahjongg/PKGBUILD extra/kdegames-kmines/PKGBUILD extra/kdegames-knavalbattle/PKGBUILD extra/kdegames-knetwalk/PKGBUILD extra/kdegames-kolf/PKGBUILD extra/kdegames-kollision/PKGBUILD extra/kdegames-konquest/PKGBUILD extra/kdegames-kpatience/PKGBUILD extra/kdegames-kreversi/PKGBUILD extra/kdegames-kshisen/PKGBUILD extra/kdegames-ksirk/PKGBUILD extra/kdegames-ksnakeduel/PKGBUILD extra/kdegames-kspaceduel/PKGBUILD extra/kdegames-ksquares/PKGBUILD extra/kdegames-ksudoku/PKGBUILD extra/kdegames-ktuberling/PKGBUILD extra/kdegames-kubrick/PKGBUILD extra/kdegames-lskat/PKGBUILD extra/kdegames-palapeli/PKGBUILD extra/kdegames-picmi/PKGBUILD extra/kdegraphics-gwenview/PKGBUILD extra/kdegraphics-kamera/PKGBUILD extra/kdegraphics-kcolorchooser/PKGBUILD extra/kdegraphics-kgamma/PKGBUILD extra/kdegraphics-kolourpaint/PKGBUILD extra/kdegraphics-kruler/PKGBUILD extra/kdegraphics-ksaneplugin/PKGBUILD extra/kdegraphics-ksnapshot/PKGBUILD extra/kdegraphics-mobipocket/PKGBUILD extra/kdegraphics-okular/PKGBUILD extra/kdegraphics-strigi-analyzer/PKGBUILD extra/kdegraphics-svgpart/PKGBUILD extra/kdegraphics-thumbnailers/PKGBUILD extra/kdemultimedia-audiocd-kio/PKGBUILD extra/kdemultimedia-dragonplayer/PKGBUILD extra/kdemultimedia-ffmpegthumbs/PKGBUILD extra/kdemultimedia-juk/PKGBUILD extra/kdemultimedia-kmix/PKGBUILD extra/kdemultimedia-kscd/PKGBUILD extra/kdemultimedia-mplayerthumbs/PKGBUILD extra/kdenetwork-filesharing/PKGBUILD extra/kdenetwork-kdnssd/PKGBUILD extra/kdenetwork-kget/PKGBUILD extra/kdenetwork-kppp/PKGBUILD extra/kdenetwork-krdc/PKGBUILD extra/kdenetwork-krfb/PKGBUILD extra/kdenetwork-strigi-analyzers/PKGBUILD extra/kdepim-runtime/PKGBUILD extra/kdepim/PKGBUILD extra/kdepimlibs/PKGBUILD extra/kdeplasma-addons/PKGBUILD extra/kdesdk-cervisia/PKGBUILD extra/kdesdk-dev-scripts/PKGBUILD extra/kdesdk-dev-utils/PKGBUILD extra/kdesdk-dolphin-plugins/PKGBUILD extra/kdesdk-kapptemplate/PKGBUILD extra/kdesdk-kate/PKGBUILD extra/kdesdk-kcachegrind/PKGBUILD extra/kdesdk-kioslaves/PKGBUILD extra/kdesdk-kompare/PKGBUILD extra/kdesdk-lokalize/PKGBUILD extra/kdesdk-okteta/PKGBUILD extra/kdesdk-poxml/PKGBUILD extra/kdesdk-strigi-analyzers/PKGBUILD extra/kdesdk-thumbnailers/PKGBUILD extra/kdesdk-umbrello/PKGBUILD extra/kdetoys-amor/PKGBUILD extra/kdetoys-kteatime/PKGBUILD extra/kdetoys-ktux/PKGBUILD extra/kdeutils-filelight/PKGBUILD extra/kdeutils-kcalc/PKGBUILD extra/kdeutils-kcharselect/PKGBUILD extra/kdeutils-kdf/PKGBUILD extra/kdeutils-kfloppy/PKGBUILD extra/kdeutils-kgpg/PKGBUILD extra/kdeutils-kremotecontrol/PKGBUILD extra/kdeutils-ktimer/PKGBUILD extra/kdeutils-kwallet/PKGBUILD extra/kdeutils-print-manager/PKGBUILD extra/kdeutils-superkaramba/PKGBUILD extra/kdeutils-sweeper/PKGBUILD extra/kdewebdev/PKGBUILD extra/kino/PKGBUILD extra/libdrm/PKGBUILD extra/libiec61883/PKGBUILD extra/libkcddb/PKGBUILD extra/libkcompactdisc/PKGBUILD extra/libkdcraw/PKGBUILD extra/libkdeedu/PKGBUILD extra/libkdegames/PKGBUILD extra/libkexiv2/PKGBUILD extra/libkipi/PKGBUILD extra/libkmahjongg/PKGBUILD extra/libksane/PKGBUILD extra/libmikmod/PKGBUILD extra/libmp4v2/PKGBUILD extra/libnet/PKGBUILD extra/libpst/PKGBUILD extra/libsidplay/PKGBUILD extra/libsigsegv/PKGBUILD extra/libvpx/PKGBUILD extra/libxmi/PKGBUILD extra/lua51/PKGBUILD extra/mariadb/PKGBUILD extra/maxima/PKGBUILD extra/mesa/PKGBUILD extra/mjpegtools/PKGBUILD extra/mkvtoolnix/PKGBUILD extra/nepomuk-core/PKGBUILD extra/nepomuk-widgets/PKGBUILD extra/obexd/PKGBUILD extra/opencv/PKGBUILD extra/perl-dbd-mysql/PKGBUILD extra/phonon-gstreamer/PKGBUILD extra/phonon-vlc/PKGBUILD extra/phonon/PKGBUILD extra/plotutils/PKGBUILD extra/postgresql/PKGBUILD extra/pycrypto/PKGBUILD extra/python/PKGBUILD extra/qt4/PKGBUILD extra/qt5/PKGBUILD extra/rcs/PKGBUILD extra/rdesktop/PKGBUILD extra/rtmpdump/PKGBUILD extra/ruby/PKGBUILD extra/signon/PKGBUILD extra/sqlite/PKGBUILD extra/vigra/PKGBUILD extra/vim/PKGBUILD extra/vlc/PKGBUILD extra/w3m/PKGBUILD extra/wcslib/PKGBUILD extra/windowmaker/PKGBUILD extra/x264/PKGBUILD extra/xaos/PKGBUILD extra/xmlto/PKGBUILD libre/angband-libre/PKGBUILD libre/hplip-libre/PKGBUILD libre/kdebase-konqueror-libre/PKGBUILD libre/kdebase-runtime-libre/PKGBUILD libre/kdelibs-libre/PKGBUILD libre/kdenetwork-kopete-libre/PKGBUILD libre/kdepim-libre/PKGBUILD libre/kdeutils-ark-libre/PKGBUILD libre/linux-libre/PKGBUILD libre/mc-libre/PKGBUILD libre/xbmc-libre/PKGBUILD nonprism/kdenetwork-kopete-libre-nonprism/PKGBUILD nonprism/kdepim-runtime-nonprism/PKGBUILD pcr/libquvi-scripts-current/PKGBUILD
Diffstat (limited to 'core/gcc')
-rw-r--r--core/gcc/PKGBUILD217
-rw-r--r--core/gcc/gcc-4.8-lambda-ICE.patch35
2 files changed, 158 insertions, 94 deletions
diff --git a/core/gcc/PKGBUILD b/core/gcc/PKGBUILD
index c6d78cabd..c2d3d3650 100644
--- a/core/gcc/PKGBUILD
+++ b/core/gcc/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 197286 2013-10-25 01:09:21Z allan $
+# $Id: PKGBUILD 202694 2013-12-25 03:04:31Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
@@ -10,8 +10,9 @@ else
pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc')
fi
pkgver=4.8.2
-pkgrel=3
-#_snapshot=4.8-20130725
+_pkgver=4.8
+pkgrel=7
+_snapshot=4.8-20131219
pkgdesc="The GNU Compiler Collection"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL' 'LGPL' 'FDL' 'custom')
@@ -20,11 +21,13 @@ makedepends=('binutils>=2.23' 'libmpc' 'cloog' 'doxygen')
[[ "$CARCH" != "mips64el" ]] && makedepends+=('gcc-ada')
checkdepends=('dejagnu' 'inetutils')
options=('!emptydirs')
-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.8-filename-output.patch)
-md5sums=('a3d7d63b9cb6b6ea049469a0c4a43c9d'
- '40cb437805e2f7a006aa0d0c3098ab0f')
+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.8-filename-output.patch
+ gcc-4.8-lambda-ICE.patch)
+md5sums=('666ef08f87649f941bc5512e13a88fdc'
+ '40cb437805e2f7a006aa0d0c3098ab0f'
+ '6eb6e080dbf7bc6825f53a0aaa6c4ef9')
if [ -n "${_snapshot}" ]; then
_basedir=gcc-${_snapshot}
@@ -32,6 +35,8 @@ else
_basedir=gcc-${pkgver}
fi
+_libdir="usr/lib/gcc/$CHOST/$pkgver"
+
prepare() {
cd ${srcdir}/${_basedir}
@@ -49,6 +54,13 @@ prepare() {
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57653
patch -p0 -i ${srcdir}/gcc-4.8-filename-output.patch
+
+ # http://gcc.gnu.org/bugzilla//show_bug.cgi?id=56710 - commit 3d1f8279
+ patch -p1 -i ${srcdir}/gcc-4.8-lambda-ICE.patch
+
+ # installing libiberty headers is broken
+ # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56780#c6
+ sed -i 's#@target_header_dir@#libiberty#' libiberty/Makefile.in
mkdir ${srcdir}/gcc-build
}
@@ -73,9 +85,6 @@ build() {
if [[ "${CARCH}" != "mips64el" ]]; then
languages=c,c++,ada,fortran,go,lto,objc,obj-c++
- # The ancient MIPS ABI has possible requirements incompatible
- # with GNU hash.
- extra="--with-linker-hash-style=gnu"
else
languages=c,c++,fortran,lto,objc,obj-c++
fi
@@ -88,19 +97,17 @@ build() {
--enable-shared --enable-threads=posix \
--with-system-zlib --enable-__cxa_atexit \
--disable-libunwind-exceptions --enable-clocale=gnu \
- --disable-libstdcxx-pch \
+ --disable-libstdcxx-pch --disable-libssp \
--enable-gnu-unique-object --enable-linker-build-id \
--enable-cloog-backend=isl --disable-cloog-version-check \
- --enable-lto --enable-gold --enable-ld=default \
- --enable-plugin --with-plugin-ld=ld.gold \
- $extra --disable-install-libiberty \
- --disable-multilib --disable-libssp --disable-werror \
+ --enable-lto --enable-plugin --enable-install-libiberty \
+ --with-linker-hash-style=gnu \
+ --disable-multilib --disable-werror \
--enable-checking=release
make
# make documentation
- cd $CHOST/libstdc++-v3
- make doc-man-doxygen
+ make -C $CHOST/libstdc++-v3/doc doc-man-doxygen
}
check() {
@@ -123,30 +130,43 @@ package_gcc-libs()
pkgdesc="Runtime libraries shipped by GCC"
groups=('base')
depends=('glibc>=2.17')
+ options=('!emptydirs')
install=gcc-libs.install
cd ${srcdir}/gcc-build
- make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared
- for lib in libmudflap libgomp libstdc++-v3/src; do
- make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
- done
- [ "$CARCH" != "mips64el" ] && for lib in libitm libsanitizer/asan; do
- make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
+
+ make -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared
+ rm ${pkgdir}/${_libdir}/libgcc_eh.a
+
+ for lib in libmudflap \
+ libgomp \
+ libitm \
+ libatomic \
+ libstdc++-v3/src \
+ libquadmath \
+ libgfortran \
+ libsanitizer/asan; do
+ # Skip libitm and asan on mips64el
+ test "$CARCH" = "mips64el" &&
+ echo "$lib" | grep -q "libitm libsanitizer/asan" &&
+ continue
+ make -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
done
- make -j1 -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install
- make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info
- [ "$CARCH" != "mips64el" ] && make -j1 -C $CHOST/libitm DESTDIR=${pkgdir} install-info
-
- make -j1 DESTDIR=${pkgdir} install-target-libquadmath
- make -j1 DESTDIR=${pkgdir} install-target-libgfortran
- make -j1 DESTDIR=${pkgdir} install-target-libobjc
+ [[ $CARCH == "x86_64" ]] && \
+ make -C $CHOST/libsanitizer/tsan DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
- # remove unnecessary files installed by install-target-{libquadmath,libgfortran,libobjc}
- rm -r ${pkgdir}/usr/lib/{gcc/,libgfortran.spec}
-
- # remove static libraries
- find ${pkgdir} -name *.a -delete
+ make -C $CHOST/libobjc DESTDIR=${pkgdir} install-libs
+
+ make -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install
+
+ for lib in libgomp \
+ libitm \
+ libquadmath; do
+ # Skip libitm in mips64el
+ test "$CARCH" = "mips64el" && test "$lib" = "libitm" && continue
+ make -C $CHOST/$lib DESTDIR=${pkgdir} install-info
+ done
# Install Runtime Library Exception
install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
@@ -162,28 +182,45 @@ package_gcc()
install=gcc.install
cd ${srcdir}/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 gcc/gcov $pkgdir/usr/bin/
+ install -m755 -t $pkgdir/${_libdir}/ gcc/{cc1,cc1plus,collect2,lto1}
+
+ make -C $CHOST/libgcc DESTDIR=${pkgdir} install
+ rm ${pkgdir}/usr/lib/libgcc_s.so*
- make -j1 DESTDIR=${pkgdir} install
+ 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
install -d $pkgdir/usr/share/gdb/auto-load/usr/lib
- 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{atomic,gfortran,go{,begin},iberty,objc}.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}/{cc1obj{,plus},f951,gnat1,go1}
- rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{libcaf_single,libgfortranbegin}.a
- rm -r $pkgdir/usr/lib/go
- rm $pkgdir/usr/share/info/{gccgo,gfortran,gnat*,libgomp,libquadmath,libitm}.info
- rm $pkgdir/usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo
- rm $pkgdir/usr/share/man/man1/{gccgo,gfortran}.1
-
- # remove static libraries - note libstdc++.a is needed for the binutils and glibc testsuite
- rm $pkgdir/usr/lib/lib{asan,gomp,itm,mudflap{,th},quadmath}.a
- [[ $CARCH = "x86_64" ]] && rm $pkgdir/usr/lib/libtsan.a
+ mv $pkgdir/usr/lib/libstdc++.so.6.*-gdb.py \
+ $pkgdir/usr/share/gdb/auto-load/usr/lib/
+ rm ${pkgdir}/usr/lib/libstdc++.so*
+
+ make DESTDIR=${pkgdir} install-fixincludes
+ make -C gcc DESTDIR=${pkgdir} install-mkheaders
+ make -C lto-plugin DESTDIR=${pkgdir} install
+
+ make -C $CHOST/libgomp DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS \
+ install-nodist_libsubincludeHEADERS
+ make -C $CHOST/libitm DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS
+ make -C $CHOST/libmudflap DESTDIR=${pkgdir} install-nobase_libsubincludeHEADERS
+ make -C $CHOST/libquadmath DESTDIR=${pkgdir} install-nodist_libsubincludeHEADERS
+ make -C $CHOST/libsanitizer/asan DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS
+
+ make -C libiberty DESTDIR=${pkgdir} install
+
+ make -C gcc DESTDIR=${pkgdir} install-man install-info
+ rm ${pkgdir}/usr/share/man/man1/{gccgo,gfortran}.1
+ rm ${pkgdir}/usr/share/info/{gccgo,gfortran,gnat-style,gnat_rm,gnat_ugn}.info
+
+ make -C libcpp DESTDIR=${pkgdir} install
+ make -C gcc DESTDIR=${pkgdir} install-po
# many packages expect this symlinks
ln -s gcc ${pkgdir}/usr/bin/cc
@@ -218,13 +255,11 @@ EOF
chmod 755 $pkgdir/usr/bin/c{8,9}9
# install the libstdc++ man pages
- install -dm755 ${pkgdir}/usr/share/man/man3
- install -m644 -t ${pkgdir}/usr/share/man/man3 \
- ${CHOST}/libstdc++-v3/doc/doxygen/man/man3/*.3
+ make -C $CHOST/libstdc++-v3/doc DESTDIR=$pkgdir doc-install-man
# Install Runtime Library Exception
- install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
- ${pkgdir}/usr/share/licenses/gcc/RUNTIME.LIBRARY.EXCEPTION
+ install -d ${pkgdir}/usr/share/licenses/gcc/
+ ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc/
}
package_gcc-fortran()
@@ -235,24 +270,16 @@ package_gcc-fortran()
install=gcc-fortran.install
cd ${srcdir}/gcc-build
- make -j1 DESTDIR=$pkgdir install-target-libgfortran
- make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS
- make -j1 -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info}
- install -Dm755 gcc/f951 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/f951
+ make -C $CHOST/libgfortran DESTDIR=$pkgdir install-{{caf,my}execlibLTLIBRARIES,toolexeclibDATA}
+ 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
- # remove files included in gcc-libs or gcc and unnneeded static lib
- rm ${pkgdir}/usr/lib/lib{gfortran,gcc_s}.so*
- rm ${pkgdir}/usr/lib/libquadmath.{a,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
- rm ${pkgdir}/usr/lib/libgfortran.a
-
# Install Runtime Library Exception
- install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
- ${pkgdir}/usr/share/licenses/gcc-fortran/RUNTIME.LIBRARY.EXCEPTION
+ install -d ${pkgdir}/usr/share/licenses/gcc-fortran/
+ ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-fortran/
}
package_gcc-objc()
@@ -261,18 +288,13 @@ package_gcc-objc()
depends=("gcc=$pkgver-$pkgrel")
cd ${srcdir}/gcc-build
- make -j1 DESTDIR=$pkgdir install-target-libobjc
- install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/
- install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/
-
- # 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
+ make DESTDIR=$pkgdir -C $CHOST/libobjc install-headers
+ install -dm755 $pkgdir/${_libdir}
+ install -m755 gcc/cc1obj{,plus} $pkgdir/${_libdir}/
# Install Runtime Library Exception
- install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
- ${pkgdir}/usr/share/licenses/gcc-objc/RUNTIME.LIBRARY.EXCEPTION
+ install -d ${pkgdir}/usr/share/licenses/gcc-objc/
+ ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-objc/
}
package_gcc-ada()
@@ -283,14 +305,20 @@ package_gcc-ada()
install=gcc-ada.install
cd ${srcdir}/gcc-build/gcc
- make -j1 DESTDIR=$pkgdir ada.install-{common,info}
- install -m755 gnat1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver
+ make DESTDIR=$pkgdir ada.install-{common,info}
+ install -m755 gnat1 $pkgdir/${_libdir}
ln -s gcc ${pkgdir}/usr/bin/gnatgcc
+ # insist on dynamic linking
+ mv ${pkgdir}/${_libdir}/adalib/libgna{rl,t}-${_pkgver}.so ${pkgdir}/usr/lib
+ ln -s libgnarl-${_pkgver}.so ${pkgdir}/usr/lib/libgnarl.so
+ ln -s libgnat-${_pkgver}.so ${pkgdir}/usr/lib/libgnat.so
+ rm ${pkgdir}/${_libdir}/adalib/libgna{rl,t}.*
+
# Install Runtime Library Exception
- install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
- ${pkgdir}/usr/share/licenses/gcc-ada/RUNTIME.LIBRARY.EXCEPTION
+ install -d ${pkgdir}/usr/share/licenses/gcc-ada/
+ ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-ada/
}
package_gcc-go()
@@ -301,12 +329,13 @@ package_gcc-go()
install=gcc-go.install
cd ${srcdir}/gcc-build
- make -j1 DESTDIR=$pkgdir install-target-libgo
- make -j1 -C gcc DESTDIR=$pkgdir go.install-{common,man,info}
- install -Dm755 gcc/go1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/go1
- rm $pkgdir/usr/lib/lib{atomic,go}.a
+ make -C $CHOST/libgo DESTDIR=$pkgdir install-exec-am
+ make -C gcc DESTDIR=$pkgdir go.install-{common,man,info}
+ install -Dm755 gcc/go1 $pkgdir/${_libdir}/go1
+
+ rm $pkgdir/usr/lib/libgo.a
# Install Runtime Library Exception
- install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
- ${pkgdir}/usr/share/licenses/gcc-go/RUNTIME.LIBRARY.EXCEPTION
+ install -d ${pkgdir}/usr/share/licenses/gcc-go/
+ ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-go/
}
diff --git a/core/gcc/gcc-4.8-lambda-ICE.patch b/core/gcc/gcc-4.8-lambda-ICE.patch
new file mode 100644
index 000000000..cf77a9b35
--- /dev/null
+++ b/core/gcc/gcc-4.8-lambda-ICE.patch
@@ -0,0 +1,35 @@
+diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
+index 0b8e2f7..ad1c209 100644
+--- a/gcc/cp/semantics.c
++++ b/gcc/cp/semantics.c
+@@ -2719,8 +2719,10 @@ finish_member_declaration (tree decl)
+ /*friend_p=*/0);
+ }
+ }
+- /* Enter the DECL into the scope of the class. */
+- else if (pushdecl_class_level (decl))
++ /* Enter the DECL into the scope of the class, if the class
++ isn't a closure (whose fields are supposed to be unnamed). */
++ else if (CLASSTYPE_LAMBDA_EXPR (current_class_type)
++ || pushdecl_class_level (decl))
+ {
+ if (TREE_CODE (decl) == USING_DECL)
+ {
+diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C
+new file mode 100644
+index 0000000..df2b037
+--- /dev/null
++++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-names1.C
+@@ -0,0 +1,9 @@
++// PR c++/56710
++// { dg-options "-std=c++11 -Wall" }
++
++int main()
++{
++ int t = 0;
++ return [&]() -> int {int __t; __t = t; return __t; }();
++ return [&t]() -> int {int __t; __t = t; return __t; }();
++}
+--
+1.8.4.2
+