Skip to content

Commit

Permalink
python3Packages.cffi: fix tests on FreeBSD
Browse files Browse the repository at this point in the history
- mark an existing patch with its removal condition
- disable a test, see comments.
  • Loading branch information
rhelmot committed Nov 17, 2024
1 parent ab258a9 commit 69cea1f
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 21 deletions.

This file was deleted.

17 changes: 7 additions & 10 deletions pkgs/development/python-modules/cffi/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,6 @@
pycparser,
}:

let
ccVersion = lib.getVersion stdenv.cc;
in
if isPyPy then
null
else
Expand All @@ -39,14 +36,9 @@ else
# I believe that libffi already contains the code from Apple's fork that is
# deemed safe to trust in cffi.
#
# This patch can be removed for 25.05, since it is a workaround for x86_64-darwin <= 10.15.
#
./darwin-use-libffi-closures.diff
]
++ lib.optionals (stdenv.cc.isClang && (ccVersion == "boot" || lib.versionAtLeast ccVersion "13")) [
# -Wnull-pointer-subtraction is enabled with -Wextra. Suppress it to allow the following tests
# to run and pass when cffi is built with newer versions of clang (including the bootstrap tools clang on Darwin):
# - testing/cffi1/test_verify1.py::test_enum_usage
# - testing/cffi1/test_verify1.py::test_named_pointer_as_argument
./clang-pointer-substraction-warning.diff
];

postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
Expand All @@ -57,6 +49,11 @@ else
--replace '/usr/include/libffi' '${lib.getDev libffi}/include'
'';

disabledTests = lib.optionals stdenv.isFreeBSD [
# https://github.com/python-cffi/cffi/pull/144
"test_dlopen_handle"
];

nativeBuildInputs = [ pkg-config ];

build-system = [ setuptools ];
Expand Down

0 comments on commit 69cea1f

Please sign in to comment.