From c8f4712845034714fed763414987305bacafe1fd Mon Sep 17 00:00:00 2001 From: Brad Bishop Date: Mon, 24 Jun 2019 09:36:18 -0400 Subject: subtree updates poky: 50d272863d..0b3e371116: Alistair Francis (1): recipes-bsp/opensbi: Fix the u-boot payload name Changqing Li (2): update-rc.d: update SRCREV and license checksum update-rc.d: support enable/disable options Chen Qi (2): context.py: avoid skipping tests by meaningless command argument oeqa: avoid class setup method to run when skipping the whole class Joe Slater (1): glib-2.0: Fix CVE-2019-12450 Jonathan Rajotte (1): lttng-tools: update to 2.10.7 Joseph Reynolds (1): dropbear: new feature: disable-weak-ciphers Joshua Watt (4): perl: Improve ptest package reproducibility python3: Reformat sysconfig perl: Reproducible build fixes bash: Remove .build files for reproducible builds Martin Jansa (1): gcc-runtime.inc: create the correct directory before creating the symlinks in it Ricardo Ribalda Delgado (1): go: avoid host contamination by GOCACHE Ross Burton (1): pigz: bump alternative priority Tim Orling (1): ptest-packagelists.inc: add libmodule-build-perl-ptest meta-openembedded: 3b245e4fe8..64974b8779: Adrian Bunk (9): libauthen-radius-perl: Remove manual RDEPENDS from PN-ptest to PN package network-manager-applet: Remove obsolete dbus-glib and libnm-glib dependencies ndctl: Remove the unnecessary dependency on virtual/kernel tipcutils: Remove the unnecessary dependency on virtual/kernel xl2tpd: Remove the old 1.3.6 version gpsd: Force using python-scons-native for now efibootmgr: Remove, was moved to oe-core efivar: Remove, was moved to oe-core wireless-regdb: Remove, was moved to oe-core Andrey Zhizhikin (1): cpuburn-arm: add aarch64 machine and build configuration Ankit Navik (1): safec: Add Safe C license Bartosz Golaszewski (1): libgpiod: upgrade to v1.4 Hongxu Jia (1): dracut: fix generated initramfs boot failure under bash 5 Kai Kang (1): xfce4-screensaver: 0.1.4 -> 0.1.5 Khem Raj (5): stressapptest: Fix build with libc++ stressapptest: Implement reading sysfs and use it if sysconf is not there stressapptest: Use git SHA instead of git archive gmime: Add recipe pidgin-sipe: Depend on gmime Maciej Pijanowski (1): recipes-benchmark/stressapptest_1.0.9.bb: add recipe Mingli Yu (3): mariadb: Upgrade to 10.3.16 mozjs: Fix do_patch error for mips64-n32 python-lxml: replace -Og with -O for mips64-32 Naveen Saini (1): pm-graph: fix multilib build failure Nicola Lunghi (1): libp11: No need to delete *.la anymore Oleksandr Kravchuk (1): openconnect: update to 8.03 Pascal Bach (3): protobuf: 3.6.1 -> 3.8.0 protobuf-c: add patch for protobuf 3 compatibility python3-protobuf, python-protobuf: 3.6.1 -> 3.8.0 Persian Prince (1): blueman_%.bbappend: Avoid PAK archive (application/x-pak) Saikiran Madugula (1): gitver: Pass git directory argument to gitrev_run Tim Orling (1): libmodule-build-perl: drop, has moved to oe-core Yi Zhao (1): snort: upgrade 2.9.11.1 -> 2.9.13 Zang Ruochen (3): python-twisted: upgrade 19.2.0 -> 19.2.1 python-wrapt: upgrade 1.11.1 -> 1.11.2 python-certifi: upgrade 2019.3.9 -> 2019.6.16 Change-Id: I0c3385628e0382c56c94fa27ba4d14e301c2e558 Signed-off-by: Brad Bishop --- .../recipes-kernel/lttng/lttng-tools_2.10.7.bb | 162 +++++++++++++++++++++ 1 file changed, 162 insertions(+) create mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools_2.10.7.bb (limited to 'poky/meta/recipes-kernel/lttng/lttng-tools_2.10.7.bb') diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.10.7.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.10.7.bb new file mode 100644 index 000000000..469ad111c --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-tools_2.10.7.bb @@ -0,0 +1,162 @@ +SECTION = "devel" +SUMMARY = "Linux Trace Toolkit Control" +DESCRIPTION = "The Linux trace toolkit is a suite of tools designed \ +to extract program execution details from the Linux operating system \ +and interpret them." + +LICENSE = "GPLv2 & LGPLv2.1" +LIC_FILES_CHKSUM = "file://LICENSE;md5=01d7fc4496aacf37d90df90b90b0cac1 \ + file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://lgpl-2.1.txt;md5=0f0d71500e6a57fd24d825f33242b9ca" + +DEPENDS = "liburcu popt libxml2 util-linux" +RDEPENDS_${PN} = "libgcc" +RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod lttng-modules sed" +RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" +RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" +# babelstats.pl wants getopt-long +RDEPENDS_${PN}-ptest += "perl-module-getopt-long" + +PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ + am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ + PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ +" +PACKAGECONFIG ??= "lttng-ust" +PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" +PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" +PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" +PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" +PACKAGECONFIG_remove_arc = "lttng-ust" + +SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ + file://x32.patch \ + file://run-ptest \ + file://lttng-sessiond.service \ + file://0001-Skip-when-testapp-is-not-present.patch \ + file://0002-Fix-check-for-lttng-modules-presence-before-testing.patch \ + " + +SRC_URI[md5sum] = "e7804d10e4cade381e241601f6047373" +SRC_URI[sha256sum] = "ed71ebe00c5d985c74f30e97b614e909573cbd9276c85e05d9557a0b817a1312" + +inherit autotools ptest pkgconfig useradd python3-dir manpages systemd + +SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service" +SYSTEMD_AUTO_ENABLE = "disable" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "tracing" + +FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ + ${PYTHON_SITEPACKAGES_DIR}/*" +FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" +FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" + +# Since files are installed into ${libdir}/lttng/libexec we match +# the libexec insane test so skip it. +# Python module needs to keep _lttng.so +INSANE_SKIP_${PN} = "libexec dev-so" +INSANE_SKIP_${PN}-dbg = "libexec" + +do_install_append () { + # install systemd unit file + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system +} + +do_install_ptest () { + for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/load-42*.lttng tests/regression/tools/save-load/configuration/load-42*.lttng ; do + install -D "${B}/$f" "${D}${PTEST_PATH}/$f" + done + + for f in config/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-3.0.xsd; do + install -D "${S}/$f" "${D}${PTEST_PATH}/$f" + done + + # Prevent 'make check' from recursing into non-test subdirectories. + sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" + + # We don't need these + sed -i -e '/dist_noinst_SCRIPTS = /,/^$/d' "${D}${PTEST_PATH}/tests/Makefile" + + # We shouldn't need to build anything in tests/utils + sed -i -e 's!am__append_1 = . utils!am__append_1 = . !' \ + "${D}${PTEST_PATH}/tests/Makefile" + + # Copy the tests directory tree and the executables and + # Makefiles found within. + for d in $(find "${B}/tests" -type d -not -name .libs -printf '%P ') ; do + install -d "${D}${PTEST_PATH}/tests/$d" + find "${B}/tests/$d" -maxdepth 1 -executable -type f \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + + # Take all .py scripts for tests using the python bindings. + find "${B}/tests/$d" -maxdepth 1 -type f -name "*.py" \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + + test -r "${B}/tests/$d/Makefile" && \ + install -t "${D}${PTEST_PATH}/tests/$d" "${B}/tests/$d/Makefile" + done + + for d in $(find "${B}/tests" -type d -name .libs -printf '%P ') ; do + for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do + cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f + case $f in + *.so) + install -d ${D}${PTEST_PATH}/tests/$d/ + ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f + # Remove any rpath/runpath to pass QA check. + chrpath --delete ${D}${PTEST_PATH}/tests/$d/$f + ;; + esac + done + done + + # + # Use the versioned libs of liblttng-ust-dl. + # + ustdl="${D}${PTEST_PATH}/tests/regression/ust/ust-dl/test_ust-dl.py" + if [ -e $ustdl ]; then + sed -i -e 's!:liblttng-ust-dl.so!:liblttng-ust-dl.so.0!' $ustdl + fi + + install ${B}/tests/unit/ini_config/sample.ini ${D}${PTEST_PATH}/tests/unit/ini_config/ + + # We shouldn't need to build anything in tests/regression/tools + sed -i -e 's!^SUBDIRS = tools !SUBDIRS = !' \ + "${D}${PTEST_PATH}/tests/regression/Makefile" + + # Prevent attempts to update Makefiles during test runs, and + # silence "Making check in $SUBDIR" messages. + find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ + sed -i -e '/Makefile:/,/^$/d' -e '/%: %.in/,/^$/d' \ + -e '/echo "Making $$target in $$subdir"; \\/d' \ + -e 's/^srcdir = \(.*\)/srcdir = ./' \ + -e 's/^builddir = \(.*\)/builddir = ./' \ + -e 's/^all-am:.*/all-am:/' \ + {} + + + find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ + touch -r "${B}/Makefile" {} + + + # + # Need to stop generated binaries from rebuilding by removing their source dependencies + # + sed -e 's#\(^test.*OBJECTS.=\)#disable\1#g' \ + -e 's#\(^test.*DEPENDENCIES.=\)#disable\1#g' \ + -e 's#\(^test.*SOURCES.=\)#disable\1#g' \ + -e 's#\(^test.*LDADD.=\)#disable\1#g' \ + -i ${D}${PTEST_PATH}/tests/unit/Makefile + + # Substitute links to installed binaries. + for prog in lttng lttng-relayd lttng-sessiond lttng-consumerd lttng-crash; do + exedir="${D}${PTEST_PATH}/src/bin/${prog}" + install -d "$exedir" + case "$prog" in + lttng-consumerd) + ln -s "${libdir}/lttng/libexec/$prog" "$exedir" + ;; + *) + ln -s "${bindir}/$prog" "$exedir" + ;; + esac + done +} -- cgit v1.2.3