Unverified Commit dc1fd4d1 authored by Martin Weinelt's avatar Martin Weinelt Committed by GitHub
Browse files

python311: fix _ctypes build on darwin (#390454)

In Python 3.12+, the -DUSING_APPLE_OS_LIBFFI=1 macro is always set:
https://github.com/python/cpython/commit/25590eb5dee5176f3ac60916b19450f8198e7ffc



Fixes #390348

Signed-off-by: default avatarIhar Hrachyshka <ihar.hrachyshka@gmail.com>
parents 4d7c037e ef35af3b
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -434,6 +434,9 @@ in with passthru; stdenv.mkDerivation (finalAttrs: {
    for path in /usr /sw /opt /pkg; do
      substituteInPlace ./setup.py --replace-warn $path /no-such-path
    done
  '' + optionalString (stdenv.hostPlatform.isDarwin && pythonOlder "3.12") ''
    # Fix _ctypes module compilation
    export NIX_CFLAGS_COMPILE+=" -DUSING_APPLE_OS_LIBFFI=1"
  '' + optionalString stdenv.hostPlatform.isDarwin ''
    # Override the auto-detection in setup.py, which assumes a universal build
    export PYTHON_DECIMAL_WITH_MACHINE=${if stdenv.hostPlatform.isAarch64 then "uint128" else "x64"}