diff options
author | Michał Masłowski <mtjm@mtjm.eu> | 2011-12-10 10:00:34 +0100 |
---|---|---|
committer | Michał Masłowski <mtjm@mtjm.eu> | 2011-12-10 10:00:34 +0100 |
commit | fbe815aa83090984779a8b380cbfc1247353d98b (patch) | |
tree | 2eb92ffe4f5cb6c6c13f065f3122d9f18264b6c6 /core/gcc | |
parent | d638a96c43b3c4fb9b517e8a66a4e8b1fa999833 (diff) | |
parent | d22b68a6758c4f29a8e50a7be467374a53c68415 (diff) |
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts:
community/qtfm/PKGBUILD
core/binutils/PKGBUILD
core/fakeroot/PKGBUILD
core/gcc/PKGBUILD
core/linux-api-headers/PKGBUILD
extra/audacious/PKGBUILD
extra/kdelibs/PKGBUILD
extra/kdemultimedia/PKGBUILD
extra/llvm/PKGBUILD
extra/maxima/PKGBUILD
extra/sbcl/PKGBUILD
extra/vigra/PKGBUILD
kde-unstable/kdebase-workspace/PKGBUILD
multilib/binutils-multilib/PKGBUILD
multilib/gcc-multilib/PKGBUILD
multilib/lib32-dbus-core/PKGBUILD
multilib/lib32-glibc/PKGBUILD
multilib/lib32-libgcrypt/PKGBUILD
multilib/lib32-libgpg-error/PKGBUILD
multilib/lib32-sqlite3/PKGBUILD
multilib/lib32-tdb/PKGBUILD
multilib/lib32-xcb-util/PKGBUILD
Diffstat (limited to 'core/gcc')
-rw-r--r-- | core/gcc/PKGBUILD | 27 | ||||
-rw-r--r-- | core/gcc/gcc-pr49720.patch | 26 |
2 files changed, 42 insertions, 11 deletions
diff --git a/core/gcc/PKGBUILD b/core/gcc/PKGBUILD index f9633577b..1733d3f43 100644 --- a/core/gcc/PKGBUILD +++ b/core/gcc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 141368 2011-10-30 06:46:42Z allan $ +# $Id: PKGBUILD 144846 2011-12-08 12:16:58Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc @@ -10,31 +10,33 @@ else pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc') fi pkgver=4.6.2 -pkgrel=1.1 -#_snapshot=4.6-20110819 +pkgrel=3 +_snapshot=4.6-20111125 _libstdcppmanver=20110814 # Note: check source directory name when updating this pkgdesc="The GNU Compiler Collection" arch=('i686' 'x86_64' 'mips64el') license=('GPL' 'LGPL' 'FDL' 'custom') url="http://gcc.gnu.org" if [[ "${CARCH}" != "mips64el" ]]; then - makedepends=('binutils>=2.21-9' 'libmpc' 'cloog' 'ppl' 'gcc-ada') + makedepends=('binutils>=2.22' 'libmpc' 'cloog' 'ppl' 'gcc-ada') else - makedepends=('binutils>=2.21-9' 'libmpc' 'cloog' 'ppl') + makedepends=('binutils>=2.22' 'libmpc' 'cloog' 'ppl') fi checkdepends=('dejagnu') options=('!libtool' '!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 +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 ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2 gcc_pure64.patch gcc_mips64el_lib.patch - gcc-hash-style-both.patch) -md5sums=('028115c4fbfb6cfd75d6369f4a90d87e' + gcc-hash-style-both.patch + gcc-pr49720.patch) +md5sums=('922b0ee688669c188d237bbd21d42d07' 'ce920d2550ff7e042b9f091d27764d8f' '4030ee1c08dd1e843c0225b772360e76' '67e337993d821d72fccacbed52d48c34' - '4df25b623799b148a0703eaeec8fdf3f') + '4df25b623799b148a0703eaeec8fdf3f' + 'f9d7e5b792c59175f3da3f8421447512') if [ -n "${_snapshot}" ]; then _basedir="${srcdir}/gcc-${_snapshot}" @@ -58,6 +60,9 @@ build() { fi patch -Np0 -i ${srcdir}/gcc-hash-style-both.patch + # fix compiler segfault in binutils testsuite + patch -Np1 -i ${srcdir}/gcc-pr49720.patch + echo ${pkgver} > gcc/BASE-VER cd ${srcdir} @@ -132,7 +137,7 @@ package_gcc-libs() package_gcc() { pkgdesc="The GNU Compiler Collection - C and C++ frontends" - depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.21.1' 'libmpc' 'cloog' 'ppl') + depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.22' 'libmpc' 'cloog' 'ppl') groups=('base-devel') install=gcc.install diff --git a/core/gcc/gcc-pr49720.patch b/core/gcc/gcc-pr49720.patch new file mode 100644 index 000000000..8f50c4120 --- /dev/null +++ b/core/gcc/gcc-pr49720.patch @@ -0,0 +1,26 @@ +--- trunk/gcc/simplify-rtx.c 2011/10/28 05:55:10 180603 ++++ trunk/gcc/simplify-rtx.c 2011/10/28 06:35:31 180604 +@@ -4352,10 +4352,20 @@ + { + rtx x = XEXP (op0, 0); + rtx c = XEXP (op0, 1); ++ enum rtx_code invcode = op0code == PLUS ? MINUS : PLUS; ++ rtx tem = simplify_gen_binary (invcode, cmp_mode, op1, c); + +- c = simplify_gen_binary (op0code == PLUS ? MINUS : PLUS, +- cmp_mode, op1, c); +- return simplify_gen_relational (code, mode, cmp_mode, x, c); ++ /* Detect an infinite recursive condition, where we oscillate at this ++ simplification case between: ++ A + B == C <---> C - B == A, ++ where A, B, and C are all constants with non-simplifiable expressions, ++ usually SYMBOL_REFs. */ ++ if (GET_CODE (tem) == invcode ++ && CONSTANT_P (x) ++ && rtx_equal_p (c, XEXP (tem, 1))) ++ return NULL_RTX; ++ ++ return simplify_gen_relational (code, mode, cmp_mode, x, tem); + } + + /* (ne:SI (zero_extract:SI FOO (const_int 1) BAR) (const_int 0))) is |