65 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   stdenv
 | |
| , lib
 | |
| , fetchurl
 | |
| , symlinkJoin
 | |
| , slurm
 | |
| , rdma-core
 | |
| , autoconf
 | |
| , automake
 | |
| , libtool
 | |
| , mpi
 | |
| , rsync
 | |
| , gfortran
 | |
| }:
 | |
| 
 | |
| let
 | |
|   rdma-core-all = symlinkJoin {
 | |
|     name ="rdma-core-all";
 | |
|     paths = [ rdma-core.dev rdma-core.out ];
 | |
|   };
 | |
|   mpiAll = symlinkJoin {
 | |
|     name = "mpi-all";
 | |
|     paths = [ mpi.all ];
 | |
|   };
 | |
| in
 | |
| 
 | |
| stdenv.mkDerivation rec {
 | |
|   pname = "GPI-2";
 | |
|   version = "tagaspi-2021.11";
 | |
| 
 | |
|   src = fetchurl {
 | |
|     url = "https://pm.bsc.es/gitlab/interoperability/extern/GPI-2/-/archive/${version}/GPI-2-${version}.tar.gz";
 | |
|     hash = "sha256-eY2wpyTpnOXRoAcYoAP82Jq9Q7p5WwDpMj+f1vEX5zw=";
 | |
|   };
 | |
| 
 | |
|   enableParallelBuilding = true;
 | |
| 
 | |
|   patches = [ ./rdma-core.patch ./max-mem.patch ];
 | |
| 
 | |
|   preConfigure = ''
 | |
|     patchShebangs autogen.sh
 | |
|     ./autogen.sh
 | |
|   '';
 | |
| 
 | |
|   configureFlags = [
 | |
|     "--with-infiniband=${rdma-core-all}"
 | |
|     "--with-mpi=${mpiAll}"
 | |
|     "--with-slurm"
 | |
|     "CFLAGS=-fPIC"
 | |
|     "CXXFLAGS=-fPIC"
 | |
|   ];
 | |
| 
 | |
|   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;
 | |
|   };
 | |
| }
 |