diff mbox series

[bug#60018,1/5] gnu: Add libtraceevent.

Message ID CsEffs0C-u7zD6nmzujZTy1Vl4u7YWrKOudYhRqLlnVcf4TfM7oF7iATtE1IoJECUxW6Q9JxWVVwT6P9N1L9AfYonk_5riPTgW_kcbbIF0Q=@protonmail.com
State New
Headers show
Series [bug#60018,1/5] gnu: Add libtraceevent. | expand

Commit Message

phodina Dec. 12, 2022, 7:58 p.m. UTC
Hi,

the following patch set adds tracing tools to Linux.

----
Petr

Comments

Vagrant Cascadian Sept. 2, 2023, 4:55 a.m. UTC | #1
retitle 60018 Add trace-cmd, traceshark, kernelshark
thanks

On 2022-12-12, phodina wrote:
> * gnu/packages/linux.scm (trace-cmd): New variable.
> * gnu/packages/linux.scm (traceshark): New variable.
> * gnu/packages/linux.scm (kernelshark): New variable.

Not yet added.

> * gnu/packages/linux.scm (libtracefs): New variable.
> * gnu/packages/linux.scm (libtraceevent): New variable.

Were added in:

2c7f12a6cb3f8a6646098ef8985c0f6061ccd3fc gnu: Add libtracefs.
b6a1b61f00c5d24b112dc33a7fbdf1e36430a237 gnu: Add libtraceevent.

Retitled bug with the outstanding packages.

live well,
  vagrant
diff mbox series

Patch

From f2d35e6a46360ed5fdf158c2ae8f037690bd0f80 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 12 Dec 2022 15:01:33 +0100
Subject: [PATCH 4/5] gnu: Add kernelshark.

* gnu/packages/linux.scm (kernelshark): New variable.
* gnu/local.mk: Add patch.
* gnu/patches/kernelshark-disable-tests.patch: New variable.

diff --git a/gnu/local.mk b/gnu/local.mk
index 3329801fa6..b99acad616 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1389,6 +1389,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/lightdm-vnc-color-depth.patch		\
   %D%/packages/patches/localed-xorg-keyboard.patch		\
   %D%/packages/patches/kcontacts-incorrect-country-name.patch	\
+  %D%/packages/patches/kernelshark-disable-tests.patch	\
   %D%/packages/patches/kde-cli-tools-delay-mime-db.patch	\
   %D%/packages/patches/kdiagram-Fix-missing-link-libraries.patch \
   %D%/packages/patches/kiki-level-selection-crash.patch		\
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 1883a5bdd3..036ad48b76 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -112,11 +112,13 @@  (define-module (gnu packages linux)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages file)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages fonts)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gawk)
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages gettext)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gnupg)
@@ -141,6 +143,7 @@  (define-module (gnu packages linux)
   #:use-module (gnu packages nss)
   #:use-module (gnu packages onc-rpc)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages pciutils)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages popt)
@@ -9860,6 +9863,52 @@  (define-public modprobed-db
 directly by @code{make localmodconfig} as described above.")
     (license license:expat)))
 
+(define-public kernelshark
+  (package
+    (name "kernelshark")
+    (version "2.1.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git/snapshot/kernel-shark-kernelshark-v"
+                    version ".tar.gz"))
+              ;; These require conectivity and GUI
+              (patches (search-patches "kernelshark-disable-tests.patch"))
+              (sha256
+               (base32
+                "0jw9nngyarnasqrqgc3f5yzjjc7351ydvzavj737cc14f75zkkfl"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list #:configure-flags #~(list (string-append "-DPKG_CONGIG_DIR="
+                                                    #$output "/lib/pkgconfig")
+                                     (string-append "-D_POLKIT_INSTALL_PREFIX="
+                                      #$output)
+                                     (string-append "-D_INSTALL_PREFIX="
+                                                    #$output))
+           #:phases #~(modify-phases %standard-phases
+                        (add-after 'unpack 'fix-font
+                          (lambda* _
+                            ;; Use libre font
+                            (substitute* "CMakeLists.txt"
+                              (("FreeSans")
+                               "FiraSans-Regular")))))))
+    (native-inputs (list doxygen pkg-config))
+    (inputs (list boost
+                  fontconfig
+                  font-fira-sans
+                  freeglut
+                  json-c
+                  qtbase-5
+                  libtracefs
+                  libtraceevent
+                  trace-cmd))
+    (home-page "https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git/")
+    (synopsis
+     "GUI frontend for @code{trace-cmd} based Linux kernel Ftrace captures")
+    (description
+     "This package provides a frontend reader of @code{trace-cmd}.")
+    (license license:gpl3+)))
+
 (define-public kconfig-hardened-check
   (package
     (name "kconfig-hardened-check")
diff --git a/gnu/packages/patches/kernelshark-disable-tests.patch b/gnu/packages/patches/kernelshark-disable-tests.patch
new file mode 100644
index 0000000000..032f1830ec
--- /dev/null
+++ b/gnu/packages/patches/kernelshark-disable-tests.patch
@@ -0,0 +1,43 @@ 
+From 81171884b9b8e8e054447bd982b81671e5cf0bc3 Mon Sep 17 00:00:00 2001
+From: Petr Hodina <phodina@protonmail.com>
+Date: Mon, 12 Dec 2022 16:52:43 +0100
+Subject: [PATCH] Remove problematic tests.
+
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 1814c72..1280bdd 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -9,10 +9,6 @@ target_compile_definitions(kshark-tests PRIVATE "BOOST_TEST_DYN_LINK=1")
+ target_link_libraries(kshark-tests   kshark
+                                      ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
+ 
+-add_test(NAME              "get_test_data"
+-         COMMAND           ${KS_TEST_DIR}/get_test_data.sh
+-         WORKING_DIRECTORY ${KS_TEST_DIR})
+-
+ add_library(dummy_dpi             SHARED  test-plugin_dpi.c)
+ set_target_properties(dummy_dpi   PROPERTIES PREFIX "plugin-")
+ target_link_libraries(dummy_dpi   kshark)
+@@ -37,18 +33,3 @@ message(STATUS "libkshark-tests")
+ add_test(NAME              "libkshark_tests"
+          COMMAND           ${KS_TEST_DIR}/kshark-tests --log_format=HRF
+          WORKING_DIRECTORY ${KS_TEST_DIR})
+-
+-if (Qt5Widgets_FOUND AND TT_FONT_FILE)
+-
+-    add_executable(kshark-gui-tests          libkshark-gui-tests.cpp)
+-    target_include_directories(kshark-gui-tests PRIVATE ${Boost_INCLUDE_DIRS})
+-    target_compile_definitions(kshark-gui-tests PRIVATE "BOOST_TEST_DYN_LINK=1")
+-    target_link_libraries(kshark-gui-tests   kshark-gui
+-                          ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
+-
+-    message(STATUS "libkshark-gui_tests")
+-    add_test(NAME              "libkshark-gui_tests"
+-             COMMAND           ${KS_TEST_DIR}/kshark-gui-tests --log_format=HRF
+-             WORKING_DIRECTORY ${KS_TEST_DIR})
+-
+-endif (Qt5Widgets_FOUND AND TT_FONT_FILE)
+-- 
+2.38.1
+
-- 
2.38.1