1{ lib, stdenv, fetchFromGitHub, fetchpatch }:
2
3stdenv.mkDerivation rec {
4 pname = "trinity";
5 version = "1.9";
6
7 src = fetchFromGitHub {
8 owner = "kernelslacker";
9 repo = "trinity";
10 rev = "v${version}";
11 sha256 = "0z1a7x727xacam74jccd223k303sllgwpq30lnq9b6xxy8b659bv";
12 };
13
14 patches = [
15 # Pull upstream fix for -fno-common toolchains
16 (fetchpatch {
17 name = "fno-common.patch";
18 url = "https://github.com/kernelslacker/trinity/commit/e53e25cc8dd5bdb5f7d9b4247de9e9921eec81d8.patch";
19 sha256 = "0dbhyc98x11cmac6rj692zymnfqfqcbawlrkg1lhgfagzjxxwshg";
20 })
21 ];
22
23 postPatch = ''
24 patchShebangs configure
25 patchShebangs scripts
26 '';
27
28 enableParallelBuilding = true;
29
30 makeFlags = [ "DESTDIR=$(out)" ];
31
32 meta = with lib; {
33 description = "A Linux System call fuzz tester";
34 homepage = "https://codemonkey.org.uk/projects/trinity/";
35 license = licenses.gpl2;
36 maintainers = [ maintainers.dezgeg ];
37 platforms = platforms.linux;
38 };
39}