nixpkgs/pkgs/by-name/bs/bsc/package.nix

45 lines
1002 B
Nix

{
lib,
stdenv,
fetchFromGitHub,
llvmPackages,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "bsc";
version = "3.3.4";
src = fetchFromGitHub {
owner = "IlyaGrebnov";
repo = "libbsc";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-reGg5xvoZBbNFFYPPyT2P1LA7oSCUIm9NIDjXyvkP9Q=";
};
enableParallelBuilding = true;
buildInputs = lib.optional stdenv.hostPlatform.isDarwin llvmPackages.openmp;
postPatch = lib.optional (!stdenv.hostPlatform.isx86) ''
substituteInPlace makefile \
--replace-fail "-mavx2" ""
substituteInPlace makefile.cuda \
--replace-fail "-mavx2" ""
'';
makeFlags = [
"CC=$(CXX)"
"PREFIX=${placeholder "out"}"
];
meta = {
description = "High performance block-sorting data compression library";
homepage = "http://libbsc.com/";
maintainers = with lib.maintainers; [ sigmanificient ];
license = lib.licenses.asl20;
platforms = lib.platforms.unix;
mainProgram = "bsc";
};
})