From 289dab7aaf2c1f963b14dc8d462cebd71d9abf28 Mon Sep 17 00:00:00 2001
From: Kazuhiko Shiozaki <kazuhiko@nexedi.com>
Date: Sun, 9 Nov 2014 09:55:53 +0100
Subject: [PATCH] version up : gcc 4.9.2.

---
 component/gcc/buildout.cfg           |  77 ++++++++----------
 component/gcc/gcc-java-pre-4.4.patch |  36 ---------
 component/gcc/ppl-0.11-gcc-4.9.patch | 117 ---------------------------
 component/gmp/buildout.cfg           |  15 ----
 4 files changed, 34 insertions(+), 211 deletions(-)
 delete mode 100644 component/gcc/gcc-java-pre-4.4.patch
 delete mode 100644 component/gcc/ppl-0.11-gcc-4.9.patch

diff --git a/component/gcc/buildout.cfg b/component/gcc/buildout.cfg
index 74b9cd73..b2f4a09a 100644
--- a/component/gcc/buildout.cfg
+++ b/component/gcc/buildout.cfg
@@ -4,6 +4,7 @@
 extends =
   ../m4/buildout.cfg
   ../gmp/buildout.cfg
+  ../xz-utils/buildout.cfg
   ../zip/buildout.cfg
 
 parts =
@@ -11,59 +12,51 @@ parts =
 
 [mpfr]
 recipe = slapos.recipe.cmmi
-url = http://www.mpfr.org/mpfr-3.0.1/mpfr-3.0.1.tar.bz2
-md5sum = bfbecb2eacb6d48432ead5cfc3f7390a
+url = http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.2.tar.xz
+md5sum = e3d203d188b8fe60bb6578dd3152e05c
 configure-options =
-  --with-gmp=${gmp-4:location}
+  --with-gmp=${gmp:location}
   --disable-static
 environment =
-  LDFLAGS=-Wl,-rpath=${gmp-4:location}/lib
+  PATH=${xz-utils:location}/bin:%(PATH)s
+  LDFLAGS=-Wl,-rpath=${gmp:location}/lib
 
 [mpc]
 recipe = slapos.recipe.cmmi
-url = http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz
-md5sum = 0d6acab8d214bd7d1fbbc593e83dd00d
+url = http://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz
+md5sum = 68fadff3358fb3e7976c7a398a0af4c3
 configure-options =
-  --with-gmp=${gmp-4:location}
+  --with-gmp=${gmp:location}
   --with-mpfr=${mpfr:location}
   --disable-static
 environment =
-  LDFLAGS=-Wl,-rpath=${mpfr:location}/lib -Wl,-rpath=${gmp-4:location}/lib
+  LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${mpfr:location}/lib
 
-[ppl]
+[isl]
 recipe = slapos.recipe.cmmi
-# we should use version 0.11.x for gcc-4.7
-url = http://bugseng.com/external/ppl/download/ftp/releases/0.11/ppl-0.11.tar.bz2
-md5sum = c414abd2ecaf1f1f48949c78d383ee1a
-patches =
-  ${:_profile_base_location_}/ppl-0.11-gcc-4.9.patch#09e00eefba5f8e6e77a9c9c611fccc64
-
+url = ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.12.2.tar.bz2
+md5sum = e039bfcfb6c2ab039b8ee69bf883e824
 configure-options =
-  --with-gmp=${gmp-4:location}
-  --with-gmp-prefix=${gmp-4:location}
+  --with-gmp-prefix=${gmp:location}
   --disable-static
 environment =
-  PATH=${m4:location}/bin:%(PATH)s
-  LDFLAGS=-Wl,-rpath=${gmp-4:location}/lib
-  CXXFLAGS=-fpermissive
-
+  LDFLAGS=-Wl,-rpath=${gmp:location}/lib
 
-[cloog-ppl]
+[cloog]
 recipe = slapos.recipe.cmmi
