systemtap: build and install uprobes.ko
SystemTap needs to provide uprobes.ko in order to support user space probing. Build and install the module on systems that support it. Additionally, split off common bits into systemtap_git.inc. (From OE-Core rev: 3cc4ba935444240b93abdc726342658ada803118) Signed-off-by: Wade Farnsworth <wade_farnsworth@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
c2c215b887
commit
98a994acff
|
@ -0,0 +1,42 @@
|
|||
DESCRIPTION = "UProbes kernel module for SystemTap"
|
||||
|
||||
require systemtap_git.inc
|
||||
|
||||
DEPENDS = "systemtap virtual/kernel"
|
||||
|
||||
PR = "r0"
|
||||
|
||||
# On systems without CONFIG_UTRACE, this package is empty.
|
||||
ALLOW_EMPTY_${PN} = 1
|
||||
|
||||
inherit module-base gettext
|
||||
|
||||
FILES_${PN} += "${datadir}/systemtap/runtime/uprobes"
|
||||
|
||||
EXTRA_OEMAKE = ""
|
||||
|
||||
# Compile and install the uprobes kernel module on machines with utrace
|
||||
# support. Note that staprun expects it in the systemtap/runtime directory,
|
||||
# not in /lib/modules.
|
||||
do_compile() {
|
||||
if grep -q "CONFIG_UTRACE=y" ${STAGING_KERNEL_DIR}/.config
|
||||
then
|
||||
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC LD CPP
|
||||
oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
|
||||
AR="${KERNEL_AR}" \
|
||||
-C ${STAGING_KERNEL_DIR} scripts
|
||||
oe_runmake KDIR=${STAGING_KERNEL_DIR} \
|
||||
M="${S}/runtime/uprobes/" \
|
||||
CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
|
||||
AR="${KERNEL_AR}" \
|
||||
-C "${S}/runtime/uprobes/"
|
||||
fi
|
||||
}
|
||||
|
||||
do_install() {
|
||||
if [ -e "${S}/runtime/uprobes/uprobes.ko" ]
|
||||
then
|
||||
install -d ${D}/usr/share/systemtap/runtime/uprobes/
|
||||
install -m 0644 ${S}/runtime/uprobes/uprobes.ko ${D}/usr/share/systemtap/runtime/uprobes/
|
||||
fi
|
||||
}
|
|
@ -1,16 +1,12 @@
|
|||
DESCRIPTION = "SystemTap - script-directed dynamic tracing and performance analysis tool for Linux"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
require systemtap_git.inc
|
||||
|
||||
DEPENDS = "elfutils sqlite3 systemtap-native"
|
||||
DEPENDS_virtclass-native = "elfutils-native sqlite3-native gettext-native"
|
||||
DEPENDS_virtclass-nativesdk = "elfutils-nativesdk sqlite3-nativesdk gettext-nativesdk"
|
||||
|
||||
SRCREV = "83bd2699d8cff2f2d6b9eaf5ea254e4cb6b33e81"
|
||||
PR = "r1"
|
||||
PV = "1.7+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://sources.redhat.com/git/systemtap.git;protocol=git"
|
||||
PR = "r2"
|
||||
|
||||
EXTRA_OECONF += "--with-libelf=${STAGING_DIR_TARGET} --without-rpm \
|
||||
ac_cv_file__usr_include_nss=no \
|
||||
|
@ -20,14 +16,6 @@ EXTRA_OECONF += "--with-libelf=${STAGING_DIR_TARGET} --without-rpm \
|
|||
ac_cv_file__usr_include_avahi_client=no \
|
||||
ac_cv_file__usr_include_avahi_common=no "
|
||||
|
||||
SRC_URI[md5sum] = "cb202866ed704c44a876d041f788bdee"
|
||||
SRC_URI[sha256sum] = "8ffe35caec0d937bd23fd78a3a8d94b58907cc0de0330b35e38f9f764815c459"
|
||||
|
||||
# systemtap doesn't support mips
|
||||
COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*|arm.*)-linux'
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit autotools gettext
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
SRCREV = "83bd2699d8cff2f2d6b9eaf5ea254e4cb6b33e81"
|
||||
PV = "1.7+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://sources.redhat.com/git/systemtap.git;protocol=git"
|
||||
|
||||
SRC_URI[md5sum] = "cb202866ed704c44a876d041f788bdee"
|
||||
SRC_URI[sha256sum] = "8ffe35caec0d937bd23fd78a3a8d94b58907cc0de0330b35e38f9f764815c459"
|
||||
|
||||
# systemtap doesn't support mips
|
||||
COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*|arm.*)-linux'
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
Loading…
Reference in New Issue