Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, stdenv
3, fetchFromGitHub
4, fetchpatch
5, autoreconfHook
6, pkg-config
7, protobuf
8, zlib
9, buildPackages
10}:
11
12stdenv.mkDerivation rec {
13 pname = "protobuf-c";
14 version = "1.4.1";
15
16 src = fetchFromGitHub {
17 owner = "protobuf-c";
18 repo = "protobuf-c";
19 rev = "refs/tags/v${version}";
20 hash = "sha256-TJCLzxozuZ8ynrBQ2lKyk03N+QA/lbOwywUjDUdTlbM=";
21 };
22
23 patches = [
24 # https://github.com/protobuf-c/protobuf-c/pull/534
25 (fetchpatch {
26 url = "https://github.com/protobuf-c/protobuf-c/commit/a6c9ea5207aeac61c57b446ddf5a6b68308881d8.patch";
27 hash = "sha256-wTb8+YbvrCrOVpgthI5SJdG/CpQcOzCX4Bv47FPY804=";
28 })
29 ];
30
31 nativeBuildInputs = [ autoreconfHook pkg-config ];
32
33 buildInputs = [ protobuf zlib ];
34
35 PROTOC = lib.getExe buildPackages.protobuf;
36
37 meta = with lib; {
38 homepage = "https://github.com/protobuf-c/protobuf-c/";
39 description = "C bindings for Google's Protocol Buffers";
40 license = licenses.bsd2;
41 platforms = platforms.all;
42 maintainers = with maintainers; [ nickcao ];
43 };
44}