diff --git a/core/gcc/PKGBUILD b/core/gcc/PKGBUILD index ee7139731..1f844fa8f 100644 --- a/core/gcc/PKGBUILD +++ b/core/gcc/PKGBUILD @@ -15,8 +15,8 @@ noautobuild=1 pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc') pkgver=4.6.2 -pkgrel=5 -_snapshot=4.6-20111223 +pkgrel=7 +_snapshot=4.6-20120120 _libstdcppmanver=20111215 # Note: check source directory name when updating this pkgdesc="The GNU Compiler Collection" arch=('i686' 'x86_64') @@ -29,7 +29,8 @@ 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++-man.${_libstdcppmanver}.tar.bz2 gcc_pure64.patch - gcc-hash-style-both.patch) + gcc-hash-style-both.patch + gcc-4.6.2-cloog-0.17.patch) md5sums=('4755b9f6ac0abecbaa2097ed9738406a' '450772ce32daed97d7383199f8797f33' '4030ee1c08dd1e843c0225b772360e76' @@ -55,6 +56,9 @@ build() { fi patch -Np0 -i ${srcdir}/gcc-hash-style-both.patch + # compatibility with latest cloog + patch -Np1 -i ${srcdir}/gcc-4.6.2-cloog-0.17.patch + echo ${pkgver} > gcc/BASE-VER # ALARM: Specify build host types @@ -72,11 +76,12 @@ build() { --enable-shared --enable-threads=posix \ --with-system-zlib --enable-__cxa_atexit \ --disable-libunwind-exceptions --enable-clocale=gnu \ + --disable-libstdcxx-pch --enable-libstdcxx-time \ --enable-gnu-unique-object --enable-linker-build-id \ --with-ppl --enable-cloog-backend=isl \ --enable-lto --enable-gold --enable-ld=default \ --enable-plugin --with-plugin-ld=ld.gold \ - --disable-multilib --disable-libssp --disable-libstdcxx-pch \ + --disable-multilib --disable-libssp \ --enable-checking=release $CONFIGFLAG make } @@ -156,6 +161,11 @@ package_gcc() install -m755 gcc/build/gengtype $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/ install -m644 gcc/gtype.state $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/ + # plugin headers are all over the place at the moment... + for i in common objc pragma pretty-print; do + ln -sf ../c-$i.h $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/plugin/include/c-family/c-$i.h + done + # POSIX conformance launcher scripts for c89 and c99 cat > $pkgdir/usr/bin/c89 <<"EOF" #!/bin/sh @@ -233,3 +243,8 @@ package_gcc-objc() install -Dm644 ${_basedir}/COPYING.RUNTIME \ ${pkgdir}/usr/share/licenses/gcc-objc/RUNTIME.LIBRARY.EXCEPTION } +md5sums=('f7ca5d9f7a07216577f81318b7cf56ef' + '450772ce32daed97d7383199f8797f33' + '4030ee1c08dd1e843c0225b772360e76' + '4df25b623799b148a0703eaeec8fdf3f' + '68b596040715d889deecfb20cabf115e') diff --git a/core/gcc/gcc-4.6.2-cloog-0.17.patch b/core/gcc/gcc-4.6.2-cloog-0.17.patch new file mode 100644 index 000000000..67a66cba0 --- /dev/null +++ b/core/gcc/gcc-4.6.2-cloog-0.17.patch @@ -0,0 +1,36 @@ +diff -Naur gcc-4.6-20120120-orig/configure gcc-4.6-20120120/configure +--- gcc-4.6-20120120-orig/configure 2011-12-18 20:03:44.000000000 +1000 ++++ gcc-4.6-20120120/configure 2012-02-03 17:55:14.885990135 +1000 +@@ -6049,8 +6049,8 @@ + LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}" + + if test "${cloog_org}" = yes ; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5 +-$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; } ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17 of CLooG" >&5 ++$as_echo_n "checking for version 0.17 of CLooG... " >&6; } + if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then : + $as_echo_n "(cached) " >&6 + else +@@ -6061,8 +6061,7 @@ + main () + { + #if CLOOG_VERSION_MAJOR != 0 \ +- || CLOOG_VERSION_MINOR != 16 \ +- || CLOOG_VERSION_REVISION < 1 ++ || CLOOG_VERSION_MINOR != 17 + choke me + #endif + ; +diff -Naur gcc-4.6-20120120-orig/gcc/graphite-clast-to-gimple.c gcc-4.6-20120120/gcc/graphite-clast-to-gimple.c +--- gcc-4.6-20120120-orig/gcc/graphite-clast-to-gimple.c 2011-03-13 08:05:38.000000000 +1000 ++++ gcc-4.6-20120120/gcc/graphite-clast-to-gimple.c 2012-02-03 17:51:47.943463879 +1000 +@@ -1367,7 +1367,7 @@ + /* Change cloog output language to C. If we do use FORTRAN instead, cloog + will stop e.g. with "ERROR: unbounded loops not allowed in FORTRAN.", if + we pass an incomplete program to cloog. */ +- options->language = LANGUAGE_C; ++ options->language = CLOOG_LANGUAGE_C; + + /* Enable complex equality spreading: removes dummy statements + (assignments) in the generated code which repeats the