dlib: add flag to disable AVX support

Especially older hardware doesn't support AVX instructions. DLib is
still functional there, but significantly slower[1].

By setting `avxInstructions` to false, DLib will be compiled without
this feature.

[1] http://dlib.net/compile.html
This commit is contained in:
Maximilian Bosch
2019-03-03 14:21:04 +01:00
parent 77edcf88dc
commit 9732c44225
3 changed files with 38 additions and 1 deletions

View File

@@ -1,12 +1,17 @@
{ buildPythonPackage, dlib, python, pytest }:
{ buildPythonPackage, dlib, python, pytest, avxSupport ? true }:
buildPythonPackage {
inherit (dlib) name src nativeBuildInputs buildInputs meta;
# 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.
checkPhase = ''
${python.interpreter} nix_run_setup test --no USE_AVX_INSTRUCTIONS
'';
setupPyBuildFlags = [ "--${if avxSupport then "yes" else "no"} USE_AVX_INSTRUCTIONS" ];
patches = [ ./build-cores.patch ];
checkInputs = [ pytest ];