-url = ftp://gcc.gnu.org/pub/gcc/infrastructure/cloog-0.16.1.tar.gz
-md5sum = 947123350d1ff6dcb4b0774947ac015a
+url = ftp://gcc.gnu.org/pub/gcc/infrastructure/cloog-0.18.1.tar.gz
+md5sum = e34fca0540d840e5d0f6427e98c92252
 configure-options =
-  --with-gmp-prefix=${gmp-4:location}
-  --with-ppl=${ppl:location}
+  --with-gmp-prefix=${gmp:location}
+  --with-isl-prefix=${isl:location}
   --disable-static
 environment =
-  PATH=${m4:location}/bin:%(PATH)s
-  LDFLAGS=-Wl,-rpath=${gmp-4:location}/lib -Wl,-rpath=${ppl:location}/lib
+  LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib
 
 [gcc-common]
 recipe = slapos.recipe.cmmi
-url = http://ftp.gnu.org/gnu/gcc/gcc-4.7.4/gcc-4.7.4.tar.bz2
-md5sum = 4c696da46297de6ae77a82797d2abe28
+url = http://ftp.gnu.org/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2
+md5sum = 4df8ee253b7f3863ad0b86359cd39c43
 # make install does not work when several core are used
 make-targets = install -j1
 
@@ -72,41 +65,39 @@ make-targets = install -j1
 configure-options =
   --disable-bootstrap
   --disable-multilib
-  --with-gmp=${gmp-4:location}
+  --with-gmp=${gmp:location}
   --with-mpfr=${mpfr:location}
   --with-mpc=${mpc:location}
   --enable-languages="c,c++"
-  --with-ppl=${ppl:location}
-  --with-cloog=${cloog-ppl:location}
-  --enable-cloog-backend=isl
+  --with-isl=${isl:location}
+  --with-cloog=${cloog:location}
 environment =
