[Buildroot] [git commit] package/bluez5_utils: make tools optional
Arnout Vandecappelle (Essensium/Mind)
arnout at mind.be
Mon Aug 2 15:06:51 UTC 2021
commit: https://git.buildroot.net/buildroot/commit/?id=2245000fed43a53f35b8348441a7814d309adbdc
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
The tools are currently always build and installed. In many cases
those tools are not needed in a production system. So make this
step optional. This saves up to 2MB on the target.
Further tweak the deprecated option. It has effects when the --enable-tools
is set as well as when --enable-client is set. So explain this in the
options description and update the install step for gatttool to only be
added when client is enabled.
Signed-off-by: Michael Nosthoff <buildroot at heine.tech>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
---
package/bluez5_utils/Config.in | 16 +++++++++++++---
package/bluez5_utils/bluez5_utils.mk | 13 +++++++++++--
2 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/package/bluez5_utils/Config.in b/package/bluez5_utils/Config.in
index 40973e13cd..30e70fa03f 100644
--- a/package/bluez5_utils/Config.in
+++ b/package/bluez5_utils/Config.in
@@ -43,13 +43,23 @@ config BR2_PACKAGE_BLUEZ5_UTILS_MONITOR
help
Build monitor utility btmon.
+config BR2_PACKAGE_BLUEZ5_UTILS_TOOLS
+ bool "build tools"
+ help
+ Build tools like bluemoon, btattach, hex2hcd, l2test,
+ l2ping, mpris-proxy, rctest.
+
config BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED
bool "install deprecated tools"
- depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT
+ depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT || BR2_PACKAGE_BLUEZ5_UTILS_TOOLS
help
- Build deprecated tools. These currently include:
+ Build deprecated tools.
+
+ When "build tools" is selected these tools are installed:
hciattach, hciconfig, hcitool, hcidump, rfcomm, sdptool,
- ciptool, gatttool.
+ ciptool.
+
+ When CLI client is enabled "gatttool" is installed.
config BR2_PACKAGE_BLUEZ5_UTILS_EXPERIMENTAL
bool "build experimental tools"
diff --git a/package/bluez5_utils/bluez5_utils.mk b/package/bluez5_utils/bluez5_utils.mk
index 3551b14a69..5f5a7f44c9 100644
--- a/package/bluez5_utils/bluez5_utils.mk
+++ b/package/bluez5_utils/bluez5_utils.mk
@@ -20,7 +20,6 @@ BLUEZ5_UTILS_DEPENDENCIES = \
libglib2
BLUEZ5_UTILS_CONF_OPTS = \
- --enable-tools \
--enable-library \
--disable-cups \
--disable-manpages \
@@ -46,6 +45,12 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-monitor
endif
+ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_TOOLS),y)
+BLUEZ5_UTILS_CONF_OPTS += --enable-tools
+else
+BLUEZ5_UTILS_CONF_OPTS += --disable-tools
+endif
+
# experimental plugins
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_EXPERIMENTAL),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-experimental
@@ -125,12 +130,16 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-sixaxis
endif
-# install gatttool (For some reason upstream choose not to do it by default)
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED),y)
+# install gatttool (For some reason upstream choose not to do it by default)
+# gattool depends on the client for readline
+ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_CLIENT),y)
define BLUEZ5_UTILS_INSTALL_GATTTOOL
$(INSTALL) -D -m 0755 $(@D)/attrib/gatttool $(TARGET_DIR)/usr/bin/gatttool
endef
BLUEZ5_UTILS_POST_INSTALL_TARGET_HOOKS += BLUEZ5_UTILS_INSTALL_GATTTOOL
+endif
+
# hciattach_bcm43xx defines default firmware path in `/etc/firmware`, but
# Broadcom firmware blobs are usually located in `/lib/firmware`.
BLUEZ5_UTILS_CONF_ENV += \
More information about the buildroot
mailing list