Compare commits
	
		
			9 Commits
		
	
	
		
			80b42c302e
			...
			c011f25954
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| c011f25954 | |||
| 19e865c6ec | |||
| 4ae7ad31a3 | |||
| 83dee4df28 | |||
| 4c17c95033 | |||
| c56073b78e | |||
| a560b25bf8 | |||
| 87817c523c | |||
| dd2da36dfd | 
@ -21,6 +21,8 @@
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # propagate nixpkgs lib, so we can do bscpkgs.lib
 | 
			
		||||
      inherit (nixpkgs) lib;
 | 
			
		||||
      lib = nixpkgs.lib // {
 | 
			
		||||
        bsc.maintainers = import ./maintainers/maintainer-list.nix;
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										6
									
								
								maintainers/maintainer-list.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								maintainers/maintainer-list.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,6 @@
 | 
			
		||||
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";
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										32
									
								
								overlay.nix
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								overlay.nix
									
									
									
									
									
								
							@ -7,6 +7,33 @@ let
 | 
			
		||||
  callPackage = final.callPackage;
 | 
			
		||||
 | 
			
		||||
  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 { };
 | 
			
		||||
    bigotes = callPackage ./pkgs/bigotes/default.nix { };
 | 
			
		||||
    clangOmpss2 = callPackage ./pkgs/llvm-ompss2/default.nix { };
 | 
			
		||||
@ -106,6 +133,11 @@ let
 | 
			
		||||
  all = buildList' "ci-all" [ pkgsList testList ];
 | 
			
		||||
 | 
			
		||||
in bscPkgs // {
 | 
			
		||||
 | 
			
		||||
 lib = prev.lib // {
 | 
			
		||||
   bsc.maintainers = import ./maintainers/maintainer-list.nix;
 | 
			
		||||
 };
 | 
			
		||||
 | 
			
		||||
  # Prevent accidental usage of bsc attribute
 | 
			
		||||
  bsc = throw "the bsc attribute is deprecated, packages are now in the root";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, bigotes
 | 
			
		||||
, cmake
 | 
			
		||||
, clangOmpss2
 | 
			
		||||
@ -58,4 +59,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  ];
 | 
			
		||||
  hardeningDisable = [ "all" ];
 | 
			
		||||
  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,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchFromGitHub
 | 
			
		||||
, cmake
 | 
			
		||||
}:
 | 
			
		||||
@ -14,4 +15,12 @@ stdenv.mkDerivation {
 | 
			
		||||
    sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE=";
 | 
			
		||||
  };
 | 
			
		||||
  nativeBuildInputs = [ 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,6 +20,7 @@
 | 
			
		||||
#, python3Packages
 | 
			
		||||
, installShellFiles
 | 
			
		||||
, symlinkJoin
 | 
			
		||||
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
@ -87,7 +88,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
      --enable-sampling
 | 
			
		||||
      --with-unwind=${libunwind.dev}
 | 
			
		||||
      --with-xml-prefix=${libxml2.dev}
 | 
			
		||||
      --with-papi=${papi}
 | 
			
		||||
      ${lib.optionalString enablePapi "--with-papi=${papi}"}
 | 
			
		||||
      ${if (mpi != null) then ''--with-mpi=${mpi}''
 | 
			
		||||
        else ''--without-mpi''}
 | 
			
		||||
      --without-dyninst)
 | 
			
		||||
@ -110,4 +111,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
#    then [ "--enable-openmp" ]
 | 
			
		||||
#    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,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchurl
 | 
			
		||||
, symlinkJoin
 | 
			
		||||
, slurm
 | 
			
		||||
