2022-01-21 00:48:14 +00:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, fetchFromGitHub
|
|
|
|
, autoreconfHook
|
|
|
|
, doxygen
|
|
|
|
, installShellFiles
|
|
|
|
, zlib
|
|
|
|
}:
|
2021-10-07 15:51:54 +01:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "liberasurecode";
|
2022-06-01 16:55:07 +01:00
|
|
|
version = "1.6.3";
|
2021-10-07 15:51:54 +01:00
|
|
|
|
2022-01-21 00:48:14 +00:00
|
|
|
outputs = [ "out" "dev" "doc" ];
|
2021-10-07 15:51:54 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "openstack";
|
|
|
|
repo = pname;
|
|
|
|
rev = version;
|
2022-06-01 16:55:07 +01:00
|
|
|
sha256 = "sha256-HCp+FQ9nq4twk6FtfKhzT80wXXJbvG+clrDO2/9ATpU=";
|
2021-10-07 15:51:54 +01:00
|
|
|
};
|
|
|
|
|
2022-01-21 00:48:14 +00:00
|
|
|
postPatch = ''
|
|
|
|
substituteInPlace doc/doxygen.cfg.in \
|
|
|
|
--replace "GENERATE_MAN = NO" "GENERATE_MAN = YES"
|
|
|
|
'';
|
|
|
|
|
|
|
|
nativeBuildInputs = [ autoreconfHook doxygen installShellFiles ];
|
2021-10-07 15:51:54 +01:00
|
|
|
|
|
|
|
buildInputs = [ zlib ];
|
|
|
|
|
2022-01-21 00:48:14 +00:00
|
|
|
configureFlags = [ "--enable-doxygen" ];
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
# remove useless man pages about directories
|
|
|
|
rm doc/man/man*/_*
|
|
|
|
installManPage doc/man/man*/*
|
|
|
|
|
|
|
|
moveToOutput share/liberasurecode/ $doc
|
|
|
|
'';
|
|
|
|
|
|
|
|
checkTarget = "test";
|
|
|
|
|
2021-10-07 15:51:54 +01:00
|
|
|
meta = with lib; {
|
|
|
|
description = "Erasure Code API library written in C with pluggable Erasure Code backends";
|
|
|
|
homepage = "https://github.com/openstack/liberasurecode";
|
|
|
|
license = licenses.bsd2;
|
|
|
|
maintainers = teams.openstack.members;
|
|
|
|
};
|
|
|
|
}
|