mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-08-15 14:11:24 +00:00
python3-fann2: add SWIG py2/py3 C-API compat patch
fann2.i's HELPER_ARRAY_TEMPLATE typemaps use the Python 2 C-API names PyInt_Check/PyInt_AsLong/PyInt_FromLong. Python 3.14 no longer ships any fallback definitions for them, so the SWIG-generated wrapper fails to compile: fann2/fann2_wrap.cxx:10062:41: error: use of undeclared identifier 'PyInt_AsLong'; did you mean 'PyLong_AsLong'? Add a patch mapping them to their PyLong_* equivalents. Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
+36
@@ -0,0 +1,36 @@
|
||||
From: Khem Raj <khem.raj@oss.qualcomm.com>
|
||||
Subject: fann2.i: add py2/py3 C-API compat macros
|
||||
|
||||
The HELPER_ARRAY_TEMPLATE typemaps in fann2.i use the Python 2 C-API
|
||||
names PyInt_Check/PyInt_AsLong/PyInt_FromLong. Python 3.14 no longer
|
||||
ships any fallback definitions for them, so the SWIG-generated wrapper
|
||||
fails to compile:
|
||||
|
||||
fann2/fann2_wrap.cxx:10062:41: error: use of undeclared identifier 'PyInt_AsLong'; did you mean 'PyLong_AsLong'?
|
||||
|
||||
Map them to their PyLong_* equivalents.
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
|
||||
---
|
||||
--- a/fann2/fann2.i
|
||||
+++ b/fann2/fann2.i
|
||||
@@ -15,6 +15,18 @@
|
||||
#include "fann_cpp_subclass.h"
|
||||
%}
|
||||
|
||||
+%{
|
||||
+#ifndef PyInt_Check
|
||||
+#define PyInt_Check(x) PyLong_Check(x)
|
||||
+#endif
|
||||
+#ifndef PyInt_AsLong
|
||||
+#define PyInt_AsLong(x) PyLong_AsLong(x)
|
||||
+#endif
|
||||
+#ifndef PyInt_FromLong
|
||||
+#define PyInt_FromLong(x) PyLong_FromLong(x)
|
||||
+#endif
|
||||
+%}
|
||||
+
|
||||
%define HELPER_ARRAY_TEMPLATE( templ , T, GetFunc, SetFunc, cast)
|
||||
%typemap(in) templ<T> * (templ<T> temp){
|
||||
// templ<T>* type_map in
|
||||
@@ -6,6 +6,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=c73b943dc75f6f65e007c56ac6515c8f"
|
||||
SRC_URI[sha256sum] = "cdca0a65ad48e08320672affe38c3dd4ea15e27821e5e1db9fa2b34299bdd41e"
|
||||
|
||||
SRC_URI += " file://0001-setup.py-Don-t-hardcode-swig-and-fann2-binary-locati.patch"
|
||||
SRC_URI += " file://0002-fann2.i-add-py2-py3-C-API-compat-macros.patch"
|
||||
|
||||
inherit pypi setuptools3
|
||||
|
||||
|
||||
Reference in New Issue
Block a user