systemtap: rationalise dependencies
Boost is an optional dependency but avoid build non-determinism by adding it as DEPENDS. It is only for the shared pointer types so can be disabled explicitly if required. Turn sqlite into a PACKAGECONFIG. Add a patch for the "monitor" feature to control the optional dependencies on ncurses and json-c. Previously this was enabled for target only but enable it everwhere now that json-c is available for native/nativesdk. Of course all of this was predicated about systemtap needing systemtap-native to be built, but it turns out that this dependency is due to oe-core 507bd2 which adds systemtap-native as DEPENDS for convenience. Remove this dependency, if the user wants systemtap-native then they can build it explicitly. (From OE-Core rev: fb9dc1cf7a2d6d5e22beb68f17b4c9c8d1136e37) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
25f3a3d980
commit
16882885f6
|
@ -0,0 +1,28 @@
|
|||
Add an option to explicitly disable the monitor (and therefore the dependency on
|
||||
json-c and ncurses).
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index cd781a2..e56079a 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -570,13 +574,16 @@ dnl See if we have enough libraries and tools to build the virt server
|
||||
fi
|
||||
AM_CONDITIONAL([BUILD_VIRT], [test "${have_libvirt}" == "yes" -a "${have_libxml2}" == "yes" -a "$enable_virt" != "no"])
|
||||
|
||||
+AC_ARG_ENABLE([monitor], AS_HELP_STRING([--disable-monitor],[Disable monitor]))
|
||||
+if test "$enable_monitor" != "no"; then
|
||||
dnl Check for presence of json-c and ncurses for use in monitor mode
|
||||
PKG_CHECK_MODULES([jsonc], [json-c], [have_jsonc=yes], [have_jsonc=no])
|
||||
PKG_CHECK_MODULES([ncurses], [ncurses], [have_ncurses=yes], [have_ncurses=no])
|
||||
-AM_CONDITIONAL([HAVE_MONITOR_LIBS], [test "${have_jsonc}" == "yes" -a "${have_ncurses}" == "yes"])
|
||||
if test "${have_jsonc}" == "yes" -a "${have_ncurses}" == yes; then
|
||||
AC_DEFINE([HAVE_MONITOR_LIBS],[1],[Define to 1 if json-c and ncurses libraries are installed])
|
||||
fi
|
||||
+fi
|
||||
+AM_CONDITIONAL([HAVE_MONITOR_LIBS], [test "${have_jsonc}" == "yes" -a "${have_ncurses}" == "yes" -a "$enable_monitor" != "no"])
|
||||
|
||||
AC_CACHE_CHECK([for assembler .section "?" flags support], stap_cv_sectionq, [
|
||||
old_CFLAGS="$CFLAGS"
|
|
@ -2,9 +2,7 @@ SUMMARY = "Script-directed dynamic tracing and performance analysis tool for Lin
|
|||
|
||||
require systemtap_git.inc
|
||||
|
||||
DEPENDS = "elfutils sqlite3 systemtap-native ncurses json-c"
|
||||
DEPENDS_class-native = "elfutils-native sqlite3-native gettext-native"
|
||||
DEPENDS_class-nativesdk = "nativesdk-elfutils nativesdk-sqlite3 nativesdk-gettext"
|
||||
DEPENDS = "boost elfutils"
|
||||
|
||||
RDEPENDS_${PN} += "python3-core bash"
|
||||
|
||||
|
@ -19,8 +17,10 @@ STAP_DOCS ?= "--disable-docs --disable-publican --disable-refdocs"
|
|||
|
||||
EXTRA_OECONF += "${STAP_DOCS} "
|
||||
|
||||
PACKAGECONFIG ??= ""
|
||||
PACKAGECONFIG ??= "sqlite monitor"
|
||||
PACKAGECONFIG[libvirt] = "--enable-libvirt,--disable-libvirt,libvirt"
|
||||
PACKAGECONFIG[sqlite] = "--enable-sqlite,--disable-sqlite,sqlite3"
|
||||
PACKAGECONFIG[monitor] = "--enable-monitor,--disable-monitor,ncurses json-c"
|
||||
|
||||
inherit autotools gettext pkgconfig
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@ SRC_URI = "git://sourceware.org/git/systemtap.git \
|
|||
file://system_map_location.patch \
|
||||
file://configure-allow-to-disable-libvirt.patch \
|
||||
file://x32_abi_time.patch \
|
||||
file://monitor-option.patch \
|
||||
"
|
||||
|
||||
# systemtap doesn't support mips
|
||||
|
|
Loading…
Reference in New Issue