@ -52,4 +53,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  buildInputs = [ slurm mpiAll rdma-core-all autoconf automake libtool rsync gfortran ];
 | 
			
		||||
 | 
			
		||||
  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,4 +1,5 @@
 | 
			
		||||
{ stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchurl
 | 
			
		||||
, rpmextract
 | 
			
		||||
, autoPatchelfHook
 | 
			
		||||
@ -59,4 +60,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
      rm $out/lib/*.dbg
 | 
			
		||||
    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,4 +145,12 @@ in
 | 
			
		||||
      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,4 +1,5 @@
 | 
			
		||||
{ stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, rpmextract
 | 
			
		||||
, gcc
 | 
			
		||||
, zlib
 | 
			
		||||
@ -101,4 +102,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    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)"
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  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,11 +43,15 @@ let
 | 
			
		||||
    ];
 | 
			
		||||
    phases = [ "installPhase" ];
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      awk -F': ' '\
 | 
			
		||||
        BEGIN   { print "[ {" } \
 | 
			
		||||
        NR>1 && /^Package: / { print "} {"; } \
 | 
			
		||||
        /: /    { printf "%s = \"%s\";\n", $1, $2 } \
 | 
			
		||||
        END     { print "} ]" }' $srcs > $out
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -81,12 +85,23 @@ let
 | 
			
		||||
    nativeBuildInputs = [ dpkg ];
 | 
			
		||||
    phases = [ "installPhase" ];
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      mkdir -p $out
 | 
			
		||||
      for src in $srcs; do
 | 
			
		||||
        echo "unpacking $src"
 | 
			
		||||
        dpkg -x $src $out
 | 
			
		||||
      done
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
      description = "";
 | 
			
		||||
      homepage = "";
 | 
			
		||||
      license = lib.licenses.unfree;
 | 
			
		||||
      maintainers = with lib.maintainers; [  ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  joinDebs = name: names:
 | 
			
		||||
@ -122,6 +137,8 @@ let
 | 
			
		||||
    phases = [ "installPhase" "fixupPhase" ];
 | 
			
		||||
    dontStrip = true;
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      mkdir -p $out/{bin,etc,lib,include}
 | 
			
		||||
      mkdir -p $out/share/man
 | 
			
		||||
 | 
			
		||||
@ -138,6 +155,8 @@ let
 | 
			
		||||
        # Broken due missing libze_loader.so.1
 | 
			
		||||
        rsync -a --exclude IMB-MPI1-GPU bin/ $out/bin/
 | 
			
		||||
      popd
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
    preFixup = ''
 | 
			
		||||
      for i in $out/bin/mpi* ; do
 | 
			
		||||
@ -145,6 +164,13 @@ let
 | 
			
		||||
        sed -i "s:I_MPI_SUBSTITUTE_INSTALLDIR:$out:g" "$i"
 | 
			
		||||
      done
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
      description = "";
 | 
			
		||||
      homepage = "";
 | 
			
		||||
      license = lib.licenses.unfree;
 | 
			
		||||
      maintainers = with lib.maintainers; [  ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  intel-tbb = stdenv.mkDerivation rec {
 | 
			
		||||
@ -174,6 +200,8 @@ let
 | 
			
		||||
    autoPatchelfIgnoreMissingDeps = [ "libhwloc.so.5" ];
 | 
			
		||||
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      mkdir -p $out/lib
 | 
			
		||||
 | 
			
		||||
      cd $src
 | 
			
		||||
@ -182,7 +210,16 @@ let
 | 
			
		||||
        # Libraries
 | 
			
		||||
        rsync -a lib/intel64/gcc4.8/ $out/lib/
 | 
			
		||||
      popd
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
      description = "";
 | 
			
		||||
      homepage = "";
 | 
			
		||||
      license = lib.licenses.unfree;
 | 
			
		||||
      maintainers = with lib.maintainers; [  ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  intel-compiler-shared = stdenv.mkDerivation rec {
 | 
			
		||||
@ -215,6 +252,8 @@ let
 | 
			
		||||
    autoPatchelfIgnoreMissingDeps = [ "libsycl.so.6" ];
 | 
			
		||||
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      mkdir -p $out/{bin,lib,include}
 | 
			
		||||
      mkdir -p $out/share/man
 | 
			
		||||
 | 
			
		||||
@ -239,7 +278,16 @@ let
 | 
			
		||||
          rsync -a compiler/include/ $out/include/
 | 
			
		||||
        popd
 | 
			
		||||
      popd
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
      description = "";
 | 
			
		||||
      homepage = "";
 | 
			
		||||
      license = lib.licenses.unfree;
 | 
			
		||||
      maintainers = with lib.maintainers; [  ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -278,6 +326,8 @@ let
 | 
			
		||||
    dontStrip = true;
 | 
			
		||||
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      mkdir -p $out/{bin,lib,include}
 | 
			
		||||
      mkdir -p $out/share/man
 | 
			
		||||
 | 
			
		||||
@ -303,8 +353,18 @@ let
 | 
			
		||||
 | 
			
		||||
        # Fix lib_lin
 | 
			
		||||
        ln -s $out/lib $out/lib_lin
 | 
			
		||||
 | 
			
		||||
      popd
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
      description = "";
 | 
			
		||||
      homepage = "";
 | 
			
		||||
      license = lib.licenses.unfree;
 | 
			
		||||
      maintainers = with lib.maintainers; [  ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  intel-compiler = stdenv.mkDerivation rec {
 | 
			
		||||
@ -364,6 +424,8 @@ let
 | 
			
		||||
    dontStrip = true;
 | 
			
		||||
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
      runHook preInstall
 | 
			
		||||
 | 
			
		||||
      mkdir -p $out/{bin,lib}
 | 
			
		||||
      mkdir -p $out/share/man
 | 
			
		||||
 | 
			
		||||
@ -391,7 +453,16 @@ let
 | 
			
		||||
        # Manuals
 | 
			
		||||
        rsync -a documentation/en/man/common/ $out/share/man/
 | 
			
		||||
      popd
 | 
			
		||||
 | 
			
		||||
      runHook postInstall
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
      description = "";
 | 
			
		||||
      homepage = "";
 | 
			
		||||
      license = lib.licenses.unfree;
 | 
			
		||||
      maintainers = with lib.maintainers; [  ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  wrapIntel = { cc, mygcc, extraBuild ? "", extraInstall ? "" }:
 | 
			
		||||
 | 
			
		||||
@ -22,7 +22,11 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ libtirpc ];
 | 
			
		||||
  patches = [ ./fix-install.patch ./gcc-14.patch ];
 | 
			
		||||
  patches = [
 | 
			
		||||
    ./fix-install.patch
 | 
			
		||||
    ./gcc-14.patch
 | 
			
		||||
    ./fix-cross.patch
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  hardeningDisable = [ "all" ];
 | 
			
		||||
 | 
			
		||||
@ -35,6 +39,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
      CFLAGS=-Wno-implicit-int
 | 
			
		||||
      CPPFLAGS=-I${libtirpc.dev}/include/tirpc
 | 
			
		||||
      LDFLAGS=-ltirpc
 | 
			
		||||
      CC=${stdenv.cc.targetPrefix}cc
 | 
			
		||||
      AR=${stdenv.cc.targetPrefix}ar
 | 
			
		||||
    )
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										13
									
								
								pkgs/lmbench/fix-cross.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								pkgs/lmbench/fix-cross.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
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,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchFromGitHub
 | 
			
		||||
, autoreconfHook
 | 
			
		||||
, nanos6
 | 
			
		||||
@ -62,4 +63,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
# Fails with "memory exhausted" with bison 3.7.1
 | 
			
		||||
#    "--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,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchFromGitHub
 | 
			
		||||
, autoreconfHook
 | 
			
		||||
, nanos6
 | 
			
		||||
@ -57,4 +58,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
# Fails with "memory exhausted" with bison 3.7.1
 | 
			
		||||
#    "--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,4 +1,5 @@
 | 
			
		||||
{ stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchgit
 | 
			
		||||
, autoreconfHook
 | 
			
		||||
, nanos6
 | 
			
		||||
@ -56,4 +57,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  #preBuild = ''
 | 
			
		||||
  #  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";
 | 
			
		||||
      fullName = "MPICH license (permissive)";
 | 
			
		||||
    };
 | 
			
		||||
    maintainers = [ ];
 | 
			
		||||
    maintainers = with maintainers.bsc; [ rarias ];
 | 
			
		||||
    platforms = platforms.linux ++ platforms.darwin;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -16,6 +16,7 @@
 | 
			
		||||
, jemallocNanos6 ? null
 | 
			
		||||
, cachelineBytes ? 64
 | 
			
		||||
, enableGlibcxxDebug ? false
 | 
			
		||||
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
 | 
			
		||||
, useGit ? false
 | 
			
		||||
, gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6"
 | 
			
		||||
, gitBranch ? "master"
 | 
			
		||||
@ -47,6 +48,8 @@ let
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  source = if (useGit) then git else release;
 | 
			
		||||
 | 
			
		||||
  isCross = stdenv.hostPlatform != stdenv.buildPlatform;
 | 
			
		||||
in
 | 
			
		||||
  stdenv.mkDerivation (source // {
 | 
			
		||||
    pname = "nanos6";
 | 
			
		||||
@ -71,9 +74,11 @@ in
 | 
			
		||||
      "--disable-all-instrumentations"
 | 
			
		||||
      "--enable-ovni-instrumentation"
 | 
			
		||||
      "--with-ovni=${ovni}"
 | 
			
		||||
      "--with-boost=${boost.dev}"
 | 
			
		||||
    ] ++
 | 
			
		||||
      (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) ''
 | 
			
		||||
      # Disable debug
 | 
			
		||||
@ -97,16 +102,14 @@ in
 | 
			
		||||
      # TODO: papi_version is needed for configure:
 | 
			
		||||
      # ./configure: line 27378: papi_version: command not found
 | 
			
		||||
      # This probably breaks cross-compilation
 | 
			
		||||
      papi
 | 
			
		||||
    ];
 | 
			
		||||
    ] ++ lib.optionals enablePapi [ papi ];
 | 
			
		||||
 | 
			
		||||
    buildInputs = [
 | 
			
		||||
      boost
 | 
			
		||||
      numactl
 | 
			
		||||
      hwloc
 | 
			
		||||
      papi
 | 
			
		||||
      ovni
 | 
			
		||||
    ];
 | 
			
		||||
    ] ++ lib.optionals enablePapi [ papi ];
 | 
			
		||||
 | 
			
		||||
    # Create a script that sets NANOS6_HOME
 | 
			
		||||
    postInstall = ''
 | 
			
		||||
@ -118,6 +121,7 @@ in
 | 
			
		||||
      homepage = "https://github.com/bsc-pm/nanos6";
 | 
			
		||||
      description = "Nanos6 runtime for OmpSs-2" +
 | 
			
		||||
        optionalString (enableDebug) " (with debug symbols)";
 | 
			
		||||
      maintainers = with maintainers.bsc; [ rarias ];
 | 
			
		||||
      platforms = platforms.linux;
 | 
			
		||||
      license = licenses.gpl3;
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
{ jemalloc }:
 | 
			
		||||
{ jemalloc, lib }:
 | 
			
		||||
 | 
			
		||||
jemalloc.overrideAttrs (old: {
 | 
			
		||||
  configureFlags = old.configureFlags ++ [
 | 
			
		||||
@ -8,5 +8,6 @@ jemalloc.overrideAttrs (old: {
 | 
			
		||||
  hardeningDisable = [ "all" ];
 | 
			
		||||
  meta = old.meta // {
 | 
			
		||||
    description = old.meta.description + " (for Nanos6)";
 | 
			
		||||
    maintainers = old.meta.maintainers // (with lib.maintainers.bsc; [ rarias ]);
 | 
			
		||||
  };
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, bashInteractive
 | 
			
		||||
, busybox
 | 
			
		||||
, nix
 | 
			
		||||
@ -86,5 +87,13 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    mkdir -p $out/share
 | 
			
		||||
    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,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, glibc
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
@ -15,4 +16,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  makeFlags = [ "DESTDIR=$(out)" ];
 | 
			
		||||
  preBuild = "env";
 | 
			
		||||
  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,4 +81,12 @@ in
 | 
			
		||||
    passthru = {
 | 
			
		||||
      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
 | 
			
		||||
, hwloc
 | 
			
		||||
, papi
 | 
			
		||||
, enablePapi ? true
 | 
			
		||||
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
 | 
			
		||||
, cacheline ? 64 # bits
 | 
			
		||||
, ovni ? null
 | 
			
		||||
, useGit ? false
 | 
			
		||||
@ -59,4 +59,12 @@ in
 | 
			
		||||
      hwloc
 | 
			
		||||
      ovni
 | 
			
		||||
    ] ++ 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;
 | 
			
		||||
    };
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
@ -55,4 +55,12 @@ in
 | 
			
		||||
    doCheck = true;
 | 
			
		||||
    checkTarget = "test";
 | 
			
		||||
    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,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchFromGitHub
 | 
			
		||||
, autoreconfHook
 | 
			
		||||
, boost
 | 
			
		||||
@ -88,4 +89,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    mkdir -p $out/share/man
 | 
			
		||||
    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,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, autoreconfHook
 | 
			
		||||
, fetchFromGitHub
 | 
			
		||||
, ovni
 | 
			
		||||
@ -27,4 +28,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    ovni
 | 
			
		||||
    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,5 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  stdenv
 | 
			
		||||
, lib
 | 
			
		||||
, fetchFromGitHub
 | 
			
		||||
, automake
 | 
			
		||||
, autoconf
 | 
			
		||||
@ -55,4 +56,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  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;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -61,4 +61,12 @@ in stdenv.mkDerivation {
 | 
			
		||||
  configureFlags = optional (enableOvni) "--with-ovni=${ovni}";
 | 
			
		||||
  dontDisableStatic = true;
 | 
			
		||||
  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