summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2015-12-25 20:09:28 +0000
committerjoerg <joerg@pkgsrc.org>2015-12-25 20:09:28 +0000
commit9ce58b850a8ea987d130c446d3e5c2f02ce48a43 (patch)
treee39766ac5def3a1907bdc5eee671e992a748fe57
parentef4b7e8c505807d4b2a5f6388a3e5fbb2fedd512 (diff)
downloadpkgsrc-9ce58b850a8ea987d130c446d3e5c2f02ce48a43.tar.gz
long is ambiguous for creating Fixed values on 64bit systems, so use
LongLong for the intermediate and let the compiler figure out how to cast to it from long.
-rw-r--r--net/py-omniORBpy/distinfo3
-rw-r--r--net/py-omniORBpy/patches/patch-modules_pyFixed.cc31
2 files changed, 33 insertions, 1 deletions
diff --git a/net/py-omniORBpy/distinfo b/net/py-omniORBpy/distinfo
index bd163596875..ea099ab573b 100644
--- a/net/py-omniORBpy/distinfo
+++ b/net/py-omniORBpy/distinfo
@@ -1,8 +1,9 @@
-$NetBSD: distinfo,v 1.4 2015/11/04 00:35:31 agc Exp $
+$NetBSD: distinfo,v 1.5 2015/12/25 20:09:28 joerg Exp $
SHA1 (omniORBpy-3.5.tar.bz2) = 33ef2d2c59ede8a7b1072db12fe6bb2378606027
RMD160 (omniORBpy-3.5.tar.bz2) = 952033782f2da58834f2c5255b2b8286af214d0d
SHA512 (omniORBpy-3.5.tar.bz2) = 15eb3cfc460d80cb4686d984be78b1194647e63e6fe5b971615870d5ff2ed7953d14c60c9536eda3d2fb88c22c258e5024158004a002ca6a5e3ebccb63940c13
Size (omniORBpy-3.5.tar.bz2) = 607213 bytes
SHA1 (patch-aa) = da768cb94abd970037675535b5350f84480f6ff3
+SHA1 (patch-modules_pyFixed.cc) = 1060c24ea8fbc1ce9514ab709bfc64cea9aa9eea
SHA1 (patch-omniidl__be_dir.mk) = 66821bd1d261d36815c6f3bd2ac0fe42722617a3
diff --git a/net/py-omniORBpy/patches/patch-modules_pyFixed.cc b/net/py-omniORBpy/patches/patch-modules_pyFixed.cc
new file mode 100644
index 00000000000..aadf9715502
--- /dev/null
+++ b/net/py-omniORBpy/patches/patch-modules_pyFixed.cc
@@ -0,0 +1,31 @@
+$NetBSD: patch-modules_pyFixed.cc,v 1.1 2015/12/25 20:09:28 joerg Exp $
+
+--- modules/pyFixed.cc.orig 2015-12-25 19:52:09.000000000 +0000
++++ modules/pyFixed.cc
+@@ -99,7 +99,7 @@ omniPy::newFixedObject(PyObject* self, P
+ return omniPy::newFixedObject(f);
+ }
+ else if (PyInt_Check(pyv)) {
+- long l = PyInt_AsLong(pyv);
++ CORBA::LongLong l = PyInt_AsLong(pyv);
+ CORBA::Fixed f(l);
+ return omniPy::newFixedObject(f);
+ }
+@@ -138,7 +138,7 @@ omniPy::newFixedObject(PyObject* self, P
+ // an integer value, then hack the scale to be correct.
+
+ if (PyInt_Check(pyv)) {
+- long l = PyInt_AsLong(pyv);
++ CORBA::LongLong l = PyInt_AsLong(pyv);
+ CORBA::Fixed f(l);
+ f.PR_changeScale(scale);
+ f.PR_setLimits(digits, scale);
+@@ -368,7 +368,7 @@ extern "C" {
+ fixed_coerce(PyObject** pv, PyObject** pw)
+ {
+ if (PyInt_Check(*pw)) {
+- long l = PyInt_AsLong(*pw);
++ CORBA::LongLong l = PyInt_AsLong(*pw);
+ CORBA::Fixed f(l);
+ *pw = omniPy::newFixedObject(f);
+ Py_INCREF(*pv);