From 4cecd7891ac6ff5eb1b352d556f3ff354162f1d4 Mon Sep 17 00:00:00 2001 From: Hai Shi Date: Wed, 31 Mar 2021 21:46:58 +0800 Subject: [PATCH] Move the Py_LIMITED_API macro of xxlimited module from setup.py to xxlimited.c --- Modules/xxlimited.c | 4 ++++ Modules/xxlimited_35.c | 4 ++++ setup.py | 4 ++-- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Modules/xxlimited.c b/Modules/xxlimited.c index 883c8a9b5e1833..88a06e7459a30a 100644 --- a/Modules/xxlimited.c +++ b/Modules/xxlimited.c @@ -55,6 +55,10 @@ pass */ +/* xxlimited with the limited API. */ +#ifdef WITH_Py_LIMITED_API +# define Py_LIMITED_API 0x03100000 +#endif #include "Python.h" // Module state diff --git a/Modules/xxlimited_35.c b/Modules/xxlimited_35.c index ce96e8c90efd47..10fbdfa04e7f48 100644 --- a/Modules/xxlimited_35.c +++ b/Modules/xxlimited_35.c @@ -7,6 +7,10 @@ /* Xxo objects */ +/* xxlimited_35 with the limited API. */ +#ifdef WITH_Py_LIMITED_API +# define Py_LIMITED_API 0x03050000 +#endif #include "Python.h" static PyObject *ErrorObject; diff --git a/setup.py b/setup.py index a7d00841d05596..abd60b527063ad 100644 --- a/setup.py +++ b/setup.py @@ -1867,9 +1867,9 @@ def detect_modules(self): if 'd' not in sysconfig.get_config_var('ABIFLAGS'): # Non-debug mode: Build xxlimited with limited API self.add(Extension('xxlimited', ['xxlimited.c'], - define_macros=[('Py_LIMITED_API', '0x03100000')])) + define_macros=[('WITH_Py_LIMITED_API', 1)])) self.add(Extension('xxlimited_35', ['xxlimited_35.c'], - define_macros=[('Py_LIMITED_API', '0x03050000')])) + define_macros=[('WITH_Py_LIMITED_API', 1)])) else: # Debug mode: Build xxlimited with the full API # (which is compatible with the limited one)