Luke Granger-Brown
57725ef3ec
git-subtree-dir: third_party/nixpkgs git-subtree-split: 76612b17c0ce71689921ca12d9ffdc9c23ce40b2
80 lines
2.1 KiB
Nix
80 lines
2.1 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchurl,
|
|
gitUpdater,
|
|
autoreconfHook,
|
|
pkg-config,
|
|
glib,
|
|
libuuid,
|
|
popt,
|
|
elfutils,
|
|
enablePython ? false,
|
|
pythonPackages ? null,
|
|
swig,
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "babeltrace";
|
|
version = "1.5.11";
|
|
|
|
src = fetchurl {
|
|
url = "https://www.efficios.com/files/babeltrace/babeltrace-${finalAttrs.version}.tar.bz2";
|
|
hash = "sha256-Z7Q6qu9clR+nrxpVfPcgGhH+iYdrfCK6CgPLwxbbWpw=";
|
|
};
|
|
|
|
nativeBuildInputs =
|
|
[
|
|
# The pre-generated ./configure script uses an old autoconf version which
|
|
# breaks cross-compilation (replaces references to malloc with rpl_malloc).
|
|
# Re-generate with nixpkgs's autoconf. This requires glib to be present in
|
|
# nativeBuildInputs for its m4 macros to be present.
|
|
autoreconfHook
|
|
glib
|
|
pkg-config
|
|
]
|
|
++ lib.optionals enablePython [
|
|
swig
|
|
pythonPackages.setuptools
|
|
];
|
|
buildInputs = [
|
|
glib
|
|
libuuid
|
|
popt
|
|
elfutils
|
|
];
|
|
|
|
configureFlags =
|
|
[
|
|
# --enable-debug-info (default) requires the configure script to run host
|
|
# executables to determine the elfutils library version, which cannot be done
|
|
# while cross compiling.
|
|
(lib.enableFeature (stdenv.hostPlatform == stdenv.buildPlatform) "debug-info")
|
|
]
|
|
++ lib.optionals enablePython [
|
|
# Using (lib.enableFeature enablePython "python-bindings") makes the
|
|
# configure script look for python dependencies even when
|
|
# enablePython==false. Adding the configure flag conditionally seems to
|
|
# solve this.
|
|
"--enable-python-bindings"
|
|
];
|
|
#
|
|
|
|
passthru.updateScript = gitUpdater {
|
|
url = "https://git.efficios.com/babeltrace.git";
|
|
rev-prefix = "v";
|
|
# Versions 2.x are packaged independently as babeltrace2
|
|
allowedVersions = "^1\\.";
|
|
};
|
|
|
|
meta = {
|
|
description = "Command-line tool and library to read and convert LTTng tracefiles";
|
|
homepage = "https://www.efficios.com/babeltrace";
|
|
license = lib.licenses.mit;
|
|
platforms = lib.platforms.linux;
|
|
maintainers = with lib.maintainers; [
|
|
bjornfor
|
|
wentasah
|
|
];
|
|
};
|
|
})
|