diff mbox series

[v2] package/sbc: add config option to control tools build

Message ID 20221020121521.2041129-1-john@metanate.com
State Accepted
Headers show
Series [v2] package/sbc: add config option to control tools build | expand

Commit Message

John Keeping Oct. 20, 2022, 12:15 p.m. UTC
libsndfile is only needed by the sbctester utility and the library can
be built without this dependency.

Add a config option to cover not just sbctester but the command-line
utilities as well.  While the utilities may be useful for debugging,
normal usage will only need libsbc and these applications can be
omitted.

Signed-off-by: John Keeping <john@metanate.com>
---
v2:
- Fix autocomplete error in select BR2_PACKAGE_LIBSNDFILE

 package/sbc/Config.in | 8 +++++++-
 package/sbc/sbc.mk    | 9 ++++++++-
 2 files changed, 15 insertions(+), 2 deletions(-)

Comments

Thomas Petazzoni Nov. 14, 2022, 10:07 p.m. UTC | #1
On Thu, 20 Oct 2022 13:15:21 +0100
John Keeping <john@metanate.com> wrote:

> libsndfile is only needed by the sbctester utility and the library can
> be built without this dependency.
> 
> Add a config option to cover not just sbctester but the command-line
> utilities as well.  While the utilities may be useful for debugging,
> normal usage will only need libsbc and these applications can be
> omitted.
> 
> Signed-off-by: John Keeping <john@metanate.com>
> ---
> v2:
> - Fix autocomplete error in select BR2_PACKAGE_LIBSNDFILE

I've applied to next after:

 - Moving the option inside a if BR2_PACKAGE_SBC..endif block instead
   of using a depends on BR2_PACKAGE_SBC

 - Adjusting SBC_LICENSE so that it only contains LGPL-2.1+ by default,
   and then has GPL-2.0+ in addition when the tools are built.

Thanks!

Thomas
diff mbox series

Patch

diff --git a/package/sbc/Config.in b/package/sbc/Config.in
index f1dbc0ec2c..565e3e6596 100644
--- a/package/sbc/Config.in
+++ b/package/sbc/Config.in
@@ -1,8 +1,14 @@ 
 config BR2_PACKAGE_SBC
 	bool "sbc"
-	select BR2_PACKAGE_LIBSNDFILE
 	help
 	  An audio codec to connect bluetooth high quality audio
 	  devices like headphones or loudspeakers.
 
 	  http://www.bluez.org/
+
+config BR2_PACKAGE_SBC_TOOLS
+	bool "tools"
+	depends on BR2_PACKAGE_SBC
+	select BR2_PACKAGE_LIBSNDFILE
+	help
+	  Build the command-line SBC tools as well as the library.
diff --git a/package/sbc/sbc.mk b/package/sbc/sbc.mk
index 744ce5f895..245ff11ced 100644
--- a/package/sbc/sbc.mk
+++ b/package/sbc/sbc.mk
@@ -8,8 +8,15 @@  SBC_VERSION = 2.0
 SBC_SOURCE = sbc-$(SBC_VERSION).tar.xz
 SBC_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth
 SBC_INSTALL_STAGING = YES
-SBC_DEPENDENCIES = libsndfile host-pkgconf
+SBC_DEPENDENCIES = host-pkgconf
 SBC_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (library)
 SBC_LICENSE_FILES = COPYING COPYING.LIB
 
+ifeq ($(BR2_PACKAGE_SBC_TOOLS),y)
+SBC_DEPENDENCIES += libsndfile
+SBC_CONF_OPTS += --enable-tools --enable-tester
+else
+SBC_CONF_OPTS += --disable-tools --disable-tester
+endif
+
 $(eval $(autotools-package))