-
-
Notifications
You must be signed in to change notification settings - Fork 33.8k
Open
Labels
buildThe build process and cross-buildThe build process and cross-buildtype-featureA feature request or enhancementA feature request or enhancement
Description
Quoting from capi-workgroup/problems#46:
The headers define a number of identifiers that don't start with
Py(or_Py), potentially clashing with other code.[...]
- configure cruft like
HAVE_STRFTIMorSIZEOF_SIZE_T
We can add an m4 macro that wraps AC_DEFINE and AH_TEMPLATE, to make sure we namespace any defines produced by configure. I'm not sure how PEP-387 plays in here; can we simply change these preprocessor defines? I guess not, since what's exposed in Python.h is protected by PEP-387. For now, let's just add macros that add properly namespaced defined in addition to the existing ones.
- Add macros that add
Py_namespaced defined in addition to the existing defs- Add
PY_DEFINEmacro that wrapsAC_DEFINE - Add
PY_TEMPLATEmacro that wrapsAH_TEMPLATE - Add
PY_CHECK_HEADERSmacro that wrapsAC_CHECK_HEADERS - Use these macros in
configure.ac
- Add
- Remove the old non-namespaced defs
Linked PRs
Metadata
Metadata
Assignees
Labels
buildThe build process and cross-buildThe build process and cross-buildtype-featureA feature request or enhancementA feature request or enhancement

