This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See crosstool-NG for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] complibs/ppl: Fix build of ppl 0.11.2 with gmp 5.1 and later


# HG changeset patch
# User Bernhard Walle <bernhard@bwalle.de>
# Date 1386503594 -3600
#      Sun Dec 08 12:53:14 2013 +0100
# Node ID 9a012bed87b494cfe0d4e06b828d522c562b8765
# Parent  7e569a9cb5fd3ab591bb307328b947a5b7312cba
complibs/ppl: Fix build of ppl 0.11.2 with gmp 5.1 and later

The fix is backported from
http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commitdiff;h=9f843aecc23981aec6ed1eaa8be06e6786a47f0d.

Signed-off-by: Bernhard Walle <bernhard@bwalle.de>

diff -r 7e569a9cb5fd -r 9a012bed87b4 patches/ppl/0.11.2/400-fix-build-with-gmp-5.1.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/ppl/0.11.2/400-fix-build-with-gmp-5.1.patch	Sun Dec 08 12:53:14 2013 +0100
@@ -0,0 +1,52 @@
+From 9f843aecc23981aec6ed1eaa8be06e6786a47f0d Mon Sep 17 00:00:00 2001
+From: Roberto Bagnara <bagnara@cs.unipr.it>
+Date: Wed, 19 Dec 2012 08:42:19 +0100
+Subject: [PATCH] GMP version 5.1.0 (and, presumably, later versions) defines
+ std::numeric_limits.
+
+---
+ src/mp_std_bits.cc      |    6 ++++++
+ src/mp_std_bits.defs.hh |    6 ++++++
+ 2 files changed, 12 insertions(+)
+
+--- a/src/mp_std_bits.cc
++++ b/src/mp_std_bits.cc
+@@ -26,6 +26,9 @@ site: http://www.cs.unipr.it/ppl/ . */
+ #include <ppl-config.h>
+ #include "mp_std_bits.defs.hh"
+ 
++#if __GNU_MP_VERSION < 5 \
++  || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
++
+ const bool std::numeric_limits<mpz_class>::is_specialized;
+ const int std::numeric_limits<mpz_class>::digits;
+ const int std::numeric_limits<mpz_class>::digits10;
+@@ -71,3 +74,6 @@ const bool std::numeric_limits<mpq_class
+ const bool std::numeric_limits<mpq_class>::traps;
+ const bool std::numeric_limits<mpq_class>::tininess_before;
+ const std::float_round_style std::numeric_limits<mpq_class>::round_style;
++
++#endif // __GNU_MP_VERSION < 5
++       // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
+--- a/src/mp_std_bits.defs.hh
++++ b/src/mp_std_bits.defs.hh
+@@ -39,6 +39,9 @@ void swap(mpz_class& x, mpz_class& y);
+ #endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
+ void swap(mpq_class& x, mpq_class& y);
+ 
++#if __GNU_MP_VERSION < 5 \
++  || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
++
+ namespace std {
+ 
+ #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
+@@ -165,6 +168,9 @@ public:
+ 
+ } // namespace std
+ 
++#endif // __GNU_MP_VERSION < 5
++       // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
++
+ #include "mp_std_bits.inlines.hh"
+ 
+ #endif // !defined(PPL_mp_std_bits_defs_hh)

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]