python311: fix cross to/from musl (#260641)
The situation: Python <3.11: under Linux the abi string is always -gnu* Python 3.11-3.12: musl is treated as its own abi in the python build system, but when cross-compiling the build host's libc is used for the target abi string. Cross compiling from glibc to musl gives a -gnu* target abi string and vice versa. Python >=3.13: musl is treated as its own abi, and when cross-compiling the target libc is used for the target abi string We backport the fix for python 3.11-3.12, since the intermediate state is almost impossible to model in the nix expression
This commit is contained in:
@@ -302,9 +302,12 @@ in with passthru; stdenv.mkDerivation {
|
||||
./3.8/0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch
|
||||
# Use sysconfigdata to find headers. Fixes cross-compilation of extension modules.
|
||||
./3.7/fix-finding-headers-when-cross-compiling.patch
|
||||
] ++ optionals stdenv.hostPlatform.isLoongArch64 [
|
||||
] ++ optionals (pythonOlder "3.12") [
|
||||
# https://github.com/python/cpython/issues/90656
|
||||
./loongarch-support.patch
|
||||
] ++ optionals (pythonAtLeast "3.11" && pythonOlder "3.13") [
|
||||
# backport fix for https://github.com/python/cpython/issues/95855
|
||||
./platform-triplet-detection.patch
|
||||
] ++ optionals (stdenv.hostPlatform.isMinGW) (let
|
||||
# https://src.fedoraproject.org/rpms/mingw-python3
|
||||
mingw-patch = fetchgit {
|
||||
|
||||
Reference in New Issue
Block a user