Files
poky/meta/recipes-kernel/systemtap/systemtap_git.bb
Victor Kamensky 3e5c6cbf34 systemtap: move systemtap-exporter into separate package
stap-exporter runs a set of systemtap scripts and relays
their procfs outputs to remote HTTP clients on demand.

systemtap-exporter is not supposed to run in untrusted
environment. It starts HTTP server on some port. It does
not look safe enough to be included by default along with
the rest of systemtap.

Move systemtap-exporter, its systemd unit, configuration
files and examples scripts into separate package. So if one
needs it and understand its implication, he/she can include
it explicitely.

(From OE-Core rev: 03e01c26a297642dbe4b0e1c7cf2cbe3c225140e)

Signed-off-by: Victor Kamensky <kamensky@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-28 08:31:57 +00:00

64 lines
2.4 KiB
BlitzBasic

SUMMARY = "Script-directed dynamic tracing and performance analysis tool for Linux"
HOMEPAGE = "https://sourceware.org/systemtap/"
require systemtap_git.inc
SRC_URI += "file://0001-improve-reproducibility-for-c-compiling.patch"
DEPENDS = "elfutils"
EXTRA_OECONF += "--with-libelf=${STAGING_DIR_TARGET} --without-rpm \
--without-nss --without-avahi --without-dyninst \
--disable-server --disable-grapher --enable-prologues \
--with-python3 --without-python2-probes \
ac_cv_prog_have_javac=no \
ac_cv_prog_have_jar=no "
STAP_DOCS ?= "--disable-docs --disable-publican --disable-refdocs"
EXTRA_OECONF += "${STAP_DOCS} "
PACKAGECONFIG ??= "translator sqlite monitor python3-probes"
PACKAGECONFIG[translator] = "--enable-translator,--disable-translator,boost,python3-core bash perl"
PACKAGECONFIG[libvirt] = "--enable-libvirt,--disable-libvirt,libvirt"
PACKAGECONFIG[sqlite] = "--enable-sqlite,--disable-sqlite,sqlite3"
PACKAGECONFIG[monitor] = "--enable-monitor,--disable-monitor,ncurses json-c"
PACKAGECONFIG[python3-probes] = "--with-python3-probes,--without-python3-probes,python3-setuptools-native"
inherit autotools gettext pkgconfig distutils3-base systemd
PACKAGES =+ "${PN}-exporter"
FILES_${PN}-exporter = "${sysconfdir}/stap-exporter/* \
${sysconfdir}/sysconfig/stap-exporter \
${systemd_unitdir}/system/stap-exporter.service \
${sbindir}/stap-exporter"
RDEPENDS_${PN}-exporter = "${PN} python3-core python3-netclient"
SYSTEMD_SERVICE_${PN}-exporter = "stap-exporter.service"
do_configure_prepend () {
# Improve reproducibility for c++ object files
reltivepath="${@os.path.relpath(d.getVar('STAGING_INCDIR'), d.getVar('S'))}"
sed -i "s:@RELATIVE_STAGING_INCDIR@:$reltivepath:g" ${S}/stringtable.h
}
do_install_append () {
if [ ! -f ${D}${bindir}/stap ]; then
# translator disabled case, need to leave only minimal runtime
rm -rf ${D}${datadir}/${PN}
rm ${D}${libexecdir}/${PN}/stap-env
fi
# Fix makefile hardcoded path assumptions for systemd (assumes $prefix)
install -d `dirname ${D}${systemd_unitdir}`
mv ${D}${prefix}/lib/systemd `dirname ${D}${systemd_unitdir}`
rmdir ${D}${prefix}/lib --ignore-fail-on-non-empty
# Ensure correct ownership for files copied in
chown root:root ${D}${sysconfdir}/stap-exporter/* -R
}
BBCLASSEXTEND = "nativesdk"