On Fri, Oct 05, 2018 at 04:03:06PM +0200, Roland Hieber wrote: > Update the list of configure options and their dependencies, make the > various profiles configurable, and set the default enable/disable values > in Kconfig according to the default values in the configure script. > Also pin down the GPL/LGPL license MD5 sums. > > Some tools are now deprecated, hide them behind a kconfig option. > gatttool and some of the test scripts are no longer installed, remove > them from the targetinstall stage. > > Also use install_alternative instead of install_copy for all config > files and systemd units. > > There are no patches in PTXdist which would need porting. > > Signed-off-by: Roland Hieber <[email protected]> > --- > rules/bluez.in | 65 +++++++++++++++++++++++++++++++++++++++++++++--- > rules/bluez.make | 61 ++++++++++++++++++++++++++++++++------------- > 2 files changed, 105 insertions(+), 21 deletions(-) > > diff --git a/rules/bluez.in b/rules/bluez.in > index e14135dd6..285b2f2a8 100644 > --- a/rules/bluez.in > +++ b/rules/bluez.in > @@ -8,7 +8,9 @@ menuconfig BLUEZ > select DBUS > select GLIB > select UDEV > - select READLINE if BLUEZ_CLIENT > + select READLINE if BLUEZ_CLIENT || BLUEZ_PROFILE_MESH > + select JSON_C if BLUEZ_PROFILE_MESH > + select LIBICAL if BLUEZ_PROFILE_OBEX > select PYGOBJECT if BLUEZ_INSTALL_TESTSCRIPTS > select DBUS_PYTHON if BLUEZ_INSTALL_TESTSCRIPTS > help > @@ -17,6 +19,55 @@ menuconfig BLUEZ > > if BLUEZ > > +config BLUEZ_PROFILE_SAP > + bool "build with SAP support" > + help > + Build with support for the SIM Access Profile (SAP) > + > +config BLUEZ_PROFILE_A2DP > + default y > + bool "build with A2DP support" > + help > + Build with support for the Advanced Audio Distribution Profile (A2DP) > + > +config BLUEZ_PROFILE_AVRCP > + default y > + bool "build with AVRCP support" > + help > + Build with support for Audio/Video Remote Control Profile (AVRCP) > + > +config BLUEZ_PROFILE_NETWORK > + default y > + bool "build with network profiles support" > + help > + Build with support for the Bluetooth Network Encapsulation Protocol > + (BNEP) > + > +config BLUEZ_PROFILE_HID > + default y > + bool "build with HID/HoG support" > + help > + Build with support for the Human Interface Device (HID) and HID over > + GATT (HoG) profiles > + > +config BLUEZ_PROFILE_HEALTH > + bool "build with health profiles support" > + help > + Build with support for medical device profiles > + > +config BLUEZ_PROFILE_MESH > + # needs libell > 0.3 > + depends on BROKEN > + bool "build with mesh support" > + help > + Build with support for Bluetooth mesh networking > + > +config BLUEZ_PROFILE_OBEX > + bool "build with OBEX support" > + help > + Build with support for the OBject EXchange (OBEX) profile. > + Enable this to build obexd. > +
Why so many new options? Can we just enable or disable those? Michael > config BLUEZ_SYSTEMD_UNIT > bool > default y > @@ -26,9 +77,15 @@ config BLUEZ_SYSTEMD_UNIT > config BLUEZ_UTILS > bool "install bluez tools" > help > - install the tools "bccmd bluemoon btmon ciptool hciattach > - hciconfig hcidump hcitool hex2hcd l2ping l2test mpris-proxy rctest > - rfcomm sdptoolciptool l2ping hcitool rctest rfcomm" and "sdptool" > + install the tools: bccmd bluemoon btmon hex2hcd l2ping l2test > + mpris-proxy rctest l2ping rctest > + > +config BLUEZ_UTILS_DEPRECATED > + depends on BLUEZ_UTILS > + bool "install deprecated tools" > + help > + Build and install the following tools: hciattach hciconfig hcitool > + hcidump rfcomm sdptool ciptool > > config BLUEZ_CLIENT > bool "install client tools: bluetoothctl, gatttool" > diff --git a/rules/bluez.make b/rules/bluez.make > index de6a1e5ec..8fdb6893f 100644 > --- a/rules/bluez.make > +++ b/rules/bluez.make > @@ -1,6 +1,8 @@ > # -*-makefile-*- > # > # Copyright (C) 2010 by Uwe Kleine-Koenig <[email protected]> > +# Copyright (C) 2018 Pengutronix, Roland Hieber <[email protected]> > +# > # > # See CREDITS for details about who has contributed to this project. > # > @@ -16,14 +18,17 @@ PACKAGES-$(PTXCONF_BLUEZ) += bluez > # > # Paths and names > # > -BLUEZ_VERSION := 5.30 > -BLUEZ_MD5 := a7b99d40cd78c7497abdfd7f024fd07b > +BLUEZ_VERSION := 5.50 > +BLUEZ_MD5 := 860349d2afebf130f772c0f2943b5a27 > BLUEZ := bluez-$(BLUEZ_VERSION) > BLUEZ_SUFFIX := tar.gz > BLUEZ_URL := $(call ptx/mirror, KERNEL, > bluetooth/$(BLUEZ).$(BLUEZ_SUFFIX)) > BLUEZ_SOURCE := $(SRCDIR)/$(BLUEZ).$(BLUEZ_SUFFIX) > BLUEZ_DIR := $(BUILDDIR)/$(BLUEZ) > BLUEZ_LICENSE := GPL-2.0-or-later LGPL-2.1-or-later > +BLUEZ_LICENSE_FILES := \ > + file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ > + file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 > ifdef PTXCONF_BLUEZ_INSTALL_TESTSCRIPTS > BLUEZ_DEVPKG := NO > endif > @@ -41,20 +46,34 @@ BLUEZ_CONF_OPT := $(CROSS_AUTOCONF_USR) \ > --disable-debug \ > --disable-pie \ > --enable-threads \ > + --disable-backtrace \ > --enable-library \ > --$(call ptx/endis, PTXCONF_BLUEZ_INSTALL_TESTSCRIPTS)-test \ > + --disable-nfc \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_SAP)-sap \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_A2DP)-a2dp \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_AVRCP)-avrcp \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_NETWORK)-network \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_HID)-hid \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_HID)-hog \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_HEALTH)-health \ > --enable-tools \ > --enable-monitor \ > --enable-udev \ > --disable-cups \ > - --disable-obex \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_MESH)-mesh \ > + --disable-midi \ > + --$(call ptx/endis, PTXCONF_BLUEZ_PROFILE_OBEX)-obex \ > + --disable-btpclient \ > --$(call ptx/endis, PTXCONF_BLUEZ_CLIENT)-client \ > --enable-systemd \ > --enable-datafiles \ > --disable-manpages \ > --disable-experimental \ > + --$(call ptx/endis, PTXCONF_BLUEZ_UTILS_DEPRECATED)-deprecated \ > --disable-sixaxis \ > --disable-android \ > + --disable-logger \ > --with-dbusconfdir=/usr/share \ > --with-dbussystembusdir=/usr/share/dbus-1/system-services \ > --with-dbussessionbusdir=/usr/share/dbus-1/services \ > @@ -78,22 +97,31 @@ $(STATEDIR)/bluez.targetinstall: > @$(call install_lib, bluez, 0, 0, 0644, libbluetooth) > > @$(call install_copy, bluez, 0, 0, 0755, -, > /usr/libexec/bluetooth/bluetoothd) > +ifdef PTXCONF_BLUEZ_PROFILE_OBEX > @$(call install_copy, bluez, 0, 0, 0755, -, > /usr/libexec/bluetooth/obexd) > +endif > @$(call install_lib, bluez, 0, 0, 0644, libbluetooth) > > ifdef PTXCONF_BLUEZ_UTILS > - @$(foreach binprogram, bccmd bluemoon btmon ciptool \ > - hciattach hciconfig hcidump hcitool hex2hcd l2ping \ > - l2test mpris-proxy rctest rfcomm sdptool, \ > + @$(foreach binprogram, bccmd bluemoon btmon hex2hcd l2ping \ > + l2test mpris-proxy rctest, \ > + $(call install_copy, bluez, 0, 0, 0755, -, \ > + /usr/bin/$(binprogram));) > + > +ifdef PTXCONF_BLUEZ_UTILS_DEPRECATED > + @$(foreach binprogram, ciptool hciattach hciconfig hcidump hcitool \ > + rfcomm sdptool, \ > $(call install_copy, bluez, 0, 0, 0755, -, \ > /usr/bin/$(binprogram));) > endif > +endif > + > +ifdef BLUEZ_PROFILE_MESH > + @$(call install_copy, bluez, 0, 0, 0755, -, /usr/bin/meshctl) > +endif > > ifdef PTXCONF_BLUEZ_CLIENT > @$(call install_copy, bluez, 0, 0, 0755, -, /usr/bin/bluetoothctl) > - > - @$(call install_copy, bluez, 0, 0, 0755, $(BLUEZ_DIR)/attrib/gatttool, \ > - /usr/bin/gatttool) > endif > > ifdef PTXCONF_BLUEZ_INSTALL_TESTSCRIPTS > @@ -103,13 +131,12 @@ ifdef PTXCONF_BLUEZ_INSTALL_TESTSCRIPTS > /usr/lib/bluez/test/$(testdata));) > > @$(foreach testprog, list-devices opp-client \ > - simple-endpoint test-alert test-discovery \ > - test-heartrate test-nap test-proximity \ > - map-client pbap-client simple-player test-cyclingspeed \ > + simple-endpoint test-discovery test-nap \ > + map-client pbap-client simple-player \ > test-health test-hfp test-network test-sap-server \ > ftp-client monitor-bluetooth simple-agent \ > test-adapter test-device test-health-sink test-manager \ > - test-profile test-thermometer, \ > + test-profile, \ > $(call install_copy, bluez, 0, 0, 0755, -, \ > /usr/lib/bluez/test/$(testprog))$(ptx/nl)) > @$(foreach testprog, bluezutils.py dbusdef.py sap_client.py, \ > @@ -117,16 +144,16 @@ ifdef PTXCONF_BLUEZ_INSTALL_TESTSCRIPTS > /usr/lib/bluez/test/$(testprog))$(ptx/nl)) > endif > > - @$(call install_copy, bluez, 0, 0, 0644, -, \ > + @$(call install_alternative, bluez, 0, 0, 0644, \ > /usr/share/dbus-1/system.d/bluetooth.conf) > - @$(call install_tree, bluez, 0, 0, -, /usr/lib/udev/rules.d/) > + @$(call install_alternative_tree, bluez, 0, 0, /usr/lib/udev/rules.d/) > > ifdef PTXCONF_BLUEZ_SYSTEMD_UNIT > - @$(call install_copy, bluez, 0, 0, 0644, -, \ > + @$(call install_alternative, bluez, 0, 0, 0644, \ > /usr/lib/systemd/system/bluetooth.service) > @$(call install_link, bluez, ../bluetooth.service, \ > > /usr/lib/systemd/system/multi-user.target.wants/bluetooth.service) > - @$(call install_copy, bluez, 0, 0, 0644, -, \ > + @$(call install_alternative, bluez, 0, 0, 0644, \ > /usr/lib/systemd/user/obex.service) > endif > > -- > 2.19.0 > > > _______________________________________________ > ptxdist mailing list > [email protected] -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list [email protected]
