2023-08-30 14:05:32 +10:00
|
|
|
/* SPDX-FileCopyrightText: 2023 Blender Authors
|
|
|
|
|
*
|
|
|
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
|
|
|
|
|
|
/** \file
|
|
|
|
|
* \ingroup pygen
|
|
|
|
|
* \brief header-only compatibility defines.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
2025-01-07 12:39:13 +01:00
|
|
|
#include <Python.h>
|
|
|
|
|
|
2024-10-18 12:23:34 +11:00
|
|
|
/* Removes `intialized` member from Python 3.13+. */
|
|
|
|
|
#if PY_VERSION_HEX >= 0x030d0000
|
|
|
|
|
# define PY_ARG_PARSER_HEAD_COMPAT()
|
|
|
|
|
#elif PY_VERSION_HEX >= 0x030c0000
|
2023-08-30 14:05:32 +10:00
|
|
|
/* Add `intialized` member for Python 3.12+. */
|
|
|
|
|
# define PY_ARG_PARSER_HEAD_COMPAT() 0,
|
|
|
|
|
#else
|
|
|
|
|
# define PY_ARG_PARSER_HEAD_COMPAT()
|
|
|
|
|
#endif
|
2024-10-18 12:23:34 +11:00
|
|
|
|
|
|
|
|
/* Python 3.13 made some changes, use the "new" names. */
|
|
|
|
|
#if PY_VERSION_HEX < 0x030d0000
|
|
|
|
|
# define PyObject_GetOptionalAttr _PyObject_LookupAttr
|
2025-02-13 20:45:26 +11:00
|
|
|
|
|
|
|
|
# define Py_IsFinalizing _Py_IsFinalizing
|
2024-10-18 12:23:34 +11:00
|
|
|
#endif
|