nixpkgs/pkgs/development/compilers/scryer-prolog/default.nix
2023-11-17 16:15:19 -08:00

52 lines
1.2 KiB
Nix

{ lib
, rustPlatform
, fetchFromGitHub
, fetchpatch
, pkg-config
, openssl
, gmp
, libmpc
, mpfr
, stdenv
}:
rustPlatform.buildRustPackage rec {
pname = "scryer-prolog";
version = "0.9.3";
src = fetchFromGitHub {
owner = "mthom";
repo = "scryer-prolog";
rev = "v${version}";
hash = "sha256-0J69Zl+ONvR6T+xf2YeShwn3/JWOHyFHLpNFwmEaIOI=";
};
patches = [
(fetchpatch {
name = "cargo-lock-version-bump.patch";
url = "https://github.com/mthom/scryer-prolog/commit/d6fe5b5aaddb9886a8a34841a65cb28c317c2913.patch";
hash = "sha256-xkGsjVV/FcyZXGkI84FlqcRIuDM7isCCWZ1sbKql7es=";
})
];
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"modular-bitfield-0.11.2" = "sha256-vcx+xt5owZVWOlKwudAr0EB1zlLLL5pVfWokw034BQI=";
};
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl gmp libmpc mpfr ];
CARGO_FEATURE_USE_SYSTEM_LIBS = true;
meta = with lib; {
broken = stdenv.isDarwin;
description = "A modern Prolog implementation written mostly in Rust";
homepage = "https://github.com/mthom/scryer-prolog";
license = with licenses; [ bsd3 ];
maintainers = with maintainers; [ malbarbo wkral ];
};
}