diff options
author | Bernhard Walle <bernhard@bwalle.de> | 2013-12-08 12:53:14 +0100 |
---|---|---|
committer | Bernhard Walle <bernhard@bwalle.de> | 2013-12-08 12:53:14 +0100 |
commit | b9adbff8e1fe816a1c8bab8accc4c47cd5ac9118 (patch) | |
tree | 89d69b025cde1b41832198ced40aaccad191cc29 | |
parent | b0be7c94dfd4a31a969e8e03d46498aa9fe292d7 (diff) | |
download | crosstool-ng-b9adbff8e1fe816a1c8bab8accc4c47cd5ac9118.tar.gz crosstool-ng-b9adbff8e1fe816a1c8bab8accc4c47cd5ac9118.tar.bz2 crosstool-ng-b9adbff8e1fe816a1c8bab8accc4c47cd5ac9118.zip |
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>
Message-Id: <9a012bed87b494cfe0d4.1386503894@euler.fritz.box>
Patchwork-Id: 298789
-rw-r--r-- | patches/ppl/0.11.2/400-fix-build-with-gmp-5.1.patch | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/patches/ppl/0.11.2/400-fix-build-with-gmp-5.1.patch b/patches/ppl/0.11.2/400-fix-build-with-gmp-5.1.patch new file mode 100644 index 00000000..89d7a74e --- /dev/null +++ b/patches/ppl/0.11.2/400-fix-build-with-gmp-5.1.patch @@ -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) |