--- Begin Message ---
Subject: |
[PATCH] gnu: Add babeltrace. |
Date: |
Thu, 23 Sep 2021 08:41:13 -0400 |
* gnu/packages/linux.scm (babeltrace): New variable.
Signed-off-by: Olivier Dion <olivier.dion@polymtl.ca>
---
gnu/packages/linux.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 9bb90e599e..dcfea9cc6c 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -131,6 +131,7 @@
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages slang)
+ #:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
@@ -8051,6 +8052,40 @@ enable and disable specific instrumentation points, and
writes event records
to ring buffers shared with a consumer daemon.")
(license license:lgpl2.1+)))
+(define-public babeltrace
+ (package
+ (name "babeltrace")
+ (version "2.0.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
"https://www.efficios.com/files/babeltrace/babeltrace2-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
"1804pyq7fz6rkcz4r1abkkn0pfnss13m6fd8if32s42l4lajadm5"))))
+
+ (build-system gnu-build-system)
+
+ (propagated-inputs
+ `(("elfutils" ,elfutils)))
+
+ (native-inputs
+ `(("asciidoc" ,asciidoc)
+ ("bison" ,bison)
+ ("flex" ,flex)
+ ("glib" ,glib)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-3)
+ ("python-sphinx" ,python-sphinx)
+ ("xmltoman" ,xmltoman)))
+
+ (home-page "https://babeltrace.org/")
+ (synopsis "Babeltrace /ˈbæbəltreɪs/ is an open-source trace manipulation
toolkit.")
+ (description "Babeltrace 2 is the reference parser implementation of the
+Common Trace Format (CTF), a versatile trace format produced by various
+tracers and tools such as LTTng and barectf. The Babeltrace 2 library and its
+Python bindings can read and write CTF traces.")
+ (license license:expat)))
+
(define-public kexec-tools
(package
(name "kexec-tools")
--
2.33.0
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#50757: [PATCH] gnu: Add babeltrace. |
Date: |
Sun, 21 Nov 2021 21:31:28 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hey Olivier!
Olivier Dion <olivier.dion@polymtl.ca> writes:
> * gnu/packages/linux.scm (babeltrace): New variable.
> ---
> gnu/packages/linux.scm | 56 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 56 insertions(+)
>
> diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
> index 4d167dc522..81589955cc 100644
> --- a/gnu/packages/linux.scm
> +++ b/gnu/packages/linux.scm
> @@ -131,6 +131,7 @@ (define-module (gnu packages linux)
> #:use-module (gnu packages sdl)
> #:use-module (gnu packages serialization)
> #:use-module (gnu packages slang)
> + #:use-module (gnu packages sphinx)
> #:use-module (gnu packages sqlite)
> #:use-module (gnu packages texinfo)
> #:use-module (gnu packages tls)
> @@ -8199,6 +8200,61 @@ (define-public lttng-tools
> @code{lttng-relayd} for network streaming.")
> (license (list license:gpl2 license:lgpl2.1))))
>
> +(define-public babeltrace
> + (package
> + (name "babeltrace")
> + (version "2.0.4")
> + (source (origin
> + (method url-fetch)
> + (uri (string-append
> "https://www.efficios.com/files/babeltrace/babeltrace2-"
> + version ".tar.bz2"))
> + (sha256
> + (base32
> "1jlv925pr7hykc48mdvbmqm4ipy1r11xwzapa6fdpdfshmk12kvp"))))
> +
> + (build-system gnu-build-system)
> +
> + (arguments
> + `(;; FIXME - When Python's bindings are enabled, tests do not pass.
> + #:configure-flags '("--enable-debug-info"
> + "--enable-man-pages"
> + "--disable-python-bindings"
> + "--disable-python-plugins")
> + #:phases
> + (modify-phases %standard-phases
> + ;; These are recommended in the project's README for a development
> + ;; build configuration.
> + (add-before 'configure 'set-environment-variables
> + (lambda _
> + (setenv "BABELTRACE_DEV_MODE" "1")
> + (setenv "BABELTRACE_MINIMAL_LOG_LEVEL" "TRACE"))))))
> + (inputs
> + `(("glib" ,glib)))
> + ;; NOTE - elfutils is used for the LTTng debug information filter
> + ;; component class. This can be moved to `native-inputs` if
> + ;; `--enable-debug-info` is replaced by `--disable-debug-info` in
> + ;; `#:configure-flags`.
> + (propagated-inputs
> + `(("elfutils" ,elfutils)))
> + ;; NOTE - python-3 is set here for generating the bindings. Users need
> to
> + ;; install python-3 in their profile in order to use these bindings.
> + (native-inputs
> + `(("asciidoc" ,asciidoc)
> + ("bison" ,bison)
> + ("flex" ,flex)
> + ("pkg-config" ,pkg-config)
> + ("python-3" ,python-3)
> + ("python-sphinx" ,python-sphinx)
> + ("swig", swig)
> + ("xmltoman" ,xmltoman)))
> + (home-page "https://babeltrace.org/")
> + (synopsis "Trace manipulation toolkit")
> + (description "Babeltrace 2 is a framework for viewing, converting,
> +transforming, and analyzing traces. It is also the reference parser
> +implementation of the Common Trace Format (CTF), produced by tools such as
> +LTTng and barectf. This package provides a library with a C API, Python 3
> +bindings, and the command-line tool @command{babeltrace2}.")
> + (license license:expat)))
> +
> (define-public kexec-tools
> (package
> (name "kexec-tools")
Thanks for this, and to Sarah for the nice review!
I've pushed this as-is to master as
82f8ac4c291e80ef94ee57ff1e0f62f1307c0afb.
Happy hacking!
Maxim
--- End Message ---