From 8fad80137e956b593d9e6ca7d176e08ba0d3c14d Mon Sep 17 00:00:00 2001 From: Xiang Zhang Date: Wed, 20 Jun 2018 20:16:14 +0800 Subject: [PATCH 1/3] Fix compiling error when missing gdbm version macros --- Lib/test/pythoninfo.py | 4 ++-- Modules/_gdbmmodule.c | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Lib/test/pythoninfo.py b/Lib/test/pythoninfo.py index 3958764a6ae941..f058185c2f8097 100644 --- a/Lib/test/pythoninfo.py +++ b/Lib/test/pythoninfo.py @@ -527,11 +527,11 @@ def collect_cc(info_add): def collect_gdbm(info_add): try: - import _gdbm + from _gdbm import _GDBM_VERSION except ImportError: 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): diff --git a/Modules/_gdbmmodule.c b/Modules/_gdbmmodule.c index a68cf029429ab5..2fa91543854796 100644 --- a/Modules/_gdbmmodule.c +++ b/Modules/_gdbmmodule.c @@ -678,6 +678,7 @@ PyInit__gdbm(void) { goto error; } +#if defined(GDBM_VERSION_MAJOR) && defined(GDBM_VERSION_MINOR) && defined(GDBM_VERSION_PATCH) PyObject *obj = Py_BuildValue("iii", GDBM_VERSION_MAJOR, GDBM_VERSION_MINOR, GDBM_VERSION_PATCH); if (obj == NULL) { @@ -687,6 +688,7 @@ PyInit__gdbm(void) { Py_DECREF(obj); goto error; } +#endif return m; From 241c7ed042750bba310b0ceace0ddaefc004eb1e Mon Sep 17 00:00:00 2001 From: Xiang Zhang Date: Wed, 20 Jun 2018 20:20:34 +0800 Subject: [PATCH 2/3] fix too long line --- Modules/_gdbmmodule.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Modules/_gdbmmodule.c b/Modules/_gdbmmodule.c index 2fa91543854796..10560040e446b3 100644 --- a/Modules/_gdbmmodule.c +++ b/Modules/_gdbmmodule.c @@ -678,7 +678,8 @@ PyInit__gdbm(void) { goto error; } -#if defined(GDBM_VERSION_MAJOR) && defined(GDBM_VERSION_MINOR) && defined(GDBM_VERSION_PATCH) +#if defined(GDBM_VERSION_MAJOR) && defined(GDBM_VERSION_MINOR) && \ + defined(GDBM_VERSION_PATCH) PyObject *obj = Py_BuildValue("iii", GDBM_VERSION_MAJOR, GDBM_VERSION_MINOR, GDBM_VERSION_PATCH); if (obj == NULL) { From 8e63d059dc9d5d648cd57c9a7fd7d614ed4fdce0 Mon Sep 17 00:00:00 2001 From: Xiang Zhang Date: Wed, 20 Jun 2018 20:33:28 +0800 Subject: [PATCH 3/3] use from import --- Lib/test/test_dbm_gnu.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_dbm_gnu.py b/Lib/test/test_dbm_gnu.py index 49f91705b5b8ec..c96eff5a319e64 100644 --- a/Lib/test/test_dbm_gnu.py +++ b/Lib/test/test_dbm_gnu.py @@ -12,9 +12,8 @@ class TestGdbm(unittest.TestCase): def setUpClass(): if support.verbose: try: - import _gdbm - version = _gdbm._GDBM_VERSION - except (ImportError, AttributeError): + from _gdbm import _GDBM_VERSION as version + except ImportError: pass else: print(f"gdbm version: {version}")