{ 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 []); }