-  LDFLAGS=-Wl,-rpath=${mpfr:location}/lib -Wl,-rpath=${gmp-4:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${ppl:location}/lib -Wl,-rpath=${cloog-ppl:location}/lib
+  LDFLAGS=-Wl,-rpath=${cloog:location}/lib -Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib
 
 [gcc-minimal]
 <= gcc-common
 configure-options =
   --disable-bootstrap
   --disable-multilib
-  --with-gmp=${gmp-4:location}
+  --with-gmp=${gmp:location}
   --with-mpfr=${mpfr:location}
   --with-mpc=${mpc:location}
   --enable-languages=c
-  --without-ppl
+  --without-isl
   --without-cloog
 environment =
-  LDFLAGS=-Wl,-rpath=${mpfr:location}/lib -Wl,-rpath=${gmp-4:location}/lib -Wl,-rpath=${mpc:location}/lib
+  LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib
 
 [gcc-fortran]
 <= gcc-common
 configure-options =
   --disable-bootstrap
   --disable-multilib
-  --with-gmp=${gmp-4:location}
+  --with-gmp=${gmp:location}
   --with-mpfr=${mpfr:location}
   --with-mpc=${mpc:location}
   --enable-languages="c,c++,fortran"
-  --with-ppl=${ppl:location}
-  --with-cloog=${cloog-ppl:location}
-  --enable-cloog-backend=isl
+  --with-isl=${isl:location}
+  --with-cloog=${cloog:location}
 environment =
-  LDFLAGS=-Wl,-rpath=${mpfr:location}/lib -Wl,-rpath=${gmp-4:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${ppl:location}/lib -Wl,-rpath=${cloog-ppl:location}/lib
+  LDFLAGS=-Wl,-rpath=${cloog:location}/lib -Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib
diff --git a/component/gcc/gcc-java-pre-4.4.patch b/component/gcc/gcc-java-pre-4.4.patch
deleted file mode 100644
index 9d4e96c8..00000000
--- a/component/gcc/gcc-java-pre-4.4.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Patch for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50888
-
---- a/src/libjava/libjava/prims.cc.orig	2012-01-20 11:30:18.586157610 +0100
-+++ b/src/libjava/libjava/prims.cc	2012-01-20 11:30:58.192770947 +0100
-@@ -38,6 +38,14 @@
- #endif
- 
- #ifndef DISABLE_GETENV_PROPERTIES
-+#ifdef __GLIBC__
-+/* glibc 2.15+ provides even for C++ inline optimized ::isspace etc.
-+   Unfortunately those inlines are throw (), and call a function pointer
-+   (which is throw () too, but with -fnon-call-exceptions this results
-+   in a __cxa_call_unexpected call.  This macro disables the optimized
-+   version.  */
-+#define __NO_CTYPE 1
-+#endif
- #include <ctype.h>
- #include <java-props.h>
- #define PROCESS_GCJ_PROPERTIES process_gcj_properties()
---- a/src/libjava/prims.cc.orig	2012-01-20 11:30:23.042818341 +0100
-+++ b/src/libjava/prims.cc	2012-01-20 11:31:01.389433254 +0100
-@@ -38,6 +38,14 @@
- #endif
- 
- #ifndef DISABLE_GETENV_PROPERTIES
-+#ifdef __GLIBC__
-+/* glibc 2.15+ provides even for C++ inline optimized ::isspace etc.
-+   Unfortunately those inlines are throw (), and call a function pointer
-+   (which is throw () too, but with -fnon-call-exceptions this results
-+   in a __cxa_call_unexpected call.  This macro disables the optimized
-+   version.  */
-+#define __NO_CTYPE 1
-+#endif
- #include <ctype.h>
- #include <java-props.h>
- #define PROCESS_GCJ_PROPERTIES process_gcj_properties()
diff --git a/component/gcc/ppl-0.11-gcc-4.9.patch b/component/gcc/ppl-0.11-gcc-4.9.patch
deleted file mode 100644
index 0715a982..00000000
--- a/component/gcc/ppl-0.11-gcc-4.9.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-# HG changeset patch
-# User Bernhard Walle <bernhard@bwalle.de>
-# Date 1399806036 -7200
-#      Sun May 11 13:00:36 2014 +0200
-# Node ID 5632a171e7c1dc4c0fb5c7a8352afb4188cd29d5
-# Parent  e35fa03cd2043496839aa5fa3a1a3d2d375b5535
-complibs/ppl: Fix build of ppl 0.11.2 with gcc 4.9
-
-  From: Roberto Bagnara <bagnara@cs.unipr.it>
-  Date: Tue, 29 Apr 2014 19:51:43 +0000 (+0200)
-  Subject: Added missing inclusions.  Use std::ptrdiff_t.
-  X-Git-Url: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl%2Fppl.git;a=commitdiff_plain;h=61d4e14dfd9f1121e9b4521dead5728b2424dd7c
-
-  Added missing inclusions.  Use std::ptrdiff_t.
-  (Thanks to Paulo Cesar Pereira de Andrade.)
-
-Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
-
-diff -r e35fa03cd204 -r 5632a171e7c1 patches/ppl/0.11.2/500-ptrdiff_t.patch
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/patches/ppl/0.11.2/500-ptrdiff_t.patch	Sun May 11 13:00:36 2014 +0200
-@@ -0,0 +1,95 @@
-+From: Bernhard Walle <bernhard@bwalle.de>
-+Subject: Fix compilation with gcc 4.9 (ptrdiff_t errors)
-+
-+This is a backport of following patch in ppl git
-+
-+  commit 61d4e14dfd9f1121e9b4521dead5728b2424dd7c
-+  Author: Roberto Bagnara <bagnara@cs.unipr.it>
-+  Date:   Tue Apr 29 21:51:43 2014 +0200
-+
-+      Added missing inclusions.  Use std::ptrdiff_t.
-+      (Thanks to Paulo Cesar Pereira de Andrade.)
-+
-+---
-+ src/Congruence_System.defs.hh     |    3 ++-
-+ src/Constraint_System.defs.hh     |    3 ++-
-+ src/Generator_System.defs.hh      |    3 ++-
-+ src/Grid_Generator_System.defs.hh |    3 ++-
-+ 4 files changed, 8 insertions(+), 4 deletions(-)
-+
-+--- a/src/Grid_Generator_System.defs.hh
-++++ b/src/Grid_Generator_System.defs.hh
-+@@ -30,6 +30,7 @@ site: http://www.cs.unipr.it/ppl/ . */
-+ #include "Variables_Set.types.hh"
-+ #include "Grid.types.hh"
-+ #include <iosfwd>
-++#include <cstddef>
-+ 
-+ namespace Parma_Polyhedra_Library {
-+ 
-+@@ -267,7 +268,7 @@ public:
-+   class const_iterator
-+     : public std::iterator<std::forward_iterator_tag,
-+ 			   Grid_Generator,
-+-			   ptrdiff_t,
-++			   std::ptrdiff_t,
-+ 			   const Grid_Generator*,
-+ 			   const Grid_Generator&>,
-+       private Generator_System::const_iterator {
-+--- a/src/Congruence_System.defs.hh
-++++ b/src/Congruence_System.defs.hh
-+@@ -33,6 +33,7 @@ site: http://www.cs.unipr.it/ppl/ . */
-+ #include "Grid.types.hh"
-+ #include "Grid_Certificate.types.hh"
-+ #include <iosfwd>
-++#include <cstddef>
-+ 
-+ namespace Parma_Polyhedra_Library {
-+ 
-+@@ -235,7 +236,7 @@ public:
-+   class const_iterator
-+     : public std::iterator<std::forward_iterator_tag,
-+ 			   Congruence,
-+-			   ptrdiff_t,
-++			   std::ptrdiff_t,
-+ 			   const Congruence*,
-+ 			   const Congruence&> {
-+   public:
-+--- a/src/Constraint_System.defs.hh
-++++ b/src/Constraint_System.defs.hh
-+@@ -33,6 +33,7 @@ site: http://www.cs.unipr.it/ppl/ . */
-+ #include "Congruence_System.types.hh"
-+ #include <iterator>
-+ #include <iosfwd>
-++#include <cstddef>
-+ 
-+ namespace Parma_Polyhedra_Library {
-+ 
-+@@ -204,7 +205,7 @@ public:
-+   class const_iterator
-+     : public std::iterator<std::forward_iterator_tag,
-+ 			   Constraint,
-+-			   ptrdiff_t,
-++			   std::ptrdiff_t,
-+ 			   const Constraint*,
-+ 			   const Constraint&> {
-+   public:
-+--- a/src/Generator_System.defs.hh
-++++ b/src/Generator_System.defs.hh
-+@@ -33,6 +33,7 @@ site: http://www.cs.unipr.it/ppl/ . */
-+ #include "Polyhedron.types.hh"
-+ #include "Poly_Con_Relation.defs.hh"
-+ #include <iosfwd>
-++#include <cstddef>
-+ 
-+ namespace Parma_Polyhedra_Library {
-+ 
-+@@ -250,7 +251,7 @@ public:
-+   class const_iterator
-+     : public std::iterator<std::forward_iterator_tag,
-+ 			   Generator,
-+-			   ptrdiff_t,
-++			   std::ptrdiff_t,
-+ 			   const Generator*,
-+ 			   const Generator&> {
-+   public:
diff --git a/component/gmp/buildout.cfg b/component/gmp/buildout.cfg
index 90a8d9ff..d087575c 100644
--- a/component/gmp/buildout.cfg
+++ b/component/gmp/buildout.cfg
@@ -6,21 +6,6 @@ extends =
 parts =
   gmp
 
-# we should use version 4.x for ppl-0.10
-[gmp-4]
-recipe = slapos.recipe.cmmi
-url = ftp://ftp.gmplib.org/pub/gmp-4.3.2/gmp-4.3.2.tar.bz2
-md5sum = dd60683d7057917e34630b4a787932e8
-# GMP does not correctly detect achitecture so it have to be given
-# as slapos.recipe.cmmi is using shell expansion in subproceses
-# backticks are working
-configure-options =
-  --build=`uname -m`-linux
-  --enable-cxx
-  --disable-static
-environment =
-  PATH=${m4:location}/bin:%(PATH)s
-
 [gmp]
 recipe = slapos.recipe.cmmi
 version = 6.0.0a
-- 
2.30.9