Skip to content

Commit de3328c

Browse files
committed
pull_39, issues_37, debian 13 - gcc 14.2.0 compile error
1 parent cf47a27 commit de3328c

File tree

3 files changed

+20
-7
lines changed

3 files changed

+20
-7
lines changed

devsupApp/src/dbapi.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -289,11 +289,11 @@ static struct PyMethodDef dbapimethod[] = {
289289

290290
#if PY_MAJOR_VERSION >= 3
291291
static struct PyModuleDef dbapimodule = {
292-
PyModuleDef_HEAD_INIT,
292+
PyModuleDef_HEAD_INIT,
293293
"devsup._dbapi",
294294
NULL,
295295
-1,
296-
&dbapimethod
296+
dbapimethod
297297
};
298298
#endif
299299

devsupApp/src/dbfield.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ static const int dbf2np_map[DBF_MENU+1] = {
4040
NPY_INT16, // DBF_MENU
4141
};
4242
static PyArray_Descr* dbf2np[DBF_MENU+1];
43+
#if NPY_ABI_VERSION < 0x02000000
44+
#define PyDataType_ELSIZE(descr) ((descr)->elsize)
45+
#define PyDataType_SET_ELSIZE(descr, size) (descr)->elsize = size
46+
#endif
4347
#endif
4448

4549
typedef struct {
@@ -98,7 +102,7 @@ static PyObject* build_array(PyObject* obj, void *data, unsigned short ftype, un
98102

99103
desc = dbf2np[ftype];
100104
if(ftype==DBF_STRING) {
101-
desc->elsize = MAX_STRING_SIZE;
105+
PyDataType_SET_ELSIZE(desc, MAX_STRING_SIZE);
102106
}
103107

104108
Py_XINCREF(desc);

makehelper.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,24 @@
2626
pass
2727
out = open(sys.argv[1], 'w')
2828

29-
from distutils.sysconfig import get_config_var, get_python_inc
29+
if sys.version_info >= (3,10,):
30+
from sysconfig import get_config_var, get_path
31+
incdirs = [get_path("include")]
32+
else:
33+
from distutils.sysconfig import get_config_var, get_python_inc
34+
incdirs = [get_python_inc()]
3035

31-
incdirs = [get_python_inc()]
3236
libdir = get_config_var('LIBDIR') or ''
3337

3438
have_np='NO'
3539
try:
36-
from numpy.distutils.misc_util import get_numpy_include_dirs
37-
incdirs = get_numpy_include_dirs()+incdirs
40+
if sys.version_info >= (3,10,):
41+
from numpy import get_include
42+
numpy_dir = [get_include()]
43+
else:
44+
from numpy.distutils.misc_util import get_numpy_include_dirs
45+
numpy_dir = get_numpy_include_dirs()
46+
incdirs = numpy_dir+incdirs
3847
have_np='YES'
3948
except ImportError:
4049
pass

0 commit comments

Comments
 (0)