gnu: Add yactfr.

* gnu/packages/instrumentation.scm (yactfr): New variable.

Change-Id: I48203e19513cd52ebd97faa307ad524b8a5c5dcd
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Olivier Dion 2025-05-05 08:42:04 -04:00 committed by Ludovic Courtès
parent 0882a1b701
commit 16194aaede
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -655,3 +655,33 @@ kind of commands and filters to help analysis of the program execution and
performance. It provides the command @command{uftrace}. By default, it is
bundled with python-3 and luajit that you can delete in a package variant.")
(license license:gpl2)))
(define-public yactfr
(let ((commit "796eaff018e2432ecc8f1f103101afafc9f38518")
(revision "0"))
(package
(name "yactfr")
(version (git-version "1.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/eepp/yactfr")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1p4nqsq689hr2srdvg59v9yfig2aaq9psdy6fhwnya0vszssyvn5"))))
(build-system cmake-build-system)
(arguments `(#:test-target "check"))
(native-inputs (list boost python-pytest))
(home-page "https://github.com/eepp/yactfr")
(synopsis "CTF reading library offering a C++14 API")
(description "While the @acronym{CTF, Common Trace Format} reading
libraries focus on decoding and providing completed and ordered event record
objects, the yactfr API offers a lower level of CTF processing. Allowing
iteration over individual element sequences to obtain elements: beginning/end
of packet, beginning/end of event record, beggining/end of structure,
individual data stream scalar values like fixed-length integers, fixed-length
floating point numbers, and null-terminated strings, specific clock value
update, known data stream ID, and the rest.")
(license license:expat))))