pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/meta-pkgs/boost Workaround a GCC 3.4/4.x compiler bug ...
details: https://anonhg.NetBSD.org/pkgsrc/rev/0db73586eab7
branches: trunk
changeset: 517867:0db73586eab7
user: jmmv <jmmv%pkgsrc.org@localhost>
date: Thu Aug 24 08:45:35 2006 +0000
description:
Workaround a GCC 3.4/4.x compiler bug that prevents -> and & being used
in constant expressions; according to the GCC bug report this was fixed in
4.0.3 but still happens with NetBSD's 4.1.2:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23437
Fixes build of boost-python; found in one of the latest bulk build reports.
diffstat:
meta-pkgs/boost/distinfo | 4 +++-
meta-pkgs/boost/patches/patch-ai | 15 +++++++++++++++
meta-pkgs/boost/patches/patch-aj | 21 +++++++++++++++++++++
3 files changed, 39 insertions(+), 1 deletions(-)
diffs (59 lines):
diff -r bcaadb9b9027 -r 0db73586eab7 meta-pkgs/boost/distinfo
--- a/meta-pkgs/boost/distinfo Thu Aug 24 08:44:26 2006 +0000
+++ b/meta-pkgs/boost/distinfo Thu Aug 24 08:45:35 2006 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.8 2006/01/21 10:12:40 jmmv Exp $
+$NetBSD: distinfo,v 1.9 2006/08/24 08:45:35 jmmv Exp $
SHA1 (boost_1_33_1.tar.bz2) = 22682f75ff0d1ea548688e78c8cca83d599ca576
RMD160 (boost_1_33_1.tar.bz2) = 3d5999d321b558f74d786bec52ee1b1fcd7e7152
@@ -11,3 +11,5 @@
SHA1 (patch-af) = 64a6fa2be7a526a0a3e6f47d5f703d7253a51615
SHA1 (patch-ag) = 6c862a0f50590327344d6973617ccc56df67fa76
SHA1 (patch-ah) = e16c08bb0f63e63ae082e9d83c588e3adcf9cb3b
+SHA1 (patch-ai) = 1e2d946090093bb4b9ab8fa78ccfaa0189b1d145
+SHA1 (patch-aj) = 09d27fc296105d3a8141df26ce3e8942ca973746
diff -r bcaadb9b9027 -r 0db73586eab7 meta-pkgs/boost/patches/patch-ai
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/meta-pkgs/boost/patches/patch-ai Thu Aug 24 08:45:35 2006 +0000
@@ -0,0 +1,15 @@
+$NetBSD: patch-ai,v 1.1 2006/08/24 08:45:35 jmmv Exp $
+
+--- boost/python/converter/rvalue_from_python_data.hpp.orig 2006-08-23 23:48:06.000000000 +0200
++++ boost/python/converter/rvalue_from_python_data.hpp
+@@ -94,7 +94,9 @@ struct rvalue_from_python_data : rvalue_
+ # if (!defined(__MWERKS__) || __MWERKS__ >= 0x3000) \
+ && (!defined(__EDG_VERSION__) || __EDG_VERSION__ >= 245) \
+ && (!defined(__DECCXX_VER) || __DECCXX_VER > 60590014) \
+- && !defined(BOOST_PYTHON_SYNOPSIS) /* Synopsis' OpenCXX has trouble parsing this */
++ && !defined(BOOST_PYTHON_SYNOPSIS) /* Synopsis' OpenCXX has trouble parsing this */ \
++ && !(BOOST_WORKAROUND(__GNUC__, == 3) && BOOST_WORKAROUND(__GNUC_MINOR__, == 4)) \
++ && !(BOOST_WORKAROUND(__GNUC__, == 4))
+ // This must always be a POD struct with m_data its first member.
+ BOOST_STATIC_ASSERT(BOOST_PYTHON_OFFSETOF(rvalue_from_python_storage<T>,stage1) == 0);
+ # endif
diff -r bcaadb9b9027 -r 0db73586eab7 meta-pkgs/boost/patches/patch-aj
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/meta-pkgs/boost/patches/patch-aj Thu Aug 24 08:45:35 2006 +0000
@@ -0,0 +1,21 @@
+$NetBSD: patch-aj,v 1.1 2006/08/24 08:45:35 jmmv Exp $
+
+--- boost/python/object/instance.hpp.orig 2006-08-23 23:48:06.000000000 +0200
++++ boost/python/object/instance.hpp
+@@ -41,9 +41,16 @@ struct additional_instance_size
+ {
+ typedef instance<Data> instance_data;
+ typedef instance<char> instance_char;
++#if !(BOOST_WORKAROUND(__GNUC__, == 3) && BOOST_WORKAROUND(__GNUC_MINOR__, == 4)) \
++ && !(BOOST_WORKAROUND(__GNUC__, == 4))
+ BOOST_STATIC_CONSTANT(
+ std::size_t, value = sizeof(instance_data)
+ - BOOST_PYTHON_OFFSETOF(instance_char,storage));
++#else
++ BOOST_STATIC_CONSTANT(
++ std::size_t, value = sizeof(instance_data)
++ - (sizeof(PyVarObject) + sizeof(PyObject*) + sizeof(PyObject*) + sizeof(instance_holder*)));
++#endif
+ };
+
+ }}} // namespace boost::python::object
Home |
Main Index |
Thread Index |
Old Index