Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
46 lines
851 B
Nix
46 lines
851 B
Nix
{
|
|
stdenv,
|
|
pkg-config,
|
|
mkl,
|
|
|
|
enableStatic ? false,
|
|
execution ? "seq",
|
|
}:
|
|
|
|
let
|
|
linkType = if enableStatic then "static" else "dynamic";
|
|
in
|
|
stdenv.mkDerivation {
|
|
pname = "mkl-test";
|
|
version = mkl.version;
|
|
|
|
unpackPhase = ''
|
|
cp ${./test.c} test.c
|
|
'';
|
|
|
|
nativeBuildInputs = [ pkg-config ];
|
|
|
|
buildInputs = [ (mkl.override { inherit enableStatic; }) ];
|
|
|
|
doCheck = true;
|
|
|
|
buildPhase = ''
|
|
# Check regular Nix build.
|
|
gcc test.c -o test $(pkg-config --cflags --libs mkl-${linkType}-ilp64-${execution})
|
|
|
|
# Clear flags to ensure that we are purely relying on options
|
|
# provided by pkg-config.
|
|
NIX_CFLAGS_COMPILE="" \
|
|
NIX_LDFLAGS="" \
|
|
gcc test.c -o test $(pkg-config --cflags --libs mkl-${linkType}-ilp64-${execution})
|
|
'';
|
|
|
|
installPhase = ''
|
|
touch $out
|
|
'';
|
|
|
|
checkPhase = ''
|
|
./test
|
|
'';
|
|
}
|