otadump: init at 0.1.2 (#329129)
[NixPkgs.git] / pkgs / by-name / ba / babeltrace / package.nix
blobeb36ac7a07536ae9aad6bccde902c3b4547d4475
2   lib,
3   stdenv,
4   fetchurl,
5   gitUpdater,
6   autoreconfHook,
7   pkg-config,
8   glib,
9   libuuid,
10   popt,
11   elfutils,
12   enablePython ? false,
13   pythonPackages ? null,
14   swig,
17 stdenv.mkDerivation (finalAttrs: {
18   pname = "babeltrace";
19   version = "1.5.11";
21   src = fetchurl {
22     url = "https://www.efficios.com/files/babeltrace/babeltrace-${finalAttrs.version}.tar.bz2";
23     hash = "sha256-Z7Q6qu9clR+nrxpVfPcgGhH+iYdrfCK6CgPLwxbbWpw=";
24   };
26   nativeBuildInputs =
27     [
28       # The pre-generated ./configure script uses an old autoconf version which
29       # breaks cross-compilation (replaces references to malloc with rpl_malloc).
30       # Re-generate with nixpkgs's autoconf. This requires glib to be present in
31       # nativeBuildInputs for its m4 macros to be present.
32       autoreconfHook
33       glib
34       pkg-config
35     ]
36     ++ lib.optionals enablePython [
37       swig
38       pythonPackages.setuptools
39     ];
40   buildInputs = [
41     glib
42     libuuid
43     popt
44     elfutils
45   ];
47   configureFlags =
48     [
49       # --enable-debug-info (default) requires the configure script to run host
50       # executables to determine the elfutils library version, which cannot be done
51       # while cross compiling.
52       (lib.enableFeature (stdenv.hostPlatform == stdenv.buildPlatform) "debug-info")
53     ]
54     ++ lib.optionals enablePython [
55       # Using (lib.enableFeature enablePython "python-bindings") makes the
56       # configure script look for python dependencies even when
57       # enablePython==false. Adding the configure flag conditionally seems to
58       # solve this.
59       "--enable-python-bindings"
60     ];
61   #
63   passthru.updateScript = gitUpdater {
64     url = "https://git.efficios.com/babeltrace.git";
65     rev-prefix = "v";
66     # Versions 2.x are packaged independently as babeltrace2
67     allowedVersions = "^1\\.";
68   };
70   meta = {
71     description = "Command-line tool and library to read and convert LTTng tracefiles";
72     homepage = "https://www.efficios.com/babeltrace";
73     license = lib.licenses.mit;
74     platforms = lib.platforms.linux;
75     maintainers = with lib.maintainers; [
76       bjornfor
77       wentasah
78     ];
79   };