bluez5_utils:replace bluez version

replace bluez version

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
This commit is contained in:
ziv.xu
2023-04-07 15:28:06 +08:00
committed by Andy Hu
parent 1824bba224
commit a345d7d9c6
5 changed files with 37 additions and 216 deletions
@@ -1,33 +0,0 @@
From 5158827fded7cb4daf550a5956aff0c74f6c38fc Mon Sep 17 00:00:00 2001
From: Michael Nosthoff <bluez@heine.tech>
Date: Thu, 22 Jul 2021 21:36:13 +0200
Subject: [PATCH BlueZ] tools/mesh-cfgtest: include limits.h
mesh-cfgtest.c uses PATH_MAX so it should include limits.h.
fixes compilation error when enabling mesh support with musl-based
toolchains observed in buildroot autobuilders.
http://autobuild.buildroot.net/results/20cc47f54de0b0d4bdf108c3715c590ae8ab476f/
http://autobuild.buildroot.net/results/003968b25906579dbcf5a95d1e43fec0ab504ef5/
Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
---
tools/mesh-cfgtest.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/mesh-cfgtest.c b/tools/mesh-cfgtest.c
index fa0474faa..116ab7f16 100644
--- a/tools/mesh-cfgtest.c
+++ b/tools/mesh-cfgtest.c
@@ -21,6 +21,7 @@
#include <ftw.h>
#include <getopt.h>
#include <libgen.h>
+#include <limits.h>
#include <signal.h>
#include <stdio.h>
#include <time.h>
--
2.32.0
+29 -66
View File
@@ -1,5 +1,5 @@
config BR2_PACKAGE_BLUEZ5_UTILS
bool "bluez-utils"
bool "bluez-utils 5.x"
depends on BR2_USE_WCHAR # libglib2
depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2
depends on BR2_USE_MMU # dbus
@@ -9,12 +9,17 @@ config BR2_PACKAGE_BLUEZ5_UTILS
select BR2_PACKAGE_DBUS
select BR2_PACKAGE_LIBGLIB2
help
BlueZ utils
bluez utils version 5.x
Provides Stack, Library and Tooling for Bluetooth Classic
and Bluetooth LE.
With this release BlueZ only supports the new Bluetooth
Management kernel interface (introduced in Linux 3.4).
BlueZ utils will use systemd and/or udev if enabled.
For Low Energy support at least kernel version 3.5 is
needed.
The API is not backward compatible with BlueZ 4.
Bluez utils will use systemd and/or udev if enabled.
http://www.bluez.org
http://www.kernel.org/pub/linux/bluetooth
@@ -26,7 +31,7 @@ config BR2_PACKAGE_BLUEZ5_UTILS_OBEX
depends on BR2_INSTALL_LIBSTDCPP
select BR2_PACKAGE_LIBICAL
help
Enable OBEX support.
Enable the OBEX support in Bluez 5.x.
comment "OBEX support needs a toolchain w/ C++"
depends on !BR2_INSTALL_LIBSTDCPP
@@ -35,117 +40,75 @@ config BR2_PACKAGE_BLUEZ5_UTILS_CLIENT
bool "build CLI client"
select BR2_PACKAGE_READLINE
help
Build the command line client "bluetoothctl".
config BR2_PACKAGE_BLUEZ5_UTILS_MONITOR
bool "build monitor utility"
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.
Enable the Bluez 5.x command line client.
config BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED
bool "install deprecated tools"
depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT || BR2_PACKAGE_BLUEZ5_UTILS_TOOLS
bool "install deprecated tool"
depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT
help
Build deprecated tools.
When "build tools" is selected these tools are installed:
Build BlueZ 5.x deprecated tools. These currently include:
hciattach, hciconfig, hcitool, hcidump, rfcomm, sdptool,
ciptool.
When CLI client is enabled "gatttool" is installed.
ciptool, gatttool.
config BR2_PACKAGE_BLUEZ5_UTILS_EXPERIMENTAL
bool "build experimental tools"
bool "build experimental obexd plugin"
help
Build experimental tools. This is currently only the
"Nokia OBEX PC Suite tool". So, only if OBEX support is
enabled this option has an effect.
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO
bool "build audio plugins (a2dp and avrcp)"
help
Build plugins for audio profiles (for A2DP and AVRCP).
Build BlueZ 5.x experimental Nokia OBEX PC Suite plugin
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HEALTH
bool "build health plugin"
help
Build plugin for health profiles.
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID
bool "build hid plugin"
select BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HOG
help
Build plugin for HID (input) profiles.
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HOG
bool "build hog plugin"
help
Build plugin for HoG (input) profiles.
Build BlueZ 5.x health plugin
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_MESH
bool "build mesh plugin"
bool "build mesh profile"
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 # ell
select BR2_PACKAGE_ELL
select BR2_PACKAGE_JSON_C
select BR2_PACKAGE_READLINE
help
Build plugin for Mesh support.
Build BlueZ 5.x mesh plugin
comment "mesh profile needs a toolchain w/ headers >= 4.12"
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_MIDI
bool "build midi plugin"
bool "build midi profile"
select BR2_PACKAGE_ALSA_LIB
select BR2_PACKAGE_ALSA_LIB_SEQ
help
Build MIDI support via ALSA sequencer.
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NETWORK
bool "build network plugin"
default y
help
Build plugin for PANU, NAP, GN profiles.
Build BlueZ 5.x midi plugin
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC
bool "build nfc plugin"
help
Build plugin for NFC pairing.
Build BlueZ 5.x nfc plugin
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP
bool "build sap plugin"
help
Build plugin for SAP profile.
Build BlueZ 5.x sap plugin
config BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SIXAXIS
bool "build sixaxis plugin"
depends on BR2_PACKAGE_HAS_UDEV
select BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID # runtime
help
Build sixaxis plugin (support Sony Dualshock
Build BlueZ 5.x sixaxis plugin (support Sony Dualshock
controller)
comment "sixaxis plugin needs udev /dev management"
depends on !BR2_PACKAGE_HAS_UDEV
config BR2_PACKAGE_BLUEZ5_UTILS_TEST
bool "install test scripts"
bool "build tests"
help
Install the python test scripts from the "test" directory.
Build BlueZ 5.x tests
config BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI
bool "build hid2hci tool"
depends on BR2_PACKAGE_HAS_UDEV
select BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID # runtime
select BR2_PACKAGE_BLUEZ5_UTILS_TOOLS
help
Build hid2hci tool
Build BlueZ 5.x hid2hci tool
comment "hid2hci tool needs udev /dev management"
depends on !BR2_PACKAGE_HAS_UDEV
-61
View File
@@ -1,61 +0,0 @@
#!/bin/sh
DAEMON="bluetoothd"
PIDFILE="/var/run/$DAEMON.pid"
BLUETOOTHD_ARGS="-n"
# shellcheck source=/dev/null
[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"
start() {
printf 'Starting %s: ' "$DAEMON"
# shellcheck disable=SC2086 # we need the word splitting
start-stop-daemon -S -q -m -b -p "$PIDFILE" -x "/usr/libexec/bluetooth/$DAEMON" \
-- $BLUETOOTHD_ARGS
status=$?
if [ "$status" -eq 0 ]; then
echo "OK"
else
echo "FAIL"
fi
return "$status"
}
stop() {
printf 'Stopping %s: ' "$DAEMON"
start-stop-daemon -K -q -p "$PIDFILE"
status=$?
if [ "$status" -eq 0 ]; then
echo "OK"
else
echo "FAIL"
fi
return "$status"
}
restart() {
stop
sleep 1
start
}
reload() {
printf 'Reloading %s: ' "$DAEMON"
start-stop-daemon -K -s HUP -q -p "$PIDFILE"
status=$?
if [ "$status" -eq 0 ]; then
echo "OK"
else
echo "FAIL"
fi
return "$status"
}
case "$1" in
start|stop|restart|reload)
"$1";;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
+1 -2
View File
@@ -1,5 +1,4 @@
# From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc:
sha256 38090a5b750e17fc08d3e52178ed8d3254c5f4bd2c48830d5c1955b88e3bc0c2 bluez-5.62.tar.xz
# Locally computed
sha256 8863717113c4897e2ad3271fc808ea245319e6fd95eed2e934fae8e0894e9b88 bluez-5.55.tar.xz
sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING
sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING.LIB
+7 -54
View File
@@ -5,14 +5,12 @@
################################################################################
# Keep the version and patches in sync with bluez5_utils-headers
BLUEZ5_UTILS_VERSION = 5.62
BLUEZ5_UTILS_VERSION = 5.55
BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz
BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth
BLUEZ5_UTILS_INSTALL_STAGING = YES
BLUEZ5_UTILS_LICENSE = GPL-2.0+, LGPL-2.1+
BLUEZ5_UTILS_LICENSE_FILES = COPYING COPYING.LIB
BLUEZ5_UTILS_CPE_ID_VENDOR = bluez
BLUEZ5_UTILS_CPE_ID_PRODUCT = bluez
BLUEZ5_UTILS_DEPENDENCIES = \
$(if $(BR2_PACKAGE_BLUEZ5_UTILS_HEADERS),bluez5_utils-headers) \
@@ -20,9 +18,9 @@ BLUEZ5_UTILS_DEPENDENCIES = \
libglib2
BLUEZ5_UTILS_CONF_OPTS = \
--enable-tools \
--enable-library \
--disable-cups \
--disable-manpages \
--with-dbusconfdir=/etc
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_OBEX),y)
@@ -33,24 +31,16 @@ BLUEZ5_UTILS_CONF_OPTS += --disable-obex
endif
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_CLIENT),y)
define BLUEZ5_UTILS_INSTALL_BTD
$(INSTALL) -D -m 0755 $(@D)/src/bluetoothd $(TARGET_DIR)/usr/bin/bluetoothd
endef
BLUEZ5_UTILS_POST_INSTALL_TARGET_HOOKS += BLUEZ5_UTILS_INSTALL_BTD
BLUEZ5_UTILS_CONF_OPTS += --enable-client
BLUEZ5_UTILS_DEPENDENCIES += readline
else
BLUEZ5_UTILS_CONF_OPTS += --disable-client
endif
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_MONITOR),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-monitor
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
@@ -58,13 +48,6 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-experimental
endif
# enable audio plugins (a2dp and avrcp)
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-a2dp --enable-avrcp
else
BLUEZ5_UTILS_CONF_OPTS += --disable-a2dp --disable-avrcp
endif
# enable health plugin
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HEALTH),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-health
@@ -72,20 +55,6 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-health
endif
# enable hid plugin
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-hid
else
BLUEZ5_UTILS_CONF_OPTS += --disable-hid
endif
# enable hog plugin
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HOG),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-hog
else
BLUEZ5_UTILS_CONF_OPTS += --disable-hog
endif
# enable mesh profile
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_MESH),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-external-ell --enable-mesh
@@ -102,13 +71,6 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-midi
endif
# enable network plugin
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NETWORK),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-network
else
BLUEZ5_UTILS_CONF_OPTS += --disable-network
endif
# enable nfc plugin
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC),y)
BLUEZ5_UTILS_CONF_OPTS += --enable-nfc
@@ -130,16 +92,12 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-sixaxis
endif
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)
ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED),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 += \
@@ -179,9 +137,4 @@ else
BLUEZ5_UTILS_CONF_OPTS += --disable-systemd
endif
define BLUEZ5_UTILS_INSTALL_INIT_SYSV
$(INSTALL) -m 0755 -D package/bluez5_utils/S40bluetooth \
$(TARGET_DIR)/etc/init.d/S40bluetooth
endef
$(eval $(autotools-package))