Unverified Kaydet (Commit) b248e957 authored tarafından Xiang Zhang's avatar Xiang Zhang Kaydeden (comit) GitHub

Fix compiling error when missing gdbm version macros (GH-7823)

üst 16eb3bcd
...@@ -527,11 +527,11 @@ def collect_cc(info_add): ...@@ -527,11 +527,11 @@ def collect_cc(info_add):
def collect_gdbm(info_add): def collect_gdbm(info_add):
try: try:
import _gdbm from _gdbm import _GDBM_VERSION
except ImportError: except ImportError:
return return
info_add('gdbm.GDBM_VERSION', '.'.join(map(str, _gdbm._GDBM_VERSION))) info_add('gdbm.GDBM_VERSION', '.'.join(map(str, _GDBM_VERSION)))
def collect_info(info): def collect_info(info):
......
...@@ -12,9 +12,8 @@ class TestGdbm(unittest.TestCase): ...@@ -12,9 +12,8 @@ class TestGdbm(unittest.TestCase):
def setUpClass(): def setUpClass():
if support.verbose: if support.verbose:
try: try:
import _gdbm from _gdbm import _GDBM_VERSION as version
version = _gdbm._GDBM_VERSION except ImportError:
except (ImportError, AttributeError):
pass pass
else: else:
print(f"gdbm version: {version}") print(f"gdbm version: {version}")
......
...@@ -678,6 +678,8 @@ PyInit__gdbm(void) { ...@@ -678,6 +678,8 @@ PyInit__gdbm(void) {
goto error; goto error;
} }
#if defined(GDBM_VERSION_MAJOR) && defined(GDBM_VERSION_MINOR) && \
defined(GDBM_VERSION_PATCH)
PyObject *obj = Py_BuildValue("iii", GDBM_VERSION_MAJOR, PyObject *obj = Py_BuildValue("iii", GDBM_VERSION_MAJOR,
GDBM_VERSION_MINOR, GDBM_VERSION_PATCH); GDBM_VERSION_MINOR, GDBM_VERSION_PATCH);
if (obj == NULL) { if (obj == NULL) {
...@@ -687,6 +689,7 @@ PyInit__gdbm(void) { ...@@ -687,6 +689,7 @@ PyInit__gdbm(void) {
Py_DECREF(obj); Py_DECREF(obj);
goto error; goto error;
} }
#endif
return m; return m;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment