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]

Reply via email to