summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel
diff options
context:
space:
mode:
authorAnders Wallin <wallinux@gmail.com>2020-03-05 13:06:29 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-03-06 08:19:18 +0000
commit12eac40aa67d7a85d96c2dbb5d0c91747f47acec (patch)
treeb2a66c4b7673f59c9d039f7de9a02e12ab55b6fb /meta/recipes-kernel
parentd21783d68a4e8af31525cab5d8817751c932022a (diff)
downloadpoky-12eac40aa67d7a85d96c2dbb5d0c91747f47acec.tar.gz
babeltrace2: added first version, 2.0.1
Babeltrace 1 vs. Babeltrace 2 The Babeltrace project exists since 2010. In 2020, Babeltrace 2 was released. Babeltrace 2 is a complete rewrite of the library, Python bindings, and CLI. It is plugin based and offers much more features and potential than Babeltrace 1. Because Babeltrace 2 is still a young released project, some distributions still provide packages for the Babeltrace 1 project. Both projects can coexist on the same system as there are no common installed files. (From OE-Core rev: be52889ba5e5a2cf02f50b3f3acee8ca72ec494d) Signed-off-by: Anders Wallin <wallinux@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-kernel')
-rw-r--r--meta/recipes-kernel/lttng/babeltrace2/0001-tests-do-not-run-test-applications-from-.libs.patch28
-rwxr-xr-xmeta/recipes-kernel/lttng/babeltrace2/run-ptest9
-rw-r--r--meta/recipes-kernel/lttng/babeltrace2_2.0.1.bb92
3 files changed, 129 insertions, 0 deletions
diff --git a/meta/recipes-kernel/lttng/babeltrace2/0001-tests-do-not-run-test-applications-from-.libs.patch b/meta/recipes-kernel/lttng/babeltrace2/0001-tests-do-not-run-test-applications-from-.libs.patch
new file mode 100644
index 0000000000..805dde8064
--- /dev/null
+++ b/meta/recipes-kernel/lttng/babeltrace2/0001-tests-do-not-run-test-applications-from-.libs.patch
@@ -0,0 +1,28 @@
1From 582713cc9a013481eeef253195d644020f637ec4 Mon Sep 17 00:00:00 2001
2Message-Id: <582713cc9a013481eeef253195d644020f637ec4.1583403622.git.wallinux@gmail.com>
3From: Anders Wallin <wallinux@gmail.com>
4Date: Thu, 5 Mar 2020 11:20:04 +0100
5Subject: [PATCH] tests: do not run test applications from .libs
6
7Cross compile specific change
8
9Upstream-Status: Inappropriate [oe-core specific]
10
11Signed-off-by: Anders Wallin <wallinux@gmail.com>
12---
13 tests/lib/test_plugin | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/tests/lib/test_plugin b/tests/lib/test_plugin
17index 652c90cc..1f817c50 100755
18--- a/tests/lib/test_plugin
19+++ b/tests/lib/test_plugin
20@@ -26,4 +26,4 @@ fi
21 # shellcheck source=../utils/utils.sh
22 source "$UTILSSH"
23
24-"${BT_TESTS_BUILDDIR}/lib/plugin" "${BT_TESTS_BUILDDIR}/lib/test-plugin-plugins/.libs"
25+"${BT_TESTS_BUILDDIR}/lib/plugin" "${BT_TESTS_BUILDDIR}/lib/test-plugin-plugins"
26--
272.25.1
28
diff --git a/meta/recipes-kernel/lttng/babeltrace2/run-ptest b/meta/recipes-kernel/lttng/babeltrace2/run-ptest
new file mode 100755
index 0000000000..72fe223436
--- /dev/null
+++ b/meta/recipes-kernel/lttng/babeltrace2/run-ptest
@@ -0,0 +1,9 @@
1#!/bin/sh
2# use target=recheck if you want to recheck failing tests
3[ "$target" = "" ] && target=check
4
5# Without --ignore-exit, the tap harness causes any FAILs within a
6# test plan to raise ERRORs; this is just noise.
7makeargs="LOG_DRIVER_FLAGS=--ignore-exit abs_top_srcdir=$PWD abs_top_builddir=$PWD GREP=grep SED=sed PYTHON=python3"
8
9exec make -C tests -k -s $makeargs $target 2>/dev/null
diff --git a/meta/recipes-kernel/lttng/babeltrace2_2.0.1.bb b/meta/recipes-kernel/lttng/babeltrace2_2.0.1.bb
new file mode 100644
index 0000000000..16953d6807
--- /dev/null
+++ b/meta/recipes-kernel/lttng/babeltrace2_2.0.1.bb
@@ -0,0 +1,92 @@
1SUMMARY = "Babeltrace2 - Trace Format Babel Tower"
2DESCRIPTION = "Babeltrace provides trace read and write libraries in host side, as well as a trace converter, which used to convert LTTng 2.0 traces into human-readable log."
3HOMEPAGE = "http://babeltrace.org/"
4BUGTRACKER = "https://bugs.lttng.org/projects/babeltrace"
5LICENSE = "MIT & GPLv2 & LGPLv2.1 & BSD-2-Clause"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=a6a458c13f18385b7bc5069a6d7b176e"
7
8DEPENDS = "glib-2.0 util-linux popt bison-native flex-native"
9
10SRC_URI = "git://git.linuxfoundation.org/diamon/babeltrace.git;branch=stable-2.0 \
11 file://run-ptest \
12 file://0001-tests-do-not-run-test-applications-from-.libs.patch \
13 "
14SRCREV = "06df58f89ee51b1a2c6a2c187ec3f15691633910"
15UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>2(\.\d+)+)$"
16
17S = "${WORKDIR}/git"
18
19inherit autotools pkgconfig ptest
20
21EXTRA_OECONF = "--disable-debug-info"
22
23PACKAGECONFIG ??= "manpages"
24PACKAGECONFIG[manpages] = ", --disable-man-pages, asciidoc-native xmlto-native"
25
26FILES_${PN}-staticdev += "${libdir}/babeltrace2/plugins/*.a"
27FILES_${PN} += "${libdir}/babeltrace2/plugins/*.so"
28
29ASNEEDED = ""
30
31RDEPENDS_${PN}-ptest += "bash gawk python3"
32
33do_compile_ptest () {
34 make -C tests all
35}
36
37do_install_ptest () {
38 install -d "${D}${PTEST_PATH}/tests"
39
40 # Copy required files from source directory
41 for d in $(find "${S}/tests" -type d -printf '%P ') ; do
42 install -d "${D}${PTEST_PATH}/tests/$d"
43 find "${S}/tests/$d" -maxdepth 1 -executable -type f \
44 -exec install -t "${D}${PTEST_PATH}/tests/$d" {} +
45 find "${S}/tests/$d" -maxdepth 1 -name *.sh \
46 -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \;
47 find "${S}/tests/$d" -maxdepth 1 -name *.py \
48 -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \;
49 find "${S}/tests/$d" -maxdepth 1 -name *.expect \
50 -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \;
51 done
52 install -d "${D}${PTEST_PATH}/tests/data/ctf-traces/"
53 cp -a ${S}/tests/data/ctf-traces/* ${D}${PTEST_PATH}/tests/data/ctf-traces/
54
55 # Copy the tests directory tree and the executables and
56 # Makefiles found within.
57 install -D "${B}/tests/Makefile" "${D}${PTEST_PATH}/tests/"
58 for d in $(find "${B}/tests" -type d -not -name .libs -printf '%P ') ; do
59 install -d "${D}${PTEST_PATH}/tests/$d"
60 find "${B}/tests/$d" -maxdepth 1 -executable -type f \
61 -exec install -t "${D}${PTEST_PATH}/tests/$d" {} +
62 test -r "${B}/tests/$d/Makefile" && \
63 install -t "${D}${PTEST_PATH}/tests/$d" "${B}/tests/$d/Makefile"
64 find "${B}/tests/$d" -maxdepth 1 -name *.sh \
65 -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \;
66 done
67
68 for d in $(find "${B}/tests" -type d -name .libs -printf '%P ') ; do
69 for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do
70 cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f
71 done
72 done
73
74 # Prevent attempts to update Makefiles during test runs, and
75 # silence "Making check in $SUBDIR" messages.
76 find "${D}${PTEST_PATH}" -name Makefile -type f -exec \
77 sed -i \
78 -e '/Makefile:/,/^$/d' \
79 -e '/%: %.in/,/^$/d' \
80 -e '/echo "Making $$target in $$subdir"; \\/d' \
81 -e 's/^srcdir = \(.*\)/srcdir = ./' \
82 -e 's/^builddir = \(.*\)/builddir = ./' \
83 -e 's/^all-am:.*/all-am:/' \
84 {} +
85
86 # Substitute links to installed binaries.
87 install -d "${D}${PTEST_PATH}/src/cli/"
88 ln -s "${bindir}/babeltrace2" ${D}${PTEST_PATH}/src/cli/
89
90 # Remove architechture specific testfiles
91 rm -rf ${D}${PTEST_PATH}/tests/data/plugins/flt.lttng-utils.debug-info/*
92}