2023-10-02 10:38:49 +02:00
|
|
|
final: /* Future last stage */
|
|
|
|
prev: /* Previous stage */
|
2020-09-16 12:22:55 +02:00
|
|
|
|
2023-10-02 10:38:49 +02:00
|
|
|
with final.lib;
|
2020-11-17 10:49:45 +01:00
|
|
|
|
2020-09-16 12:22:55 +02:00
|
|
|
let
|
2023-10-02 10:38:49 +02:00
|
|
|
callPackage = final.callPackage;
|
2020-09-16 12:22:55 +02:00
|
|
|
|
2023-10-02 10:38:49 +02:00
|
|
|
mkDeps = name: pkgs: final.runCommand name { }
|
|
|
|
"printf '%s\n' ${toString (collect (x: x ? outPath) pkgs)} > $out";
|
2020-12-03 18:06:51 +01:00
|
|
|
|
2023-10-02 10:38:49 +02:00
|
|
|
bscPkgs = {
|
2023-10-06 14:24:57 +02:00
|
|
|
bench6 = callPackage ./pkgs/bench6/default.nix { };
|
2023-10-02 10:45:10 +02:00
|
|
|
clangOmpss2 = callPackage ./pkgs/llvm-ompss2/default.nix { };
|
|
|
|
clangOmpss2Nanos6 = callPackage ./pkgs/llvm-ompss2/default.nix { ompss2rt = final.nanos6; };
|
2023-12-05 11:58:04 +01:00
|
|
|
clangOmpss2Nodes = callPackage ./pkgs/llvm-ompss2/default.nix { ompss2rt = final.nodes; openmp = final.openmp; };
|
|
|
|
clangOmpss2NodesOmpv = callPackage ./pkgs/llvm-ompss2/default.nix { ompss2rt = final.nodes; openmp = final.openmpv; };
|
2023-10-02 10:45:10 +02:00
|
|
|
clangOmpss2Unwrapped = callPackage ./pkgs/llvm-ompss2/clang.nix { };
|
|
|
|
#extrae = callPackage ./pkgs/extrae/default.nix { }; # Broken and outdated
|
2023-10-06 14:24:57 +02:00
|
|
|
gpi-2 = callPackage ./pkgs/gpi-2/default.nix { };
|
2023-10-02 10:45:10 +02:00
|
|
|
intelPackages_2023 = callPackage ./pkgs/intel-oneapi/2023.nix { };
|
|
|
|
jemallocNanos6 = callPackage ./pkgs/nanos6/jemalloc.nix { };
|
2023-10-02 11:05:55 +02:00
|
|
|
#lmbench = callPackage ./pkgs/lmbench/default.nix { }; # Broken
|
2023-10-02 10:45:10 +02:00
|
|
|
mcxx = callPackage ./pkgs/mcxx/default.nix { };
|
|
|
|
nanos6 = callPackage ./pkgs/nanos6/default.nix { };
|
2023-10-02 10:38:49 +02:00
|
|
|
nanos6Debug = final.nanos6.override { enableDebug = true; };
|
2023-10-06 14:24:57 +02:00
|
|
|
nixtools = callPackage ./pkgs/nixtools/default.nix { };
|
2023-11-20 19:32:46 +01:00
|
|
|
# Broken because of pkgsStatic.libcap
|
|
|
|
# See: https://github.com/NixOS/nixpkgs/pull/268791
|
|
|
|
#nix-wrap = callPackage ./pkgs/nix-wrap/default.nix { };
|
2023-10-02 10:45:10 +02:00
|
|
|
nodes = callPackage ./pkgs/nodes/default.nix { };
|
|
|
|
nosv = callPackage ./pkgs/nosv/default.nix { };
|
2023-12-05 11:58:04 +01:00
|
|
|
openmp = callPackage ./pkgs/llvm-ompss2/openmp.nix { monorepoSrc = final.clangOmpss2Unwrapped.src; version = final.clangOmpss2Unwrapped.version; };
|
2024-01-12 17:28:22 +01:00
|
|
|
openmpv = final.openmp.override { enableNosv = true; enableOvni = true; };
|
2023-10-02 10:45:10 +02:00
|
|
|
osumb = callPackage ./pkgs/osu/default.nix { };
|
|
|
|
ovni = callPackage ./pkgs/ovni/default.nix { };
|
2023-10-02 10:38:49 +02:00
|
|
|
ovniGit = final.ovni.override { useGit = true; };
|
2023-10-02 10:45:10 +02:00
|
|
|
paraverKernel = callPackage ./pkgs/paraver/kernel.nix { };
|
2023-10-02 11:05:55 +02:00
|
|
|
#pscom = callPackage ./pkgs/parastation/pscom.nix { }; # Unmaintaned
|
|
|
|
#psmpi = callPackage ./pkgs/parastation/psmpi.nix { }; # Unmaintaned
|
2023-10-06 14:24:57 +02:00
|
|
|
sonar = callPackage ./pkgs/sonar/default.nix { };
|
2023-10-04 12:43:47 +02:00
|
|
|
stdenvClangOmpss2 = final.stdenv.override { cc = final.clangOmpss2; allowedRequisites = null; };
|
2023-10-02 10:38:49 +02:00
|
|
|
stdenvClangOmpss2Nanos6 = final.stdenv.override { cc = final.clangOmpss2Nanos6; allowedRequisites = null; };
|
|
|
|
stdenvClangOmpss2Nodes = final.stdenv.override { cc = final.clangOmpss2Nodes; allowedRequisites = null; };
|
2023-12-05 11:58:04 +01:00
|
|
|
stdenvClangOmpss2NodesOmpv = final.stdenv.override { cc = final.clangOmpss2NodesOmpv; allowedRequisites = null; };
|
2023-10-06 14:24:57 +02:00
|
|
|
tagaspi = callPackage ./pkgs/tagaspi/default.nix { };
|
2023-10-02 10:45:10 +02:00
|
|
|
tampi = callPackage ./pkgs/tampi/default.nix { };
|
|
|
|
wxparaver = callPackage ./pkgs/paraver/default.nix { };
|
2023-10-02 10:38:49 +02:00
|
|
|
};
|
2023-09-19 10:33:32 +02:00
|
|
|
|
2023-10-02 10:38:49 +02:00
|
|
|
in bscPkgs // {
|
2023-09-28 09:15:34 +02:00
|
|
|
# Prevent accidental usage of bsc attribute
|
|
|
|
bsc = throw "the bsc attribute is deprecated, packages are now in the root";
|
|
|
|
|
2023-10-02 10:38:49 +02:00
|
|
|
# Internal for our CI tests
|
2023-09-19 10:33:32 +02:00
|
|
|
bsc-ci = {
|
2023-03-03 18:18:51 +01:00
|
|
|
test = rec {
|
2023-10-02 11:05:55 +02:00
|
|
|
#hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys
|
2023-10-02 10:38:49 +02:00
|
|
|
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { };
|
2023-09-19 10:33:32 +02:00
|
|
|
hello-c = callPackage ./test/compilers/hello-c.nix { };
|
|
|
|
hello-cpp = callPackage ./test/compilers/hello-cpp.nix { };
|
|
|
|
lto = callPackage ./test/compilers/lto.nix { };
|
|
|
|
asan = callPackage ./test/compilers/asan.nix { };
|
2023-10-02 10:38:49 +02:00
|
|
|
intel2023-icx-c = hello-c.override { stdenv = final.intelPackages_2023.stdenv; };
|
|
|
|
intel2023-icc-c = hello-c.override { stdenv = final.intelPackages_2023.stdenv-icc; };
|
|
|
|
intel2023-icx-cpp = hello-cpp.override { stdenv = final.intelPackages_2023.stdenv; };
|
|
|
|
intel2023-icc-cpp = hello-cpp.override { stdenv = final.intelPackages_2023.stdenv-icc; };
|
2023-09-28 09:15:34 +02:00
|
|
|
intel2023-ifort = callPackage ./test/compilers/hello-f.nix {
|
2023-10-02 10:38:49 +02:00
|
|
|
stdenv = final.intelPackages_2023.stdenv-ifort;
|
2023-09-28 09:15:34 +02:00
|
|
|
};
|
2023-10-02 10:38:49 +02:00
|
|
|
clangOmpss2-lto = lto.override { stdenv = final.stdenvClangOmpss2Nanos6; };
|
|
|
|
clangOmpss2-asan = asan.override { stdenv = final.stdenvClangOmpss2Nanos6; };
|
2023-09-28 09:15:34 +02:00
|
|
|
clangOmpss2-task = callPackage ./test/compilers/ompss2.nix {
|
2023-10-02 10:38:49 +02:00
|
|
|
stdenv = final.stdenvClangOmpss2Nanos6;
|
2023-09-28 09:15:34 +02:00
|
|
|
};
|
|
|
|
clangNodes-task = callPackage ./test/compilers/ompss2.nix {
|
2023-10-02 10:38:49 +02:00
|
|
|
stdenv = final.stdenvClangOmpss2Nodes;
|
2023-03-13 16:16:34 +01:00
|
|
|
};
|
2023-10-31 10:36:21 +01:00
|
|
|
clangNosvOpenmp-task = callPackage ./test/compilers/clang-openmp.nix {
|
2023-12-01 15:11:10 +01:00
|
|
|
stdenv = final.stdenvClangOmpss2Nodes;
|
2023-10-31 10:36:21 +01:00
|
|
|
};
|
2023-12-05 11:58:04 +01:00
|
|
|
clangNosvOmpv-nosv = callPackage ./test/compilers/clang-openmp-nosv.nix {
|
|
|
|
stdenv = final.stdenvClangOmpss2NodesOmpv;
|
2023-11-23 15:23:15 +01:00
|
|
|
};
|
2023-12-05 11:58:04 +01:00
|
|
|
clangNosvOmpv-ld = callPackage ./test/compilers/clang-openmp-ld.nix {
|
|
|
|
stdenv = final.stdenvClangOmpss2NodesOmpv;
|
2023-12-01 15:12:05 +01:00
|
|
|
};
|
2021-04-06 13:02:45 +02:00
|
|
|
};
|
2023-03-02 11:15:25 +01:00
|
|
|
|
2023-10-02 10:38:49 +02:00
|
|
|
pkgs = final.runCommand "ci-pkgs" { }
|
|
|
|
"printf '%s\n' ${toString (collect isDerivation bscPkgs)} > $out";
|
|
|
|
|
|
|
|
tests = final.runCommand "ci-tests" { }
|
|
|
|
"printf '%s\n' ${toString (collect isDerivation final.bsc-ci.test)} > $out";
|
|
|
|
|
|
|
|
all = final.runCommand "ci-all" { }
|
2023-10-02 10:52:04 +02:00
|
|
|
''
|
|
|
|
deps="${toString [ final.bsc-ci.pkgs final.bsc-ci.tests ]}"
|
|
|
|
cat $deps
|
|
|
|
printf '%s\n' $deps > $out
|
|
|
|
'';
|
2023-09-19 10:33:32 +02:00
|
|
|
};
|
|
|
|
}
|