anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / development / libraries / rure / default.nix
blob308eb41d1a9027fe5a87c01b421db47fd6e0854e
1 { lib
2 , stdenv
3 , rustPlatform
4 , fetchCrate
5 , fixDarwinDylibNames
6 }:
8 let
9   pin = lib.importJSON ./pin.json;
12 rustPlatform.buildRustPackage {
13   inherit (pin) pname version;
15   src = fetchCrate pin;
17   # upstream doesn't ship a Cargo.lock, is generated by the update script
18   postPatch = ''
19     cp ${./Cargo.lock} Cargo.lock
20   '';
22   cargoLock.lockFile = ./Cargo.lock;
24   outputs = [ "out" "dev" ];
26   # Headers are not handled by cargo nor buildRustPackage
27   postInstall = ''
28     install -Dm644 include/rure.h -t "$dev/include"
29   '';
31   nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
32     fixDarwinDylibNames
33   ];
35   passthru.updateScript = ./update.sh;
37   meta = {
38     description = "C API for Rust's regular expression library";
39     homepage = "https://crates.io/crates/rure";
40     license = [
41       lib.licenses.mit
42       lib.licenses.asl20
43     ];
44     maintainers = [ lib.maintainers.sternenseemann ];
45   };