forked from rarias/bscpkgs
		
	The bindnow hardening option is incompatible with the ifunc symbol resolution mechanism. All hardening is disabled as well.
		
			
				
	
	
		
			52 lines
		
	
	
		
			906 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			906 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   stdenv
 | |
| , automake
 | |
| , autoconf
 | |
| , libtool
 | |
| , pkg-config
 | |
| , numactl
 | |
| , hwloc
 | |
| , papi
 | |
| , extrae
 | |
| , boost
 | |
| , autoreconfHook
 | |
| }:
 | |
| 
 | |
| with stdenv.lib;
 | |
| 
 | |
| stdenv.mkDerivation rec {
 | |
|   pname = "nanos6";
 | |
|   version = "2.4-${src.shortRev}";
 | |
|   branch = "master";
 | |
|   cacheline-width = "64";
 | |
| 
 | |
|   src = builtins.fetchGit {
 | |
|     url = "ssh://git@bscpm02.bsc.es/nanos6/nanos6";
 | |
|     ref = branch;
 | |
|   };
 | |
| 
 | |
|   enableParallelBuilding = true;
 | |
| 
 | |
|   preConfigure = ''
 | |
|     export CACHELINE_WIDTH=${cacheline-width}
 | |
|     export NANOS6_GIT_VERSION=${src.rev}
 | |
|     export NANOS6_GIT_BRANCH=${branch}
 | |
|   '';
 | |
| 
 | |
|   # The "bindnow" flags are incompatible with ifunc resolution mechanism. We
 | |
|   # disable all by default, which includes bindnow.
 | |
|   hardeningDisable = [ "all" ];
 | |
| 
 | |
|   buildInputs = [
 | |
|     autoreconfHook
 | |
|     autoconf
 | |
|     automake
 | |
|     libtool
 | |
|     pkg-config
 | |
|     boost
 | |
|     numactl
 | |
|     hwloc
 | |
|     papi ]
 | |
|     ++ (if (extrae != null) then [extrae] else []);
 | |
| }
 |