lol
1{ stdenv, fetchurl, libelf }:
2
3let
4 version = "20170709";
5 src = fetchurl {
6 url = "http://www.prevanders.net/libdwarf-${version}.tar.gz";
7 sha512 = "afff6716ef1af5d8aae2b887f36b9a6547fb576770bc6f630b82725ed1e59cbd"
8 + "387779aa729bbd1a5ae026a25ac76aacf64b038cd898b2419a8676f9aa8c59f1";
9 };
10 meta = {
11 homepage = https://www.prevanders.net/dwarf.html;
12 platforms = stdenv.lib.platforms.linux;
13 };
14
15in rec {
16 libdwarf = stdenv.mkDerivation rec {
17 name = "libdwarf-${version}";
18
19 configureFlags = [ "--enable-shared" "--disable-nonshared" ];
20
21 preConfigure = ''
22 cd libdwarf
23 '';
24 buildInputs = [ libelf ];
25
26 installPhase = ''
27 mkdir -p $out/lib $out/include
28 cp libdwarf.so.1 $out/lib
29 ln -s libdwarf.so.1 $out/lib/libdwarf.so
30 cp libdwarf.h dwarf.h $out/include
31 '';
32
33 inherit meta src;
34 };
35
36 dwarfdump = stdenv.mkDerivation rec {
37 name = "dwarfdump-${version}";
38
39 preConfigure = ''
40 cd dwarfdump
41 '';
42
43 buildInputs = [ libelf libdwarf ];
44
45 installPhase = ''
46 install -m755 -D dwarfdump $out/bin/dwarfdump
47 '';
48
49 inherit meta src;
50 };
51}