forked from rarias/bscpkgs
Compare commits
2 Commits
c011f25954
...
fix/parave
| Author | SHA1 | Date | |
|---|---|---|---|
|
f0daa7cf30
|
|||
|
0cb13011c6
|
@@ -1,15 +0,0 @@
|
|||||||
name: CI
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:all:
|
|
||||||
runs-on: native
|
|
||||||
steps:
|
|
||||||
- uses: https://gitea.com/ScMi1/checkout@v1.4
|
|
||||||
- run: nix build -L --no-link --print-out-paths .#bsc-ci.all
|
|
||||||
@@ -17,12 +17,10 @@
|
|||||||
legacyPackages.${system} = pkgs;
|
legacyPackages.${system} = pkgs;
|
||||||
|
|
||||||
hydraJobs = {
|
hydraJobs = {
|
||||||
inherit (self.legacyPackages.${system}.bsc-ci) tests pkgs cross;
|
inherit (self.legacyPackages.${system}.bsc-ci) test pkgs;
|
||||||
};
|
};
|
||||||
|
|
||||||
# propagate nixpkgs lib, so we can do bscpkgs.lib
|
# propagate nixpkgs lib, so we can do bscpkgs.lib
|
||||||
lib = nixpkgs.lib // {
|
inherit (nixpkgs) lib;
|
||||||
bsc.maintainers = import ./maintainers/maintainer-list.nix;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
builtins.mapAttrs (name: value: { email = name + "@bsc.es"; } // value) {
|
|
||||||
abonerib.name = "Aleix Boné";
|
|
||||||
arocanon.name = "Aleix Roca";
|
|
||||||
rarias.name = "Rodrigo Arias";
|
|
||||||
rpenacob.name = "Raúl Peñacoba";
|
|
||||||
}
|
|
||||||
145
overlay.nix
145
overlay.nix
@@ -6,34 +6,10 @@ with final.lib;
|
|||||||
let
|
let
|
||||||
callPackage = final.callPackage;
|
callPackage = final.callPackage;
|
||||||
|
|
||||||
|
mkDeps = name: pkgs: final.runCommand name { }
|
||||||
|
"printf '%s\n' ${toString (collect (x: x ? outPath) pkgs)} > $out";
|
||||||
|
|
||||||
bscPkgs = {
|
bscPkgs = {
|
||||||
|
|
||||||
# override stdenv to add a sentinel to know if a derivation comes
|
|
||||||
# from unfree sources.
|
|
||||||
stdenv = prev.stdenv // {
|
|
||||||
mkDerivation =
|
|
||||||
args:
|
|
||||||
let
|
|
||||||
originalDrv = prev.stdenv.mkDerivation args;
|
|
||||||
checkLicense = l: if builtins.isAttrs l then !(l.free or true) else false;
|
|
||||||
|
|
||||||
licenses = if builtins.isList args.meta.license then args.meta.license else [ args.meta.license ];
|
|
||||||
|
|
||||||
hasUnfreeLicense =
|
|
||||||
if args ? meta && args.meta ? license then builtins.any checkLicense licenses else false;
|
|
||||||
in
|
|
||||||
if hasUnfreeLicense then
|
|
||||||
builtins.traceVerbose "adding nix-support/private to ${originalDrv.name or originalDrv.pname}" (
|
|
||||||
originalDrv.overrideAttrs (old: {
|
|
||||||
postInstall = (old.postInstall or "") + ''
|
|
||||||
mkdir -p $out/nix-support
|
|
||||||
touch $out/nix-support/private
|
|
||||||
'';
|
|
||||||
}))
|
|
||||||
else
|
|
||||||
originalDrv;
|
|
||||||
};
|
|
||||||
|
|
||||||
bench6 = callPackage ./pkgs/bench6/default.nix { };
|
bench6 = callPackage ./pkgs/bench6/default.nix { };
|
||||||
bigotes = callPackage ./pkgs/bigotes/default.nix { };
|
bigotes = callPackage ./pkgs/bigotes/default.nix { };
|
||||||
clangOmpss2 = callPackage ./pkgs/llvm-ompss2/default.nix { };
|
clangOmpss2 = callPackage ./pkgs/llvm-ompss2/default.nix { };
|
||||||
@@ -73,79 +49,58 @@ let
|
|||||||
wxparaver = callPackage ./pkgs/paraver/default.nix { };
|
wxparaver = callPackage ./pkgs/paraver/default.nix { };
|
||||||
};
|
};
|
||||||
|
|
||||||
tests = rec {
|
|
||||||
#hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys
|
|
||||||
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { };
|
|
||||||
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 { };
|
|
||||||
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; };
|
|
||||||
intel2023-ifort = callPackage ./test/compilers/hello-f.nix {
|
|
||||||
stdenv = final.intelPackages_2023.stdenv-ifort;
|
|
||||||
};
|
|
||||||
clangOmpss2-lto = lto.override { stdenv = final.stdenvClangOmpss2Nanos6; };
|
|
||||||
clangOmpss2-asan = asan.override { stdenv = final.stdenvClangOmpss2Nanos6; };
|
|
||||||
clangOmpss2-task = callPackage ./test/compilers/ompss2.nix {
|
|
||||||
stdenv = final.stdenvClangOmpss2Nanos6;
|
|
||||||
};
|
|
||||||
clangNodes-task = callPackage ./test/compilers/ompss2.nix {
|
|
||||||
stdenv = final.stdenvClangOmpss2Nodes;
|
|
||||||
};
|
|
||||||
clangNosvOpenmp-task = callPackage ./test/compilers/clang-openmp.nix {
|
|
||||||
stdenv = final.stdenvClangOmpss2Nodes;
|
|
||||||
};
|
|
||||||
clangNosvOmpv-nosv = callPackage ./test/compilers/clang-openmp-nosv.nix {
|
|
||||||
stdenv = final.stdenvClangOmpss2NodesOmpv;
|
|
||||||
};
|
|
||||||
clangNosvOmpv-ld = callPackage ./test/compilers/clang-openmp-ld.nix {
|
|
||||||
stdenv = final.stdenvClangOmpss2NodesOmpv;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
pkgs = filterAttrs (_: isDerivation) bscPkgs;
|
|
||||||
|
|
||||||
crossTargets = [ "riscv64" ];
|
|
||||||
cross = prev.lib.genAttrs crossTargets (target:
|
|
||||||
final.pkgsCross.${target}.bsc-ci.pkgs
|
|
||||||
);
|
|
||||||
|
|
||||||
buildList = name: paths:
|
|
||||||
final.runCommandLocal name { } ''
|
|
||||||
printf '%s\n' ${toString paths} | tee $out
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildList' = name: paths:
|
|
||||||
final.runCommandLocal name { } ''
|
|
||||||
deps="${toString paths}"
|
|
||||||
cat $deps
|
|
||||||
printf '%s\n' $deps >$out
|
|
||||||
'';
|
|
||||||
|
|
||||||
crossList = builtins.mapAttrs (t: v: buildList t (builtins.attrValues v)) cross;
|
|
||||||
|
|
||||||
pkgsList = buildList "ci-pkgs" (builtins.attrValues pkgs);
|
|
||||||
testList = buildList "ci-tests" (collect isDerivation tests);
|
|
||||||
|
|
||||||
all = buildList' "ci-all" [ pkgsList testList ];
|
|
||||||
|
|
||||||
in bscPkgs // {
|
in bscPkgs // {
|
||||||
|
|
||||||
lib = prev.lib // {
|
|
||||||
bsc.maintainers = import ./maintainers/maintainer-list.nix;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Prevent accidental usage of bsc attribute
|
# Prevent accidental usage of bsc attribute
|
||||||
bsc = throw "the bsc attribute is deprecated, packages are now in the root";
|
bsc = throw "the bsc attribute is deprecated, packages are now in the root";
|
||||||
|
|
||||||
# Internal for our CI tests
|
# Internal for our CI tests
|
||||||
bsc-ci = {
|
bsc-ci = {
|
||||||
inherit pkgs pkgsList;
|
test = rec {
|
||||||
inherit tests testList;
|
#hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys
|
||||||
inherit cross crossList;
|
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { };
|
||||||
inherit all;
|
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 { };
|
||||||
|
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; };
|
||||||
|
intel2023-ifort = callPackage ./test/compilers/hello-f.nix {
|
||||||
|
stdenv = final.intelPackages_2023.stdenv-ifort;
|
||||||
|
};
|
||||||
|
clangOmpss2-lto = lto.override { stdenv = final.stdenvClangOmpss2Nanos6; };
|
||||||
|
clangOmpss2-asan = asan.override { stdenv = final.stdenvClangOmpss2Nanos6; };
|
||||||
|
clangOmpss2-task = callPackage ./test/compilers/ompss2.nix {
|
||||||
|
stdenv = final.stdenvClangOmpss2Nanos6;
|
||||||
|
};
|
||||||
|
clangNodes-task = callPackage ./test/compilers/ompss2.nix {
|
||||||
|
stdenv = final.stdenvClangOmpss2Nodes;
|
||||||
|
};
|
||||||
|
clangNosvOpenmp-task = callPackage ./test/compilers/clang-openmp.nix {
|
||||||
|
stdenv = final.stdenvClangOmpss2Nodes;
|
||||||
|
};
|
||||||
|
clangNosvOmpv-nosv = callPackage ./test/compilers/clang-openmp-nosv.nix {
|
||||||
|
stdenv = final.stdenvClangOmpss2NodesOmpv;
|
||||||
|
};
|
||||||
|
clangNosvOmpv-ld = callPackage ./test/compilers/clang-openmp-ld.nix {
|
||||||
|
stdenv = final.stdenvClangOmpss2NodesOmpv;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pkgs = filterAttrs (_: isDerivation) bscPkgs;
|
||||||
|
|
||||||
|
pkgsList = 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" { }
|
||||||
|
''
|
||||||
|
deps="${toString [ final.bsc-ci.pkgsList final.bsc-ci.tests ]}"
|
||||||
|
cat $deps
|
||||||
|
printf '%s\n' $deps > $out
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, bigotes
|
, bigotes
|
||||||
, cmake
|
, cmake
|
||||||
, clangOmpss2
|
, clangOmpss2
|
||||||
@@ -28,13 +27,10 @@ stdenv.mkDerivation rec {
|
|||||||
rev = gitCommit;
|
rev = gitCommit;
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
cmake
|
|
||||||
clangOmpss2
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
bigotes
|
bigotes
|
||||||
|
cmake
|
||||||
|
clangOmpss2
|
||||||
openmp
|
openmp
|
||||||
openmpv
|
openmpv
|
||||||
nanos6
|
nanos6
|
||||||
@@ -59,12 +55,4 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://gitlab.pm.bsc.es/rarias/bench6";
|
|
||||||
description = "Set of micro-benchmarks for OmpSs-2 and several mini-apps";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, cmake
|
, cmake
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
pname = "bigotes";
|
pname = "bigotes";
|
||||||
version = "9dce13";
|
version = "9dce13";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
@@ -14,13 +13,5 @@ stdenv.mkDerivation {
|
|||||||
rev = "9dce13446a8da30bea552d569d260d54e0188518";
|
rev = "9dce13446a8da30bea552d569d260d54e0188518";
|
||||||
sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE=";
|
sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE=";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ cmake ];
|
buildInputs = [ cmake ];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/rodarima/bigotes";
|
|
||||||
description = "Versatile benchmark tool";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,6 @@
|
|||||||
#, python3Packages
|
#, python3Packages
|
||||||
, installShellFiles
|
, installShellFiles
|
||||||
, symlinkJoin
|
, symlinkJoin
|
||||||
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
@@ -88,7 +87,7 @@ stdenv.mkDerivation rec {
|
|||||||
--enable-sampling
|
--enable-sampling
|
||||||
--with-unwind=${libunwind.dev}
|
--with-unwind=${libunwind.dev}
|
||||||
--with-xml-prefix=${libxml2.dev}
|
--with-xml-prefix=${libxml2.dev}
|
||||||
${lib.optionalString enablePapi "--with-papi=${papi}"}
|
--with-papi=${papi}
|
||||||
${if (mpi != null) then ''--with-mpi=${mpi}''
|
${if (mpi != null) then ''--with-mpi=${mpi}''
|
||||||
else ''--without-mpi''}
|
else ''--without-mpi''}
|
||||||
--without-dyninst)
|
--without-dyninst)
|
||||||
@@ -111,12 +110,4 @@ stdenv.mkDerivation rec {
|
|||||||
# then [ "--enable-openmp" ]
|
# then [ "--enable-openmp" ]
|
||||||
# else []
|
# else []
|
||||||
# );
|
# );
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-performance-tools/extrae";
|
|
||||||
description = "Instrumentation framework to generate execution traces of the most used parallel runtimes";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.lgpl21Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, symlinkJoin
|
, symlinkJoin
|
||||||
, slurm
|
, slurm
|
||||||
@@ -53,12 +52,4 @@ stdenv.mkDerivation rec {
|
|||||||
buildInputs = [ slurm mpiAll rdma-core-all autoconf automake libtool rsync gfortran ];
|
buildInputs = [ slurm mpiAll rdma-core-all autoconf automake libtool rsync gfortran ];
|
||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://pm.bsc.es/gitlab/interoperability/extern/GPI-2";
|
|
||||||
description = "GPI-2 extended for supporting Task-Aware GASPI (TAGASPI) library";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, lib
|
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, rpmextract
|
, rpmextract
|
||||||
, autoPatchelfHook
|
, autoPatchelfHook
|
||||||
@@ -60,12 +59,4 @@ stdenv.mkDerivation rec {
|
|||||||
rm $out/lib/*.dbg
|
rm $out/lib/*.dbg
|
||||||
popd
|
popd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
|
||||||
description = "Intel compiler";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.unfree;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -145,12 +145,4 @@ in
|
|||||||
popd
|
popd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
|
||||||
description = "Intel compiler";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.unfree;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, lib
|
|
||||||
, rpmextract
|
, rpmextract
|
||||||
, gcc
|
, gcc
|
||||||
, zlib
|
, zlib
|
||||||
@@ -102,12 +101,4 @@ stdenv.mkDerivation rec {
|
|||||||
patchelf --set-rpath "$out/lib:${rdma-core}/lib:${libpsm2}/lib" $out/lib/libfabric.so
|
patchelf --set-rpath "$out/lib:${rdma-core}/lib:${libpsm2}/lib" $out/lib/libfabric.so
|
||||||
echo "Patched RPATH in libfabric.so to: $(patchelf --print-rpath $out/lib/libfabric.so)"
|
echo "Patched RPATH in libfabric.so to: $(patchelf --print-rpath $out/lib/libfabric.so)"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
|
||||||
description = "Intel compiler";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.unfree;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,15 +43,11 @@ let
|
|||||||
];
|
];
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
awk -F': ' '\
|
awk -F': ' '\
|
||||||
BEGIN { print "[ {" } \
|
BEGIN { print "[ {" } \
|
||||||
NR>1 && /^Package: / { print "} {"; } \
|
NR>1 && /^Package: / { print "} {"; } \
|
||||||
/: / { printf "%s = \"%s\";\n", $1, $2 } \
|
/: / { printf "%s = \"%s\";\n", $1, $2 } \
|
||||||
END { print "} ]" }' $srcs > $out
|
END { print "} ]" }' $srcs > $out
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -82,26 +78,15 @@ let
|
|||||||
uncompressDebs = debs: name: stdenv.mkDerivation {
|
uncompressDebs = debs: name: stdenv.mkDerivation {
|
||||||
name = name;
|
name = name;
|
||||||
srcs = debs;
|
srcs = debs;
|
||||||
nativeBuildInputs = [ dpkg ];
|
buildInputs = [ dpkg ];
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
for src in $srcs; do
|
for src in $srcs; do
|
||||||
echo "unpacking $src"
|
echo "unpacking $src"
|
||||||
dpkg -x $src $out
|
dpkg -x $src $out
|
||||||
done
|
done
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
joinDebs = name: names:
|
joinDebs = name: names:
|
||||||
@@ -123,22 +108,17 @@ let
|
|||||||
"intel-oneapi-mpi-${version}"
|
"intel-oneapi-mpi-${version}"
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
autoPatchelfHook
|
|
||||||
rsync
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
rsync
|
||||||
libfabric
|
libfabric
|
||||||
zlib
|
zlib
|
||||||
stdenv.cc.cc.lib
|
stdenv.cc.cc.lib
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ autoPatchelfHook ];
|
||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,etc,lib,include}
|
mkdir -p $out/{bin,etc,lib,include}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@@ -155,8 +135,6 @@ let
|
|||||||
# Broken due missing libze_loader.so.1
|
# Broken due missing libze_loader.so.1
|
||||||
rsync -a --exclude IMB-MPI1-GPU bin/ $out/bin/
|
rsync -a --exclude IMB-MPI1-GPU bin/ $out/bin/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
for i in $out/bin/mpi* ; do
|
for i in $out/bin/mpi* ; do
|
||||||
@@ -164,13 +142,6 @@ let
|
|||||||
sed -i "s:I_MPI_SUBSTITUTE_INSTALLDIR:$out:g" "$i"
|
sed -i "s:I_MPI_SUBSTITUTE_INSTALLDIR:$out:g" "$i"
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
intel-tbb = stdenv.mkDerivation rec {
|
intel-tbb = stdenv.mkDerivation rec {
|
||||||
@@ -183,6 +154,7 @@ let
|
|||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
intel-mpi
|
intel-mpi
|
||||||
|
rsync
|
||||||
libffi_3_3
|
libffi_3_3
|
||||||
libelf
|
libelf
|
||||||
libxml2
|
libxml2
|
||||||
@@ -190,18 +162,13 @@ let
|
|||||||
stdenv.cc.cc.lib
|
stdenv.cc.cc.lib
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [ autoPatchelfHook ];
|
||||||
autoPatchelfHook
|
|
||||||
rsync
|
|
||||||
];
|
|
||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
autoPatchelfIgnoreMissingDeps = [ "libhwloc.so.5" ];
|
autoPatchelfIgnoreMissingDeps = [ "libhwloc.so.5" ];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/lib
|
mkdir -p $out/lib
|
||||||
|
|
||||||
cd $src
|
cd $src
|
||||||
@@ -210,16 +177,7 @@ let
|
|||||||
# Libraries
|
# Libraries
|
||||||
rsync -a lib/intel64/gcc4.8/ $out/lib/
|
rsync -a lib/intel64/gcc4.8/ $out/lib/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
intel-compiler-shared = stdenv.mkDerivation rec {
|
intel-compiler-shared = stdenv.mkDerivation rec {
|
||||||
@@ -234,6 +192,7 @@ let
|
|||||||
buildInputs = [
|
buildInputs = [
|
||||||
intel-mpi
|
intel-mpi
|
||||||
intel-tbb
|
intel-tbb
|
||||||
|
rsync
|
||||||
libffi_3_3
|
libffi_3_3
|
||||||
libelf
|
libelf
|
||||||
libxml2
|
libxml2
|
||||||
@@ -242,18 +201,13 @@ let
|
|||||||
stdenv.cc.cc.lib
|
stdenv.cc.cc.lib
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [ autoPatchelfHook ];
|
||||||
autoPatchelfHook
|
|
||||||
rsync
|
|
||||||
];
|
|
||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
autoPatchelfIgnoreMissingDeps = [ "libsycl.so.6" ];
|
autoPatchelfIgnoreMissingDeps = [ "libsycl.so.6" ];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,lib,include}
|
mkdir -p $out/{bin,lib,include}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@@ -278,16 +232,7 @@ let
|
|||||||
rsync -a compiler/include/ $out/include/
|
rsync -a compiler/include/ $out/include/
|
||||||
popd
|
popd
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -309,6 +254,7 @@ let
|
|||||||
buildInputs = [
|
buildInputs = [
|
||||||
intel-mpi
|
intel-mpi
|
||||||
intel-compiler-shared
|
intel-compiler-shared
|
||||||
|
rsync
|
||||||
libffi_3_3
|
libffi_3_3
|
||||||
libelf
|
libelf
|
||||||
libxml2
|
libxml2
|
||||||
@@ -316,18 +262,13 @@ let
|
|||||||
stdenv.cc.cc.lib
|
stdenv.cc.cc.lib
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [ autoPatchelfHook ];
|
||||||
autoPatchelfHook
|
|
||||||
rsync
|
|
||||||
];
|
|
||||||
|
|
||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,lib,include}
|
mkdir -p $out/{bin,lib,include}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@@ -353,18 +294,8 @@ let
|
|||||||
|
|
||||||
# Fix lib_lin
|
# Fix lib_lin
|
||||||
ln -s $out/lib $out/lib_lin
|
ln -s $out/lib $out/lib_lin
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
intel-compiler = stdenv.mkDerivation rec {
|
intel-compiler = stdenv.mkDerivation rec {
|
||||||
@@ -406,6 +337,7 @@ let
|
|||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
intel-compiler-shared
|
intel-compiler-shared
|
||||||
|
rsync
|
||||||
libffi_3_3
|
libffi_3_3
|
||||||
libelf
|
libelf
|
||||||
libxml2
|
libxml2
|
||||||
@@ -413,10 +345,7 @@ let
|
|||||||
stdenv.cc.cc.lib
|
stdenv.cc.cc.lib
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [ autoPatchelfHook ];
|
||||||
autoPatchelfHook
|
|
||||||
rsync
|
|
||||||
];
|
|
||||||
autoPatchelfIgnoreMissingDeps = [ "libtbb.so.12" "libtbbmalloc.so.2" "libze_loader.so.1" ];
|
autoPatchelfIgnoreMissingDeps = [ "libtbb.so.12" "libtbbmalloc.so.2" "libze_loader.so.1" ];
|
||||||
|
|
||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
@@ -424,8 +353,6 @@ let
|
|||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,lib}
|
mkdir -p $out/{bin,lib}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@@ -453,16 +380,7 @@ let
|
|||||||
# Manuals
|
# Manuals
|
||||||
rsync -a documentation/en/man/common/ $out/share/man/
|
rsync -a documentation/en/man/common/ $out/share/man/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
wrapIntel = { cc, mygcc, extraBuild ? "", extraInstall ? "" }:
|
wrapIntel = { cc, mygcc, extraBuild ? "", extraInstall ? "" }:
|
||||||
|
|||||||
@@ -43,36 +43,32 @@ let
|
|||||||
|
|
||||||
source = if (useGit) then git else release;
|
source = if (useGit) then git else release;
|
||||||
|
|
||||||
in stdenv.mkDerivation {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "clang-ompss2";
|
pname = "clang-ompss2";
|
||||||
inherit (source) src version;
|
inherit (source) src version;
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
isClang = true;
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
CC = "clang";
|
CC = "clang";
|
||||||
CXX = "clang++";
|
CXX = "clang++";
|
||||||
|
|
||||||
isClang = true;
|
|
||||||
isClangWithOmpss = true;
|
|
||||||
|
|
||||||
inherit gcc zlib;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
isClangWithOmpss = true;
|
||||||
bash
|
|
||||||
cmake
|
nativeBuildInputs = [ zlib ];
|
||||||
elfutils
|
|
||||||
llvmPackages_latest.lld
|
|
||||||
pkg-config
|
|
||||||
python3
|
|
||||||
perl
|
|
||||||
which
|
|
||||||
zlib
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
which
|
||||||
|
bash
|
||||||
|
python3
|
||||||
|
perl
|
||||||
|
cmake
|
||||||
|
llvmPackages_latest.lld
|
||||||
|
elfutils
|
||||||
libffi
|
libffi
|
||||||
|
pkg-config
|
||||||
zlib
|
zlib
|
||||||
gcc.cc.lib # Required for libstdc++.so.6
|
gcc.cc.lib # Required for libstdc++.so.6
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -22,11 +22,7 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
buildInputs = [ libtirpc ];
|
buildInputs = [ libtirpc ];
|
||||||
patches = [
|
patches = [ ./fix-install.patch ./gcc-14.patch ];
|
||||||
./fix-install.patch
|
|
||||||
./gcc-14.patch
|
|
||||||
./fix-cross.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
@@ -39,8 +35,6 @@ stdenv.mkDerivation rec {
|
|||||||
CFLAGS=-Wno-implicit-int
|
CFLAGS=-Wno-implicit-int
|
||||||
CPPFLAGS=-I${libtirpc.dev}/include/tirpc
|
CPPFLAGS=-I${libtirpc.dev}/include/tirpc
|
||||||
LDFLAGS=-ltirpc
|
LDFLAGS=-ltirpc
|
||||||
CC=${stdenv.cc.targetPrefix}cc
|
|
||||||
AR=${stdenv.cc.targetPrefix}ar
|
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
diff --git a/src/Makefile b/src/Makefile
|
|
||||||
index 2555014..356eeb3 100644
|
|
||||||
--- a/src/Makefile
|
|
||||||
+++ b/src/Makefile
|
|
||||||
@@ -36,7 +36,7 @@ SHELL=/bin/sh
|
|
||||||
|
|
||||||
CC=`../scripts/compiler`
|
|
||||||
MAKE=`../scripts/make`
|
|
||||||
-AR=ar
|
|
||||||
+AR?=ar
|
|
||||||
ARCREATE=cr
|
|
||||||
|
|
||||||
# base of installation location
|
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, nanos6
|
, nanos6
|
||||||
@@ -33,20 +32,17 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
buildInputs = [
|
||||||
autoreconfHook
|
autoreconfHook
|
||||||
bison
|
nanos6
|
||||||
flex
|
gperf
|
||||||
python3
|
python3
|
||||||
gfortran
|
gfortran
|
||||||
pkg-config
|
pkg-config
|
||||||
gperf
|
|
||||||
gcc
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
nanos6
|
|
||||||
sqlite.dev
|
sqlite.dev
|
||||||
|
bison
|
||||||
|
flex
|
||||||
|
gcc
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [ ./intel.patch ];
|
patches = [ ./intel.patch ];
|
||||||
@@ -63,12 +59,4 @@ stdenv.mkDerivation rec {
|
|||||||
# Fails with "memory exhausted" with bison 3.7.1
|
# Fails with "memory exhausted" with bison 3.7.1
|
||||||
# "--enable-bison-regeneration"
|
# "--enable-bison-regeneration"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-pm/mcxx";
|
|
||||||
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
|
||||||
maintainers = with maintainers.bsc; [ rpenacob ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, nanos6
|
, nanos6
|
||||||
@@ -58,12 +57,4 @@ stdenv.mkDerivation rec {
|
|||||||
# Fails with "memory exhausted" with bison 3.7.1
|
# Fails with "memory exhausted" with bison 3.7.1
|
||||||
# "--enable-bison-regeneration"
|
# "--enable-bison-regeneration"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-pm/mcxx";
|
|
||||||
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
|
||||||
maintainers = with maintainers.bsc; [ rpenacob ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, lib
|
|
||||||
, fetchgit
|
, fetchgit
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, nanos6
|
, nanos6
|
||||||
@@ -57,12 +56,4 @@ stdenv.mkDerivation rec {
|
|||||||
#preBuild = ''
|
#preBuild = ''
|
||||||
# make generate_builtins_ia32 GXX_X86_BUILTINS=${gcc}/bin/g++
|
# make generate_builtins_ia32 GXX_X86_BUILTINS=${gcc}/bin/g++
|
||||||
#'';
|
#'';
|
||||||
#
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-pm/mcxx";
|
|
||||||
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
|
|||||||
url = "https://github.com/pmodels/mpich/blob/v${version}/COPYRIGHT";
|
url = "https://github.com/pmodels/mpich/blob/v${version}/COPYRIGHT";
|
||||||
fullName = "MPICH license (permissive)";
|
fullName = "MPICH license (permissive)";
|
||||||
};
|
};
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = [ ];
|
||||||
platforms = platforms.linux ++ platforms.darwin;
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,7 +16,6 @@
|
|||||||
, jemallocNanos6 ? null
|
, jemallocNanos6 ? null
|
||||||
, cachelineBytes ? 64
|
, cachelineBytes ? 64
|
||||||
, enableGlibcxxDebug ? false
|
, enableGlibcxxDebug ? false
|
||||||
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
|
|
||||||
, useGit ? false
|
, useGit ? false
|
||||||
, gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6"
|
, gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6"
|
||||||
, gitBranch ? "master"
|
, gitBranch ? "master"
|
||||||
@@ -48,8 +47,6 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
source = if (useGit) then git else release;
|
source = if (useGit) then git else release;
|
||||||
|
|
||||||
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
|
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (source // {
|
stdenv.mkDerivation (source // {
|
||||||
pname = "nanos6";
|
pname = "nanos6";
|
||||||
@@ -74,11 +71,9 @@ in
|
|||||||
"--disable-all-instrumentations"
|
"--disable-all-instrumentations"
|
||||||
"--enable-ovni-instrumentation"
|
"--enable-ovni-instrumentation"
|
||||||
"--with-ovni=${ovni}"
|
"--with-ovni=${ovni}"
|
||||||
"--with-boost=${boost.dev}"
|
|
||||||
] ++
|
] ++
|
||||||
(optional enableJemalloc "--with-jemalloc=${jemallocNanos6}") ++
|
(optional enableJemalloc "--with-jemalloc=${jemallocNanos6}") ++
|
||||||
(optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG") ++
|
(optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG");
|
||||||
(optional isCross "--with-symbol-resolution=ifunc");
|
|
||||||
|
|
||||||
postConfigure = lib.optionalString (!enableDebug) ''
|
postConfigure = lib.optionalString (!enableDebug) ''
|
||||||
# Disable debug
|
# Disable debug
|
||||||
@@ -93,23 +88,17 @@ in
|
|||||||
dontStrip = enableDebug;
|
dontStrip = enableDebug;
|
||||||
separateDebugInfo = true;
|
separateDebugInfo = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
buildInputs = [
|
||||||
autoconf
|
autoconf
|
||||||
automake
|
automake
|
||||||
libtool
|
libtool
|
||||||
pkg-config
|
pkg-config
|
||||||
|
|
||||||
# TODO: papi_version is needed for configure:
|
|
||||||
# ./configure: line 27378: papi_version: command not found
|
|
||||||
# This probably breaks cross-compilation
|
|
||||||
] ++ lib.optionals enablePapi [ papi ];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
boost
|
boost
|
||||||
numactl
|
numactl
|
||||||
hwloc
|
hwloc
|
||||||
|
papi
|
||||||
ovni
|
ovni
|
||||||
] ++ lib.optionals enablePapi [ papi ];
|
];
|
||||||
|
|
||||||
# Create a script that sets NANOS6_HOME
|
# Create a script that sets NANOS6_HOME
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
@@ -121,7 +110,6 @@ in
|
|||||||
homepage = "https://github.com/bsc-pm/nanos6";
|
homepage = "https://github.com/bsc-pm/nanos6";
|
||||||
description = "Nanos6 runtime for OmpSs-2" +
|
description = "Nanos6 runtime for OmpSs-2" +
|
||||||
optionalString (enableDebug) " (with debug symbols)";
|
optionalString (enableDebug) " (with debug symbols)";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ jemalloc, lib }:
|
{ jemalloc }:
|
||||||
|
|
||||||
jemalloc.overrideAttrs (old: {
|
jemalloc.overrideAttrs (old: {
|
||||||
configureFlags = old.configureFlags ++ [
|
configureFlags = old.configureFlags ++ [
|
||||||
@@ -8,6 +8,5 @@ jemalloc.overrideAttrs (old: {
|
|||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
meta = old.meta // {
|
meta = old.meta // {
|
||||||
description = old.meta.description + " (for Nanos6)";
|
description = old.meta.description + " (for Nanos6)";
|
||||||
maintainers = old.meta.maintainers // (with lib.maintainers.bsc; [ rarias ]);
|
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, bashInteractive
|
, bashInteractive
|
||||||
, busybox
|
, busybox
|
||||||
, nix
|
, nix
|
||||||
@@ -87,13 +86,5 @@ stdenv.mkDerivation rec {
|
|||||||
mkdir -p $out/share
|
mkdir -p $out/share
|
||||||
cp ${nix_conf} $out/share/nix.conf
|
cp ${nix_conf} $out/share/nix.conf
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = null;
|
|
||||||
description = "nix bubblewrap wrapper";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus; # TODO: license?
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, glibc
|
, glibc
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@@ -16,12 +15,4 @@ stdenv.mkDerivation rec {
|
|||||||
makeFlags = [ "DESTDIR=$(out)" ];
|
makeFlags = [ "DESTDIR=$(out)" ];
|
||||||
preBuild = "env";
|
preBuild = "env";
|
||||||
dontPatchShebangs = true;
|
dontPatchShebangs = true;
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://gitlab.pm.bsc.es/rarias/nixtools";
|
|
||||||
description = "nix bubblewrap wrapper";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus; # TODO: license?
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -81,12 +81,4 @@ in
|
|||||||
passthru = {
|
passthru = {
|
||||||
inherit nosv;
|
inherit nosv;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://gitlab.bsc.es/nos-v/nodes";
|
|
||||||
description = "Runtime library designed to work on top of the nOS-V runtime";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
, numactl
|
, numactl
|
||||||
, hwloc
|
, hwloc
|
||||||
, papi
|
, papi
|
||||||
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
|
, enablePapi ? true
|
||||||
, cacheline ? 64 # bits
|
, cacheline ? 64 # bits
|
||||||
, ovni ? null
|
, ovni ? null
|
||||||
, useGit ? false
|
, useGit ? false
|
||||||
@@ -59,12 +59,4 @@ in
|
|||||||
hwloc
|
hwloc
|
||||||
ovni
|
ovni
|
||||||
] ++ lib.optionals enablePapi [ papi ];
|
] ++ lib.optionals enablePapi [ papi ];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://gitlab.bsc.es/nos-v/nos-v";
|
|
||||||
description = "Tasking library enables the co-execution of multiple applications with system-wide scheduling and a centralized management of resources";
|
|
||||||
maintainers = with maintainers.bsc; [ abonerib ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
nativeBuildInputs = [ mpiAll ];
|
|
||||||
buildInputs = [ mpiAll ];
|
buildInputs = [ mpiAll ];
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
@@ -41,7 +40,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "OSU Micro-Benchmarks";
|
description = "OSU Micro-Benchmarks";
|
||||||
homepage = "http://mvapich.cse.ohio-state.edu/benchmarks/";
|
homepage = http://mvapich.cse.ohio-state.edu/benchmarks/;
|
||||||
maintainers = [ ];
|
maintainers = [ ];
|
||||||
platforms = lib.platforms.all;
|
platforms = lib.platforms.all;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -13,6 +13,8 @@
|
|||||||
, useMpi ? (stdenv.buildPlatform.canExecute stdenv.hostPlatform)
|
, useMpi ? (stdenv.buildPlatform.canExecute stdenv.hostPlatform)
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
release = rec {
|
release = rec {
|
||||||
version = "1.12.0";
|
version = "1.12.0";
|
||||||
@@ -43,7 +45,7 @@ in
|
|||||||
postPatch = ''
|
postPatch = ''
|
||||||
patchShebangs --build test/
|
patchShebangs --build test/
|
||||||
'';
|
'';
|
||||||
nativeBuildInputs = [ cmake ] ++ lib.optionals (useMpi) [ mpi ];
|
nativeBuildInputs = [ cmake ];
|
||||||
buildInputs = lib.optionals (useMpi) [ mpi ];
|
buildInputs = lib.optionals (useMpi) [ mpi ];
|
||||||
cmakeBuildType = if (enableDebug) then "Debug" else "Release";
|
cmakeBuildType = if (enableDebug) then "Debug" else "Release";
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
@@ -55,12 +57,4 @@ in
|
|||||||
doCheck = true;
|
doCheck = true;
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://ovni.readthedocs.io";
|
|
||||||
description = "Obtuse but Versatile Nanoscale Instrumentation";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
{
|
{ stdenv
|
||||||
stdenv
|
|
||||||
, lib
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, boost
|
, boost
|
||||||
@@ -13,14 +11,17 @@
|
|||||||
, openssl
|
, openssl
|
||||||
, glibcLocales
|
, glibcLocales
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
|
|
||||||
|
, enableDebug ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
wx = wxGTK32;
|
wx = wxGTK32;
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "wxparaver";
|
|
||||||
version = "4.12.0";
|
version = "4.12.0";
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "wxparaver";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bsc-performance-tools";
|
owner = "bsc-performance-tools";
|
||||||
@@ -37,21 +38,26 @@ stdenv.mkDerivation rec {
|
|||||||
./fix-boost-87.patch
|
./fix-boost-87.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
|
||||||
|
|
||||||
# Fix the PARAVER_HOME variable
|
# Fix the PARAVER_HOME variable
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i 's@^PARAVER_HOME=.*$@PARAVER_HOME='$out'@g' docs/wxparaver
|
sed -i 's@^PARAVER_HOME=.*$@PARAVER_HOME='$out'@g' docs/wxparaver
|
||||||
sed -i '1aexport LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"' docs/wxparaver
|
sed -i '1aexport LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"' docs/wxparaver
|
||||||
'';
|
'';
|
||||||
|
|
||||||
dontStrip = true;
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
preConfigure = ''
|
hardeningDisable = [ "all" ];
|
||||||
export CFLAGS="-O3"
|
|
||||||
export CXXFLAGS="-O3"
|
dontStrip = true;
|
||||||
'';
|
|
||||||
|
env =
|
||||||
|
let
|
||||||
|
flags = if enableDebug then "-ggdb -Og" else "-O3";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
CFLAGS = flags;
|
||||||
|
CXXFLAGS = flags;
|
||||||
|
};
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--with-boost=${boost}"
|
"--with-boost=${boost}"
|
||||||
@@ -69,11 +75,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
boost
|
boost
|
||||||
libxml2.dev
|
libxml2
|
||||||
xml2
|
xml2
|
||||||
wx
|
wx
|
||||||
paraverKernel
|
paraverKernel
|
||||||
openssl.dev
|
openssl
|
||||||
];
|
];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
@@ -89,12 +95,4 @@ stdenv.mkDerivation rec {
|
|||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
mv $out/share/doc/wxparaver_help_contents/man $out/share/man/man1
|
mv $out/share/doc/wxparaver_help_contents/man $out/share/man/man1
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-performance-tools/wxparaver";
|
|
||||||
description = "Trace-based visualization and analysis tool designed to study quantitative detailed metrics and obtain qualitative knowledge of the performance of applications, libraries, processors and whole architectures";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.lgpl21Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{
|
{ stdenv
|
||||||
stdenv
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, boost
|
, boost
|
||||||
@@ -9,11 +8,16 @@
|
|||||||
, automake
|
, automake
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, zlib
|
, zlib
|
||||||
|
|
||||||
|
, enableDebug ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
pname = "paraver-kernel";
|
|
||||||
version = "4.12.0";
|
version = "4.12.0";
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "paraver-kernel";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bsc-performance-tools";
|
owner = "bsc-performance-tools";
|
||||||
@@ -34,10 +38,14 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
preConfigure = ''
|
env =
|
||||||
export CFLAGS="-O3 -DPARALLEL_ENABLED"
|
let
|
||||||
export CXXFLAGS="-O3 -DPARALLEL_ENABLED"
|
flags = "-DPARALLEL_ENABLED " + (if enableDebug then "-ggdb -Og" else "-O3");
|
||||||
'';
|
in
|
||||||
|
{
|
||||||
|
CFLAGS = flags;
|
||||||
|
CXXFLAGS = flags;
|
||||||
|
};
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--with-boost=${boost}"
|
"--with-boost=${boost}"
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, ovni
|
, ovni
|
||||||
@@ -19,21 +18,9 @@ stdenv.mkDerivation rec {
|
|||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
configureFlags = [ "--with-ovni=${ovni}" ];
|
configureFlags = [ "--with-ovni=${ovni}" ];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
autoreconfHook
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
autoreconfHook
|
||||||
ovni
|
ovni
|
||||||
mpi
|
mpi
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-pm/sonar";
|
|
||||||
description = "Set of runtime libraries which instrument parallel programming models through the ovni instrumentation library";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.mit;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, lib
|
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, automake
|
, automake
|
||||||
, autoconf
|
, autoconf
|
||||||
@@ -56,12 +55,4 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-pm/tagaspi";
|
|
||||||
description = "Task-Aware GASPI";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
, gnumake
|
, gnumake
|
||||||
, boost
|
, boost
|
||||||
, mpi
|
, mpi
|
||||||
|
, gcc
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, enableOvni ? true
|
, enableOvni ? true
|
||||||
, ovni ? null
|
, ovni ? null
|
||||||
@@ -40,33 +41,22 @@ let
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
source = if (useGit) then git else release;
|
source = if (useGit) then git else release;
|
||||||
in stdenv.mkDerivation {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "tampi";
|
pname = "tampi";
|
||||||
inherit (source) src version;
|
inherit (source) src version;
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
separateDebugInfo = true;
|
separateDebugInfo = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
autoconf
|
|
||||||
automake
|
|
||||||
autoreconfHook
|
|
||||||
gnumake
|
|
||||||
libtool
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
autoreconfHook
|
||||||
|
automake
|
||||||
|
autoconf
|
||||||
|
libtool
|
||||||
|
gnumake
|
||||||
boost
|
boost
|
||||||
mpi
|
mpi
|
||||||
|
gcc
|
||||||
] ++ optional (enableOvni) ovni;
|
] ++ optional (enableOvni) ovni;
|
||||||
configureFlags = optional (enableOvni) "--with-ovni=${ovni}";
|
configureFlags = optional (enableOvni) "--with-ovni=${ovni}";
|
||||||
dontDisableStatic = true;
|
dontDisableStatic = true;
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://github.com/bsc-pm/tampi";
|
|
||||||
description = "Task-Aware MPI";
|
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
license = licenses.gpl3Plus;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user