nixpkgs/pkgs/tools/misc/flashrom/default.nix
Daniel Schaefer 2a8bb1ad60 flashrom: Build and install manpage
It seems flashrom has two build systems at the moment.
One based on meson/ninja and one based on Make.

The latter can build and install the manpage but the former cannot.
ArchLinux does the same, call make after finishing the meson build.
2021-06-09 23:19:06 +08:00

42 lines
1.1 KiB
Nix

{ lib
, stdenv
, fetchurl
, meson
, ninja
, pkg-config
, libftdi1
, libusb1
, pciutils
, installShellFiles
}:
stdenv.mkDerivation rec {
pname = "flashrom";
version = "1.2";
src = fetchurl {
url = "https://download.flashrom.org/releases/flashrom-v${version}.tar.bz2";
sha256 = "0ax4kqnh7kd3z120ypgp73qy1knz47l6qxsqzrfkd97mh5cdky71";
};
# Meson build doesn't build and install manpage. Only Makefile can.
# Build manpage from source directory. Here we're inside the ./build subdirectory
postInstall = ''
make flashrom.8 -C ..
installManPage ../flashrom.8
'';
mesonFlags = lib.optionals stdenv.isAarch64 [ "-Dpciutils=false" ];
nativeBuildInputs = [ meson pkg-config ninja installShellFiles ];
buildInputs = [ libftdi1 libusb1 pciutils ];
meta = with lib; {
homepage = "http://www.flashrom.org";
description = "Utility for reading, writing, erasing and verifying flash ROM chips";
license = licenses.gpl2;
maintainers = with maintainers; [ funfunctor fpletz ];
platforms = platforms.all;
broken = stdenv.isDarwin; # requires DirectHW
};
}