bscpkgs/test/compilers/clang-openmp.nix
Aleix Roca Nonell f605f8e5e4 Add clang openmp test for CI
Reviewed-By: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Tested-By: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2023-10-31 16:52:55 +01:00

47 lines
693 B
Nix

{
stdenv
, writeText
}:
let
hello_c = writeText "hello.c" ''
int main(int argc, char *argv[])
{
int test = 1;
#pragma omp parallel
#pragma omp single
#pragma omp task
test = 0;
return test;
}
'';
in stdenv.mkDerivation {
pname = "openmp-test";
version = "1.0.0";
dontUnpack = true;
dontConfigure = true;
# nOS-V requires access to /sys/devices to request NUMA information. It will
# fail to run otherwise, so we disable the sandbox for this test.
__noChroot = true;
buildPhase = ''
set -x
cp ${hello_c} hello.c
clang -fopenmp ./hello.c -o hello
./hello
set +x
'';
installPhase = ''
touch $out
'';
}