about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/parsing/jshon/default.nix
blob: 977c4bb398c2d04a3c285066c4f46b0129b37329 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
{ stdenv, lib, fetchFromGitHub, fetchpatch, jansson }:

stdenv.mkDerivation rec {
  pname = "jshon";
  version = "20170302";

  src = fetchFromGitHub {
    owner = "keenerd";
    repo = "jshon";
    rev = "d919aeaece37962251dbe6c1ee50f0028a5c90e4";
    sha256 = "1x4zfmsjq0l2y994bxkhx3mn5vzjxxr39iib213zjchi9h6yxvnc";
  };

  buildInputs = [ jansson ];

  env.NIX_CFLAGS_COMPILE = "-Wno-error=strict-prototypes";

  patches = [
    (fetchpatch {
      # https://github.com/keenerd/jshon/pull/62
      url = "https://github.com/keenerd/jshon/commit/96b4e9dbf578be7b31f29740b608aa7b34df3318.patch";
      sha256 = "0kwbn3xb37iqb5y1n8vhzjiwlbg5jmki3f38pzakc24kzc5ksmaa";
    })
  ];

  postPatch =
    ''
      substituteInPlace Makefile --replace "/usr/" "/"
    '';

  preInstall =
    ''
      export DESTDIR=$out
    '';

  meta = with lib; {
    homepage = "http://kmkeen.com/jshon";
    description = "JSON parser designed for maximum convenience within the shell";
    license = licenses.free;
    platforms = platforms.all;
    maintainers = with maintainers; [ rushmorem ];
  };
}