diff --git a/meta/recipes-kernel/lttng/babeltrace2/0001-Make-manpages-multilib-identical.patch b/meta/recipes-kernel/lttng/babeltrace2/0001-Make-manpages-multilib-identical.patch index 2401b176e6..c2b76b1ed5 100644 --- a/meta/recipes-kernel/lttng/babeltrace2/0001-Make-manpages-multilib-identical.patch +++ b/meta/recipes-kernel/lttng/babeltrace2/0001-Make-manpages-multilib-identical.patch @@ -3,17 +3,20 @@ From: Jeremy Puhlman Date: Mon, 9 Mar 2020 21:10:35 +0000 Subject: [PATCH] Make manpages multilib identical -Upstream-Status: Pending +Upstream-Status: Submitted [https://review.lttng.org/c/babeltrace/+/14222] + Signed-off-by: Jeremy Puhlman +Signed-off-by: Bin Lan --- doc/man/asciidoc-attrs.conf.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/man/asciidoc-attrs.conf.in b/doc/man/asciidoc-attrs.conf.in -index ad1183f1..e11c7031 100644 +index 88fb13ce2..27858b720 100644 --- a/doc/man/asciidoc-attrs.conf.in +++ b/doc/man/asciidoc-attrs.conf.in -@@ -1,7 +1,7 @@ +@@ -4,8 +4,8 @@ + [attributes] # default values -system_plugin_path="@LIBDIR@/babeltrace2/plugins" @@ -24,5 +27,4 @@ index ad1183f1..e11c7031 100644 enable_debug_info="@ENABLE_DEBUG_INFO_VAL@" defrdport=5344 -- -2.24.1 - +2.34.1 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 deleted file mode 100644 index 805dde8064..0000000000 --- a/meta/recipes-kernel/lttng/babeltrace2/0001-tests-do-not-run-test-applications-from-.libs.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 582713cc9a013481eeef253195d644020f637ec4 Mon Sep 17 00:00:00 2001 -Message-Id: <582713cc9a013481eeef253195d644020f637ec4.1583403622.git.wallinux@gmail.com> -From: Anders Wallin -Date: Thu, 5 Mar 2020 11:20:04 +0100 -Subject: [PATCH] tests: do not run test applications from .libs - -Cross compile specific change - -Upstream-Status: Inappropriate [oe-core specific] - -Signed-off-by: Anders Wallin ---- - tests/lib/test_plugin | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/lib/test_plugin b/tests/lib/test_plugin -index 652c90cc..1f817c50 100755 ---- a/tests/lib/test_plugin -+++ b/tests/lib/test_plugin -@@ -26,4 +26,4 @@ fi - # shellcheck source=../utils/utils.sh - source "$UTILSSH" - --"${BT_TESTS_BUILDDIR}/lib/plugin" "${BT_TESTS_BUILDDIR}/lib/test-plugin-plugins/.libs" -+"${BT_TESTS_BUILDDIR}/lib/plugin" "${BT_TESTS_BUILDDIR}/lib/test-plugin-plugins" --- -2.25.1 - diff --git a/meta/recipes-kernel/lttng/babeltrace2/0001-tests-fix-test-applications-in-cpp-common.patch b/meta/recipes-kernel/lttng/babeltrace2/0001-tests-fix-test-applications-in-cpp-common.patch new file mode 100644 index 0000000000..87f94fb087 --- /dev/null +++ b/meta/recipes-kernel/lttng/babeltrace2/0001-tests-fix-test-applications-in-cpp-common.patch @@ -0,0 +1,129 @@ +From 1dc81f272855d94e6a78f7d10ea952745d991aa9 Mon Sep 17 00:00:00 2001 +From: Bin Lan +Date: Tue, 11 Mar 2025 17:19:11 +0800 +Subject: [PATCH] Tests: fix test applications in cpp-common are needed to + re-build + +Test applications in cpp-common directory are needed to re-build when +calling make check in embedded system. The following error is shown +when running test applications: +make[3]: *** No rule to make target 'cpp-common/test-c-string-view.cpp', +needed by 'cpp-common/test-c-string-view.o'. +make[3]: *** No rule to make target '../tests/utils/tap/libtap.la', +needed by 'cpp-common/test-c-string-view'. +make[3]: *** No rule to make target '../src/common/libcommon.la', +needed by 'cpp-common/test-c-string-view'. +make[3]: *** No rule to make target '../src/logging/liblogging.la', +needed by 'cpp-common/test-c-string-view'. +... +make[2]: *** [Makefile:1274: check-TESTS] Error 2 +make[1]: *** [Makefile:1805: check-am] Error 2 +make: *** [Makefile:1033: check-recursive] Error 1 +make: Target 'check' not remade because of errors. + +Create some new shell scripts which are used to call test applications +in cpp-common directory. Then these test applications can run without +actually examining the source code. + +Upstream-Status: Submitted [https://review.lttng.org/c/babeltrace/+/14213] + +Signed-off-by: Bin Lan +--- + tests/Makefile.am | 6 +++--- + tests/cpp-common/test-c-string-view.sh | 17 +++++++++++++++++ + tests/cpp-common/test-unicode-conv.sh | 17 +++++++++++++++++ + tests/cpp-common/test-uuid.sh | 17 +++++++++++++++++ + 4 files changed, 54 insertions(+), 3 deletions(-) + create mode 100755 tests/cpp-common/test-c-string-view.sh + create mode 100755 tests/cpp-common/test-unicode-conv.sh + create mode 100755 tests/cpp-common/test-uuid.sh + +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 2a4022bc4..c79b77b32 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -129,9 +129,9 @@ cpp_common_test_unicode_conv_LDADD = \ + $(COMMON_TEST_LDADD) + + TESTS_CPP_COMMON = \ +- cpp-common/test-c-string-view \ +- cpp-common/test-uuid \ +- cpp-common/test-unicode-conv ++ cpp-common/test-c-string-view.sh \ ++ cpp-common/test-uuid.sh \ ++ cpp-common/test-unicode-conv.sh + + TESTS_LIB = \ + lib/test-bt-uuid \ +diff --git a/tests/cpp-common/test-c-string-view.sh b/tests/cpp-common/test-c-string-view.sh +new file mode 100755 +index 000000000..9c2ca5818 +--- /dev/null ++++ b/tests/cpp-common/test-c-string-view.sh +@@ -0,0 +1,17 @@ ++#!/bin/bash ++# ++# SPDX-License-Identifier: GPL-2.0-only ++# ++# Copyright (C) 2025 Bin Lan ++# ++ ++if [ -n "${BT_TESTS_SRCDIR:-}" ]; then ++ UTILSSH="$BT_TESTS_SRCDIR/utils/utils.sh" ++else ++ UTILSSH="$(dirname "$0")/../utils/utils.sh" ++fi ++ ++# shellcheck source=../utils/utils.sh ++source "$UTILSSH" ++ ++"${BT_TESTS_BUILDDIR}/cpp-common/test-c-string-view" "$BT_TESTS_BT2_BIN" +diff --git a/tests/cpp-common/test-unicode-conv.sh b/tests/cpp-common/test-unicode-conv.sh +new file mode 100755 +index 000000000..df490b2eb +--- /dev/null ++++ b/tests/cpp-common/test-unicode-conv.sh +@@ -0,0 +1,17 @@ ++#!/bin/bash ++# ++# SPDX-License-Identifier: GPL-2.0-only ++# ++# Copyright (C) 2025 Bin Lan ++# ++ ++if [ -n "${BT_TESTS_SRCDIR:-}" ]; then ++ UTILSSH="$BT_TESTS_SRCDIR/utils/utils.sh" ++else ++ UTILSSH="$(dirname "$0")/../utils/utils.sh" ++fi ++ ++# shellcheck source=../utils/utils.sh ++source "$UTILSSH" ++ ++"${BT_TESTS_BUILDDIR}/cpp-common/test-unicode-conv" "$BT_TESTS_BT2_BIN" +diff --git a/tests/cpp-common/test-uuid.sh b/tests/cpp-common/test-uuid.sh +new file mode 100755 +index 000000000..8c65daa94 +--- /dev/null ++++ b/tests/cpp-common/test-uuid.sh +@@ -0,0 +1,17 @@ ++#!/bin/bash ++# ++# SPDX-License-Identifier: GPL-2.0-only ++# ++# Copyright (C) 2025 Bin Lan ++# ++ ++if [ -n "${BT_TESTS_SRCDIR:-}" ]; then ++ UTILSSH="$BT_TESTS_SRCDIR/utils/utils.sh" ++else ++ UTILSSH="$(dirname "$0")/../utils/utils.sh" ++fi ++ ++# shellcheck source=../utils/utils.sh ++source "$UTILSSH" ++ ++"${BT_TESTS_BUILDDIR}/cpp-common/test-uuid" "$BT_TESTS_BT2_BIN" +-- +2.34.1 + diff --git a/meta/recipes-kernel/lttng/babeltrace2/0001-tests-set-the-correct-plugin-directory.patch b/meta/recipes-kernel/lttng/babeltrace2/0001-tests-set-the-correct-plugin-directory.patch new file mode 100644 index 0000000000..7ac7582ad7 --- /dev/null +++ b/meta/recipes-kernel/lttng/babeltrace2/0001-tests-set-the-correct-plugin-directory.patch @@ -0,0 +1,30 @@ +From 32494b1726a881883cb6d317ab76d1ec3f1fa740 Mon Sep 17 00:00:00 2001 +From: Bin Lan +Date: Wed, 5 Mar 2025 10:51:11 +0800 +Subject: [PATCH] tests: set the correct directory of plugin shared library + +The plugin shared libraries are put in test-plugins-plugins/.libs when +building in a host. test-plugins-plugins/.libs is not exist when cross +build. The plugin shared libraries are put in test-plugins-plugins +directory when cross build. + +Upstream-Status: Inappropriate [oe specific] + +Signed-off-by: Bin Lan +--- + tests/lib/test-plugins.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/lib/test-plugins.sh b/tests/lib/test-plugins.sh +index f83e42baa..939236393 100755 +--- a/tests/lib/test-plugins.sh ++++ b/tests/lib/test-plugins.sh +@@ -14,4 +14,4 @@ fi + # shellcheck source=../utils/utils.sh + source "$UTILSSH" + +-"${BT_TESTS_BUILDDIR}/lib/test-plugins" "${BT_TESTS_BUILDDIR}/lib/test-plugins-plugins/.libs" ++"${BT_TESTS_BUILDDIR}/lib/test-plugins" "${BT_TESTS_BUILDDIR}/lib/test-plugins-plugins" +-- +2.34.1 + diff --git a/meta/recipes-kernel/lttng/babeltrace2/run-ptest b/meta/recipes-kernel/lttng/babeltrace2/run-ptest index 71a9c81bfb..a0bf33b75d 100755 --- a/meta/recipes-kernel/lttng/babeltrace2/run-ptest +++ b/meta/recipes-kernel/lttng/babeltrace2/run-ptest @@ -4,7 +4,7 @@ # Without --ignore-exit, the tap harness causes any FAILs within a # test plan to raise ERRORs; this is just noise. -makeargs="LOG_DRIVER_FLAGS=--ignore-exit abs_top_srcdir=$PWD abs_top_builddir=$PWD GREP=grep SED=sed PYTHON=python3" +makeargs="LOG_DRIVER_FLAGS=--ignore-exit abs_top_srcdir=$PWD abs_top_builddir=$PWD" exec 2> error.log make -C tests -k -s $makeargs $target @@ -16,4 +16,4 @@ if [ -e tests/test-suite.log ]; then cat tests/test-suite.log fi -exit $exitcode \ No newline at end of file +exit $exitcode diff --git a/meta/recipes-kernel/lttng/babeltrace2_2.0.6.bb b/meta/recipes-kernel/lttng/babeltrace2_2.1.0.bb similarity index 66% rename from meta/recipes-kernel/lttng/babeltrace2_2.0.6.bb rename to meta/recipes-kernel/lttng/babeltrace2_2.1.0.bb index 6a0052f779..bf9df2a32d 100644 --- a/meta/recipes-kernel/lttng/babeltrace2_2.0.6.bb +++ b/meta/recipes-kernel/lttng/babeltrace2_2.1.0.bb @@ -2,17 +2,18 @@ SUMMARY = "Babeltrace2 - Trace Format Babel Tower" DESCRIPTION = "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." HOMEPAGE = "http://babeltrace.org/" BUGTRACKER = "https://bugs.lttng.org/projects/babeltrace" -LICENSE = "MIT & GPL-2.0-only & LGPL-2.1-only & BSD-2-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=a6a458c13f18385b7bc5069a6d7b176e" +LICENSE = "MIT & GPL-2.0-only & LGPL-2.1-only & BSD-2-Clause & BSD-4-Clause & GPL-3.0-or-later & CC-BY-SA-4.0 & PSF-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f6b015e4f388d6e78adb1b1f9a887d06" -DEPENDS = "glib-2.0 util-linux popt bison-native flex-native" +DEPENDS = "glib-2.0 util-linux popt bison-native flex-native virtual/libiconv" -SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-2.0;protocol=https \ +SRC_URI = "git://git.efficios.com/babeltrace.git;branch=stable-2.1;protocol=https \ file://run-ptest \ - file://0001-tests-do-not-run-test-applications-from-.libs.patch \ file://0001-Make-manpages-multilib-identical.patch \ + file://0001-tests-fix-test-applications-in-cpp-common.patch \ + file://0001-tests-set-the-correct-plugin-directory.patch \ " -SRCREV = "0a6632f77801f3218a288604c646f8a39cb0d2c4" +SRCREV = "e61d41ff3c3ac6a123930d4e60cf710ff9ea18e0" UPSTREAM_CHECK_GITTAGREGEX = "v(?P2(\.\d+)+)$" S = "${WORKDIR}/git" @@ -32,6 +33,15 @@ LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld ptest', '-fuse-ld # coreutils since we need full mktemp RDEPENDS:${PN}-ptest += "bash gawk python3 make grep coreutils findutils" +RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-utf-16 glibc-gconv-utf-32" + +do_configure:append() { + # when doing cross compile, the path ${B}/src/plugins/ctf/common/src/metadata/tsdl + # is not created by the babeltrace2 build system. It is need when generating + # parser.cpp by executing /bin/bash ../../git/config/ylwrap. + # So make this directory after configuration. + mkdir -p ${B}/src/plugins/ctf/common/src/metadata/tsdl +} do_compile_ptest () { make -C tests all @@ -51,6 +61,12 @@ do_install_ptest () { -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \; find "${S}/tests/$d" -maxdepth 1 -name *.expect \ -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \; + find "${S}/tests/$d" -maxdepth 1 -name *.ref \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \; + find "${S}/tests/$d" -maxdepth 1 -name *.mctf \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \; + find "${S}/tests/$d" -maxdepth 1 -name *.json \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} \; done install -d "${D}${PTEST_PATH}/tests/data/ctf-traces/" cp -a ${S}/tests/data/ctf-traces/* ${D}${PTEST_PATH}/tests/data/ctf-traces/ @@ -92,6 +108,16 @@ do_install_ptest () { # Remove architechture specific testfiles rm -rf ${D}${PTEST_PATH}/tests/data/plugins/flt.lttng-utils.debug-info/* + + # Set the correct environment variables when running embedded environment + envsh=${D}${PTEST_PATH}/tests/utils/env.sh + sed -i "/BT_TESTS_SRCDIR/c\_set_var_def BT_TESTS_SRCDIR '${PTEST_PATH}/tests'" $envsh + sed -i "/BT_TESTS_BUILDDIR/c\_set_var_def BT_TESTS_BUILDDIR '${PTEST_PATH}/tests'" $envsh + sed -i "/BT_TESTS_AWK_BIN/c\_set_var_def BT_TESTS_AWK_BIN 'gawk'" $envsh + sed -i "/BT_TESTS_GREP_BIN/c\_set_var_def BT_TESTS_GREP_BIN 'grep'" $envsh + sed -i "/BT_TESTS_PYTHON_BIN/c\_set_var_def BT_TESTS_PYTHON_BIN 'python3'" $envsh + sed -i "/BT_TESTS_SED_BIN/c\_set_var_def BT_TESTS_SED_BIN 'sed'" $envsh + sed -i "/BT_TESTS_CC_BIN/c\_set_var_def BT_TESTS_CC_BIN ''" $envsh } do_install:append:class-nativesdk() {