mkl: Add a small test program
The MKL pkg-config files often change and are then incorrect for our paths. pkg-config validation finds some issues, but not incorrect paths. So, add a small test program to test whether the generated pkg-config files can actually be used to build a functioning binary. Hopefully this catches future regressions.
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
{ stdenv, pkg-config, mkl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "mkl-test";
|
||||
version = mkl.version;
|
||||
|
||||
src = ./.;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
buildInputs = [ mkl ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
buildPhase = ''
|
||||
# Check regular Nix build.
|
||||
gcc $(pkg-config --cflags --libs mkl-dynamic-ilp64-seq) test.c -o test
|
||||
|
||||
# Clear flags to ensure that we are purely relying on options
|
||||
# provided by pkg-config.
|
||||
NIX_CFLAGS_COMPILE="" \
|
||||
NIX_LDFLAGS="" \
|
||||
gcc $(pkg-config --cflags --libs mkl-dynamic-ilp64-seq) test.c -o test
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
touch $out
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
./test
|
||||
'';
|
||||
}
|
||||
Reference in New Issue
Block a user