nixpkgs/pkgs/tools/misc/nbench/default.nix
Adam Joseph 3141204b22
nbench: supply stdenv.glibc.static since Makefile uses -static (#172173)
* nbench: supply stdenv.glibc.static since Makefile uses -static

nbench's Makefile always compiles with -static, so we need it to be
able to see libc.a.  Let's add stdenv.glibc.static to the buildInputs.

* predicate on isGnu
2022-05-09 22:54:42 +02:00

38 lines
1010 B
Nix

{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = "nbench-byte";
version = "2.2.3";
src = fetchurl {
url = "http://www.math.utah.edu/~mayer/linux/${pname}-${version}.tar.gz";
sha256 = "1b01j7nmm3wd92ngvsmn2sbw43sl9fpx4xxmkrink68fz1rx0gbj";
};
prePatch = ''
substituteInPlace nbench1.h --replace '"NNET.DAT"' "\"$out/NNET.DAT\""
substituteInPlace sysspec.h --replace "malloc.h" "stdlib.h"
'' + lib.optionalString stdenv.isDarwin ''
substituteInPlace Makefile --replace "-static" ""
'';
buildInputs = lib.optionals stdenv.hostPlatform.isGnu [
stdenv.glibc.static
];
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
installPhase = ''
mkdir -p $out/bin
cp nbench $out/bin
cp NNET.DAT $out
'';
meta = with lib; {
homepage = "https://www.math.utah.edu/~mayer/linux/bmark.html";
description = "A synthetic computing benchmark program";
platforms = platforms.unix;
maintainers = with lib.maintainers; [ bennofs ];
};
}