python312Packages.dlib: Inherit build environment from dlib and fix tests

This commit is contained in:
hacker1024
2025-02-03 13:11:53 +11:00
parent 3a228057f5
commit d794669e12
@@ -1,21 +1,20 @@
{
stdenv,
buildPythonPackage,
dlib,
python,
pytestCheckHook,
more-itertools,
sse4Support ? stdenv.hostPlatform.sse4_1Support,
avxSupport ? stdenv.hostPlatform.avxSupport,
}:
buildPythonPackage {
inherit (dlib)
stdenv
pname
version
src
nativeBuildInputs
buildInputs
cmakeFlags
passthru
meta
;
@@ -34,10 +33,26 @@ buildPythonPackage {
--replace "pytest==3.8" "pytest"
'';
setupPyBuildFlags = [
"--set USE_SSE4_INSTRUCTIONS=${if sse4Support then "yes" else "no"}"
"--set USE_AVX_INSTRUCTIONS=${if avxSupport then "yes" else "no"}"
];
# Pass CMake flags through to the build script
preConfigure = ''
for flag in $cmakeFlags; do
if [[ "$flag" == -D* ]]; then
setupPyBuildFlags+=" --set ''${flag#-D}"
fi
done
'';
dontUseCmakeConfigure = true;
doCheck =
!(
# The tests attempt to use CUDA on the build platform.
# https://github.com/NixOS/nixpkgs/issues/225912
dlib.cudaSupport
# although AVX can be enabled, we never test with it. Some Hydra machines
# fail because of this, however their build results are probably used on hardware
# with AVX support.
|| dlib.avxSupport
);
}