Port clang and intel packages and enable tests

This commit is contained in:
Rodrigo Arias 2023-09-28 09:15:34 +02:00
parent ce7238c780
commit 8dbd1a3c34

View File

@ -356,6 +356,9 @@ let
callPackage = super.callPackage; callPackage = super.callPackage;
in { in {
# Prevent accidental usage of bsc attribute
bsc = throw "the bsc attribute is deprecated, packages are now in the root";
ovni = callPackage ./bsc/ovni/default.nix { }; ovni = callPackage ./bsc/ovni/default.nix { };
ovniGit = self.ovni.override { useGit = true; }; ovniGit = self.ovni.override { useGit = true; };
nanos6 = callPackage ./bsc/nanos6/default.nix { }; nanos6 = callPackage ./bsc/nanos6/default.nix { };
@ -378,57 +381,60 @@ in {
sonar = callPackage ./bsc/sonar/default.nix { }; sonar = callPackage ./bsc/sonar/default.nix { };
clangOmpss2Unwrapped = callPackage ./bsc/llvm-ompss2/clang.nix { }; clangOmpss2Unwrapped = callPackage ./bsc/llvm-ompss2/clang.nix { };
clangOmpss2 = callPackage ./bsc/llvm-ompss2/default.nix { }; clangOmpss2 = callPackage ./bsc/llvm-ompss2/default.nix { };
stdenvClangOmpss2 = self.stdenv.override { clangOmpss2Nanos6 = callPackage ./bsc/llvm-ompss2/default.nix {
cc = self.clangOmpss2; ompss2rt = self.nanos6;
};
clangOmpss2Nodes = callPackage ./bsc/llvm-ompss2/default.nix {
ompss2rt = self.nodes;
};
stdenvClangOmpss2Nanos6 = self.stdenv.override {
cc = self.clangOmpss2Nanos6;
allowedRequisites = null; allowedRequisites = null;
}; };
stdenvClangOmpss2Nodes = self.stdenv.override {
cc = self.clangOmpss2Nodes;
allowedRequisites = null;
};
# Intel packages
intelPackages_2023 = callPackage ./bsc/intel-oneapi/2023.nix {
libffi = self.libffi_3_3;
};
# Internal for our tests # Internal for our tests
bsc-ci = { bsc-ci = {
pkgs = super.runCommand "ci-pkgs" { pkgs = super.runCommand "ci-pkgs" {
buildInputs = with self; [ buildInputs = with self; [
ovni nanos6 nosv nodes nix-wrap osumb wxparaver tampi sonar ovni nanos6 nosv nodes nix-wrap osumb wxparaver tampi sonar
clangOmpss2 bench6 clangOmpss2Nanos6 bench6 intelPackages_2023.icx
]; ];
} "printf '%s\n' $buildInputs > $out"; } "printf '%s\n' $buildInputs > $out";
test = rec { test = rec {
hello-c = callPackage ./test/compilers/hello-c.nix { }; hello-c = callPackage ./test/compilers/hello-c.nix { };
hello-cpp = callPackage ./test/compilers/hello-cpp.nix { }; hello-cpp = callPackage ./test/compilers/hello-cpp.nix { };
hello-f = callPackage ./test/compilers/hello-f.nix { };
lto = callPackage ./test/compilers/lto.nix { }; lto = callPackage ./test/compilers/lto.nix { };
asan = callPackage ./test/compilers/asan.nix { }; asan = callPackage ./test/compilers/asan.nix { };
#intel2023.icx.c = hello-c.override { intel2023-icx-c = hello-c.override { stdenv = self.intelPackages_2023.stdenv; };
# stdenv = bsc.intel2023.stdenv; intel2023-icc-c = hello-c.override { stdenv = self.intelPackages_2023.stdenv-icc; };
#}; intel2023-icx-cpp = hello-cpp.override { stdenv = self.intelPackages_2023.stdenv; };
#intel2023.icc.c = hello-c.override { intel2023-icc-cpp = hello-cpp.override { stdenv = self.intelPackages_2023.stdenv-icc; };
# stdenv = bsc.intel2023.stdenv-icc; intel2023-ifort = callPackage ./test/compilers/hello-f.nix {
#}; stdenv = self.intelPackages_2023.stdenv-ifort;
#intel2023.icx.cpp = hello-cpp.override { };
# stdenv = bsc.intel2023.stdenv; clangOmpss2-lto = lto.override { stdenv = self.stdenvClangOmpss2Nanos6; };
#}; clangOmpss2-asan = asan.override { stdenv = self.stdenvClangOmpss2Nanos6; };
#intel2023.icc.cpp = hello-cpp.override { clangOmpss2-task = callPackage ./test/compilers/ompss2.nix {
# stdenv = bsc.intel2023.stdenv-icc; stdenv = self.stdenvClangOmpss2Nanos6;
#}; };
#intel2023.ifort = hello-f.override { clangNodes-task = callPackage ./test/compilers/ompss2.nix {
# stdenv = bsc.intel2023.stdenv-ifort; stdenv = self.stdenvClangOmpss2Nodes;
#};
clangOmpss2.lto = lto.override { stdenv = self.stdenvClangOmpss2; };
clangOmpss2.asan = asan.override { stdenv = self.stdenvClangOmpss2; };
clangOmpss2.task = callPackage ./test/compilers/ompss2.nix {
stdenv = self.stdenvClangOmpss2;
}; };
#clangNodes.task = callPackage ./test/compilers/ompss2.nix {
# stdenv = bsc.stdenvClangNodes;
#};
}; };
all = super.runCommand "ci-all" { all = super.runCommand "ci-all" {
buildInputs = with self.bsc-ci.test; [ buildInputs = self.bsc-ci.pkgs.buildInputs ++
clangOmpss2.lto (attrValues self.bsc-ci.test);
clangOmpss2.task
clangOmpss2.asan
];
} "printf '%s\n' $buildInputs > $out"; } "printf '%s\n' $buildInputs > $out";
}; };
} }