Build platform CPython headers instead of Host platform headers used whenever a Python extension is cross-compiled

These are dusty memories now, but we fought this issue mainly in Python updates 2022-02-15 by mweinelt · Pull Request #160067 · NixOS/nixpkgs · GitHub

The big change with setuptools 60 is it went (back) to including its own bundled distutils. The issue this can introduce is that any special patches/hacks that were made to cpython’s stdlib distutils are, of course, missing. So we needed to port our c++ support-adding patch from the stdlib distutils to the bundled distutils. This is where I would start looking - for “missing fixes”. I guess as you’ve got a “working version” (using SETUPTOOLS_USE_DISTUTILS=stdlib) and a “broken version” you can try and analyze the real differences between the two distutils.

It could, of course, be cause by a completely different change in setuptools: History - setuptools 69.1.0.post20240212 documentation would be useful here.

2 Likes