summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-08-27 09:56:28 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-08-27 21:41:57 +0100
commitbf7cbaff417b45c15a11034f2809193a563064b7 (patch)
treebe60e34570430ec0265c45144ad140ae0474347a
parent194d0ecc9846c5aff6a3e4f87c5719275f4f8a00 (diff)
downloadpoky-bf7cbaff417b45c15a11034f2809193a563064b7.tar.gz
lttng: Move platform logic to dedicated inc file
Some platforms support kernel tracing, some support userspace tracing. This change: * Moves the knowledge/config to one place in an inc file * Allows lttng-tools to build without lttng-modules * Hence enables tools+ust for riscv64 * Has the packagegroup just depend on lttng-tools which will pull in ust/modules as needed (From OE-Core rev: 1824cf062df928de65c1bff5e86e26b7b4d9d784) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb11
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules_2.12.2.bb2
-rw-r--r--meta/recipes-kernel/lttng/lttng-platforms.inc17
-rw-r--r--meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb8
-rw-r--r--meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb2
5 files changed, 25 insertions, 15 deletions
diff --git a/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb b/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb
index 608e406f83..17b1391a47 100644
--- a/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb
+++ b/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb
@@ -35,17 +35,8 @@ SYSTEMTAP_libc-musl = ""
35SYSTEMTAP_nios2 = "" 35SYSTEMTAP_nios2 = ""
36SYSTEMTAP_riscv64 = "" 36SYSTEMTAP_riscv64 = ""
37 37
38# lttng-ust uses sched_getcpu() which is not there on for some platforms.
39LTTNGUST = "lttng-ust"
40LTTNGUST_arc = ""
41
42LTTNGTOOLS = "lttng-tools" 38LTTNGTOOLS = "lttng-tools"
43LTTNGTOOLS_arc = "" 39LTTNGTOOLS_arc = ""
44LTTNGTOOLS_riscv64 = ""
45
46LTTNGMODULES = "lttng-modules"
47LTTNGMODULES_arc = ""
48LTTNGMODULES_riscv64 = ""
49 40
50BABELTRACE = "babeltrace" 41BABELTRACE = "babeltrace"
51BABELTRACE2 = "babeltrace2" 42BABELTRACE2 = "babeltrace2"
@@ -69,9 +60,7 @@ VALGRIND_linux-gnun32 = ""
69 60
70RDEPENDS_${PN} = "\ 61RDEPENDS_${PN} = "\
71 ${PROFILETOOLS} \ 62 ${PROFILETOOLS} \
72 ${LTTNGUST} \
73 ${LTTNGTOOLS} \ 63 ${LTTNGTOOLS} \
74 ${LTTNGMODULES} \
75 ${BABELTRACE} \ 64 ${BABELTRACE} \
76 ${BABELTRACE2} \ 65 ${BABELTRACE2} \
77 ${SYSTEMTAP} \ 66 ${SYSTEMTAP} \
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.12.2.bb b/meta/recipes-kernel/lttng/lttng-modules_2.12.2.bb
index b9b3643001..c2fc65e019 100644
--- a/meta/recipes-kernel/lttng/lttng-modules_2.12.2.bb
+++ b/meta/recipes-kernel/lttng/lttng-modules_2.12.2.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128"
6 6
7inherit module 7inherit module
8 8
9COMPATIBLE_HOST_riscv64 = "null" 9include lttng-platforms.inc
10 10
11SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ 11SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
12 file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ 12 file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \
diff --git a/meta/recipes-kernel/lttng/lttng-platforms.inc b/meta/recipes-kernel/lttng/lttng-platforms.inc
new file mode 100644
index 0000000000..aa8220bbb4
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-platforms.inc
@@ -0,0 +1,17 @@
1#
2# Whether the platform supports kernel tracing
3#
4LTTNGMODULES = "lttng-modules"
5LTTNGMODULES_arc = ""
6LTTNGMODULES_riscv64 = ""
7
8COMPATIBLE_HOST_riscv64_pn-lttng-modules = "null"
9COMPATIBLE_HOST_arc_pn-lttng-modules = "null"
10
11# Whether the platform supports userspace tracing
12# lttng-ust uses sched_getcpu() which is not there on for some platforms.
13LTTNGUST = "lttng-ust"
14LTTNGUST_arc = ""
15
16COMPATIBLE_HOST_arc_pn-lttng-ust = "null"
17
diff --git a/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb b/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb
index 0614e86713..f7e6ec2cba 100644
--- a/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb
+++ b/meta/recipes-kernel/lttng/lttng-tools_2.12.2.bb
@@ -9,9 +9,12 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=40ef17463fbd6f377db3c47b1cbaded8 \
9 file://LICENSES/GPL-2.0;md5=e68f69a54b44ba526ad7cb963e18fbce \ 9 file://LICENSES/GPL-2.0;md5=e68f69a54b44ba526ad7cb963e18fbce \
10 file://LICENSES/LGPL-2.1;md5=9920968d0f2ff585ce61fae30344dd95" 10 file://LICENSES/LGPL-2.1;md5=9920968d0f2ff585ce61fae30344dd95"
11 11
12include lttng-platforms.inc
13
12DEPENDS = "liburcu popt libxml2 util-linux" 14DEPENDS = "liburcu popt libxml2 util-linux"
13RDEPENDS_${PN} = "libgcc" 15RDEPENDS_${PN} = "libgcc"
14RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod lttng-modules sed python3-core" 16RRECOMMENDS_${PN} += "${LTTNGMODULES}"
17RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod ${LTTNGMODULES} sed python3-core"
15RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" 18RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
16RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" 19RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils"
17# babelstats.pl wants getopt-long 20# babelstats.pl wants getopt-long
@@ -21,12 +24,11 @@ PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \
21 am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ 24 am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \
22 PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ 25 PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \
23" 26"
24PACKAGECONFIG ??= "lttng-ust" 27PACKAGECONFIG ??= "${LTTNGUST}"
25PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" 28PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native"
26PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" 29PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust"
27PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" 30PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod"
28PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" 31PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native"
29PACKAGECONFIG_remove_arc = "lttng-ust"
30 32
31SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ 33SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \
32 file://0001-tests-do-not-strip-a-helper-library.patch \ 34 file://0001-tests-do-not-strip-a-helper-library.patch \
diff --git a/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb b/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb
index ad544d1b4a..67a4307c7b 100644
--- a/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb
+++ b/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb
@@ -15,6 +15,8 @@ PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \
15 15
16inherit autotools lib_package manpages python3native 16inherit autotools lib_package manpages python3native
17 17
18include lttng-platforms.inc
19
18EXTRA_OECONF = "--disable-numa" 20EXTRA_OECONF = "--disable-numa"
19 21
20DEPENDS = "liburcu util-linux" 22DEPENDS = "liburcu util-linux"