On Tue, Oct 09, 2018 at 12:52:56PM +0200, Michael Olbrich wrote: > 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?
I don't know about other people's use cases, that's why I made them optional. But all of them add a fair amount of code to the library. - Roland > > 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] -- Roland Hieber | [email protected] | Pengutronix e.K. | https://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim | Phone: +49-5121-206917-5086 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list [email protected]
