Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2] package/iputils: add configs to select which binaries are built
@ 2019-08-26 18:07 Alejandro González
  2019-08-26 18:09 ` Alejandro González
  0 siblings, 1 reply; 4+ messages in thread
From: Alejandro González @ 2019-08-26 18:07 UTC (permalink / raw)
  To: buildroot

By default, the iputils build script might build binaries which are
useless for certain applications, like tftpd. Those binaries will bloat
the target filesystem unless a post-build script removes them manually,
which is cumbersome and doesn't shorten build times.

These changes add Kconfig options which let the user select what
binaries are built with ease.

Signed-off-by: Alejandro Gonz?lez <alejandro.gonzalez.correo@gmail.com>
---
 package/iputils/Config.in  |  64 ++++++++++++++++++++
 package/iputils/iputils.mk | 119 ++++++++++++++++++++++++++++++-------
 2 files changed, 163 insertions(+), 20 deletions(-)

diff --git a/package/iputils/Config.in b/package/iputils/Config.in
index b5d9141a7d..cb3d03072a 100644
--- a/package/iputils/Config.in
+++ b/package/iputils/Config.in
@@ -7,3 +7,67 @@ config BR2_PACKAGE_IPUTILS
 	  etc.
 
 	  https://github.com/iputils/iputils
+
+if BR2_PACKAGE_IPUTILS
+
+config BR2_PACKAGE_IPUTILS_ARPING
+	bool "arping"
+	default y
+	help
+	  Installs arping.
+
+config BR2_PACKAGE_IPUTILS_CLOCKDIFF
+	bool "clockdiff"
+	default y
+	help
+	  Installs clockdiff.
+
+config BR2_PACKAGE_IPUTILS_PING
+	bool "ping"
+	default y
+	help
+	  Installs ping.
+
+config BR2_PACKAGE_IPUTILS_RARPD
+	bool "rarpd"
+	help
+	  Installs rarpd.
+
+config BR2_PACKAGE_IPUTILS_RDISC
+	bool "rdisc"
+	default y
+	help
+	  Installs rdisc.
+
+config BR2_PACKAGE_IPUTILS_RDISC_SERVER
+	bool "rdisc (server code)"
+	depends on BR2_PACKAGE_IPUTILS_RDISC
+	default y
+	help
+	  Builds rdisc with server code.
+
+config BR2_PACKAGE_IPUTILS_TFTPD
+	bool "tftpd"
+	help
+	  Installs tftpd.
+
+config BR2_PACKAGE_IPUTILS_TRACEPATH
+	bool "tracepath"
+	default y
+	help
+	  Installs tracepath.
+
+config BR2_PACKAGE_IPUTILS_TRACEROUTE6
+	bool "traceroute6"
+	default y
+	help
+	  Installs traceroute6.
+
+config BR2_PACKAGE_IPUTILS_NINFOD
+	bool "ninfod"
+	depends on BR2_TOOLCHAIN_HAS_THREADS # ninfod requires <pthread.h>
+	default y
+	help
+	  Installs ninfod.
+
+endif
diff --git a/package/iputils/iputils.mk b/package/iputils/iputils.mk
index 4a06581790..d693f02593 100644
--- a/package/iputils/iputils.mk
+++ b/package/iputils/iputils.mk
@@ -17,6 +17,68 @@ IPUTILS_LICENSE = GPL-2.0+, BSD-3-Clause
 IPUTILS_LICENSE_FILES = LICENSE Documentation/LICENSE.BSD3 Documentation/LICENSE.GPL2
 IPUTILS_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES)
 
+# Selectively build binaries
+
+ifeq ($(BR2_PACKAGE_IPUTILS_ARPING),y)
+IPUTILS_CONF_OPTS += -DBUILD_ARPING=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_ARPING=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_CLOCKDIFF),y)
+IPUTILS_CONF_OPTS += -DBUILD_CLOCKDIFF=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_CLOCKDIFF=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
+IPUTILS_CONF_OPTS += -DBUILD_PING=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_PING=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPTUILS_RARPD),y)
+IPUTILS_CONF_OPTS += -DBUILD_RARPD=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_RARPD=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_RDISC),y)
+IPUTILS_CONF_OPTS += -DBUILD_RDISC=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_RDISC=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_RDISC_SERVER),y)
+IPUTILS_CONF_OPTS += -DENABLE_RDISC_SERVER=true
+else
+IPUTILS_CONF_OPTS += -DENABLE_RDISC_SERVER=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_TFTPD),y)
+IPUTILS_CONF_OPTS += -DBUILD_TFTPD=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_TFTPD=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_TRACEPATH),y)
+IPUTILS_CONF_OPTS += -DBUILD_TRACEPATH=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_TRACEPATH=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_TRACEROUTE6),y)
+IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=false
+endif
+
+ifeq ($(BR2_PACKAGE_IPUTILS_NINFOD),y)
+IPUTILS_CONF_OPTS += -DBUILD_NINFOD=true
+else
+IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
+endif
+
 ifeq ($(BR2_PACKAGE_LIBCAP),y)
 IPUTILS_CONF_OPTS += -DUSE_CAP=true
 IPUTILS_DEPENDENCIES += libcap
@@ -49,57 +111,74 @@ IPUTILS_CONF_OPTS += -DUSE_CRYPTO=none
 IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
 endif
 
-# ninfod requires <pthread.h>
-ifneq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
-IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
-endif
-
 ifeq ($(BR2_SYSTEM_ENABLE_NLS),y)
 IPUTILS_CONF_OPTS += -DUSE_GETTEXT=true
 else
 IPUTILS_CONF_OPTS += -DUSE_GETTEXT=false
 endif
 
-IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=true
-
 # XSL Stylesheets for DocBook 5 not packaged for buildroot
 IPUTILS_CONF_OPTS += -DBUILD_MANS=false -DBUILD_HTML_MANS=false
 
 # move iputils binaries to the same location as where Busybox installs
 # the corresponding applets, so that we have a single version of the
 # tools (from iputils)
-define IPUTILS_MOVE_BINARIES
+define IPUTILS_MOVE_ARPING_BINARY
 	mv $(TARGET_DIR)/usr/bin/arping $(TARGET_DIR)/usr/sbin/arping
+endef
+ifeq ($(BR2_PACKAGE_IPUTILS_ARPING),y)
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_ARPING_BINARY
+endif
+
+define IPUTILS_MOVE_PING_BINARY
 	$(if $(BR2_ROOTFS_MERGED_USR),,\
 		mv $(TARGET_DIR)/usr/bin/ping $(TARGET_DIR)/bin/ping)
+endef
+ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_PING_BINARY
+endif
+
+define IPUTILS_MOVE_TFTPD_BINARY
 	mv $(TARGET_DIR)/usr/bin/tftpd $(TARGET_DIR)/usr/sbin/tftpd
 endef
-IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_BINARIES
+ifeq ($(BR2_PACKAGE_IPUTILS_TFTPD),y)
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_TFTPD_BINARY
+endif
 
 # upstream requires distros to create symlink
 define IPUTILS_CREATE_PING6_SYMLINK
 	ln -sf $(TARGET_DIR)/bin/ping $(TARGET_DIR)/bin/ping6
 endef
+ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
 IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_CREATE_PING6_SYMLINK
+endif
 
 # handle permissions ourselves
 IPUTILS_CONF_OPTS += -DNO_SETCAP_OR_SUID=true
 ifeq ($(BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES),y)
 define IPUTILS_PERMISSIONS
-	/usr/sbin/arping      f 755 0 0 - - - - -
-	/usr/bin/clockdiff    f 755 0 0 - - - - -
-	|xattr cap_net_raw+p
-	/bin/ping             f 755 0 0 - - - - -
-	|xattr cap_net_raw+p
-	/usr/bin/traceroute6  f 755 0 0 - - - - -
-	|xattr cap_net_raw+p
+	$(if $(BR2_PACKAGE_IPUTILS_ARPING),\
+		/usr/sbin/arping      f 755 0 0 - - - - -,)
+	$(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),\
+		/usr/bin/clockdiff    f 755 0 0 - - - - -
+		|xattr cap_net_raw+p,)
+	$(if $(BR2_PACKAGE_IPUTILS_PING),\
+		/bin/ping             f 755 0 0 - - - - -
+		|xattr cap_net_raw+p,)
+	$(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),\
+		/usr/bin/traceroute6  f 755 0 0 - - - - -
+		|xattr cap_net_raw+p,)
 endef
 else
 define IPUTILS_PERMISSIONS
-	/usr/sbin/arping      f  755 0 0 - - - - -
-	/usr/bin/clockdiff    f 4755 0 0 - - - - -
-	/bin/ping             f 4755 0 0 - - - - -
-	/usr/bin/traceroute6  f 4755 0 0 - - - - -
+	$(if $(BR2_PACKAGE_IPUTILS_ARPING),\
+		/usr/sbin/arping      f  755 0 0 - - - - -,)
+	$(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),\
+		/usr/bin/clockdiff    f 4755 0 0 - - - - -,)
+	$(if $(BR2_PACKAGE_IPUTILS_PING),\
+		/bin/ping             f 4755 0 0 - - - - -,)
+	$(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),\
+		/usr/bin/traceroute6  f 4755 0 0 - - - - -,)
 endef
 endif
 
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2] package/iputils: add configs to select which binaries are built
  2019-08-26 18:07 [Buildroot] [PATCH v2] package/iputils: add configs to select which binaries are built Alejandro González
@ 2019-08-26 18:09 ` Alejandro González
  2019-08-26 19:21   ` Petr Vorel
  0 siblings, 1 reply; 4+ messages in thread
From: Alejandro González @ 2019-08-26 18:09 UTC (permalink / raw)
  To: buildroot

El 26/8/19 a las 20:07, Alejandro Gonz?lez escribi?:
> By default, the iputils build script might build binaries which are
> useless for certain applications, like tftpd. Those binaries will bloat
> the target filesystem unless a post-build script removes them manually,
> which is cumbersome and doesn't shorten build times.
> 
> These changes add Kconfig options which let the user select what
> binaries are built with ease.
> 
> Signed-off-by: Alejandro Gonz?lez <alejandro.gonzalez.correo@gmail.com>
> ---
>  package/iputils/Config.in  |  64 ++++++++++++++++++++
>  package/iputils/iputils.mk | 119 ++++++++++++++++++++++++++++++-------
>  2 files changed, 163 insertions(+), 20 deletions(-)
> 
> diff --git a/package/iputils/Config.in b/package/iputils/Config.in
> index b5d9141a7d..cb3d03072a 100644
> --- a/package/iputils/Config.in
> +++ b/package/iputils/Config.in
> @@ -7,3 +7,67 @@ config BR2_PACKAGE_IPUTILS
>  	  etc.
>  
>  	  https://github.com/iputils/iputils
> +
> +if BR2_PACKAGE_IPUTILS
> +
> +config BR2_PACKAGE_IPUTILS_ARPING
> +	bool "arping"
> +	default y
> +	help
> +	  Installs arping.
> +
> +config BR2_PACKAGE_IPUTILS_CLOCKDIFF
> +	bool "clockdiff"
> +	default y
> +	help
> +	  Installs clockdiff.
> +
> +config BR2_PACKAGE_IPUTILS_PING
> +	bool "ping"
> +	default y
> +	help
> +	  Installs ping.
> +
> +config BR2_PACKAGE_IPUTILS_RARPD
> +	bool "rarpd"
> +	help
> +	  Installs rarpd.
> +
> +config BR2_PACKAGE_IPUTILS_RDISC
> +	bool "rdisc"
> +	default y
> +	help
> +	  Installs rdisc.
> +
> +config BR2_PACKAGE_IPUTILS_RDISC_SERVER
> +	bool "rdisc (server code)"
> +	depends on BR2_PACKAGE_IPUTILS_RDISC
> +	default y
> +	help
> +	  Builds rdisc with server code.
> +
> +config BR2_PACKAGE_IPUTILS_TFTPD
> +	bool "tftpd"
> +	help
> +	  Installs tftpd.
> +
> +config BR2_PACKAGE_IPUTILS_TRACEPATH
> +	bool "tracepath"
> +	default y
> +	help
> +	  Installs tracepath.
> +
> +config BR2_PACKAGE_IPUTILS_TRACEROUTE6
> +	bool "traceroute6"
> +	default y
> +	help
> +	  Installs traceroute6.
> +
> +config BR2_PACKAGE_IPUTILS_NINFOD
> +	bool "ninfod"
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # ninfod requires <pthread.h>
> +	default y
> +	help
> +	  Installs ninfod.
> +
> +endif
> diff --git a/package/iputils/iputils.mk b/package/iputils/iputils.mk
> index 4a06581790..d693f02593 100644
> --- a/package/iputils/iputils.mk
> +++ b/package/iputils/iputils.mk
> @@ -17,6 +17,68 @@ IPUTILS_LICENSE = GPL-2.0+, BSD-3-Clause
>  IPUTILS_LICENSE_FILES = LICENSE Documentation/LICENSE.BSD3 Documentation/LICENSE.GPL2
>  IPUTILS_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES)
>  
> +# Selectively build binaries
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_ARPING),y)
> +IPUTILS_CONF_OPTS += -DBUILD_ARPING=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_ARPING=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_CLOCKDIFF),y)
> +IPUTILS_CONF_OPTS += -DBUILD_CLOCKDIFF=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_CLOCKDIFF=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
> +IPUTILS_CONF_OPTS += -DBUILD_PING=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_PING=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPTUILS_RARPD),y)
> +IPUTILS_CONF_OPTS += -DBUILD_RARPD=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_RARPD=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_RDISC),y)
> +IPUTILS_CONF_OPTS += -DBUILD_RDISC=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_RDISC=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_RDISC_SERVER),y)
> +IPUTILS_CONF_OPTS += -DENABLE_RDISC_SERVER=true
> +else
> +IPUTILS_CONF_OPTS += -DENABLE_RDISC_SERVER=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_TFTPD),y)
> +IPUTILS_CONF_OPTS += -DBUILD_TFTPD=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_TFTPD=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_TRACEPATH),y)
> +IPUTILS_CONF_OPTS += -DBUILD_TRACEPATH=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_TRACEPATH=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_TRACEROUTE6),y)
> +IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=false
> +endif
> +
> +ifeq ($(BR2_PACKAGE_IPUTILS_NINFOD),y)
> +IPUTILS_CONF_OPTS += -DBUILD_NINFOD=true
> +else
> +IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
> +endif
> +
>  ifeq ($(BR2_PACKAGE_LIBCAP),y)
>  IPUTILS_CONF_OPTS += -DUSE_CAP=true
>  IPUTILS_DEPENDENCIES += libcap
> @@ -49,57 +111,74 @@ IPUTILS_CONF_OPTS += -DUSE_CRYPTO=none
>  IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
>  endif
>  
> -# ninfod requires <pthread.h>
> -ifneq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
> -IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
> -endif
> -
>  ifeq ($(BR2_SYSTEM_ENABLE_NLS),y)
>  IPUTILS_CONF_OPTS += -DUSE_GETTEXT=true
>  else
>  IPUTILS_CONF_OPTS += -DUSE_GETTEXT=false
>  endif
>  
> -IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=true
> -
>  # XSL Stylesheets for DocBook 5 not packaged for buildroot
>  IPUTILS_CONF_OPTS += -DBUILD_MANS=false -DBUILD_HTML_MANS=false
>  
>  # move iputils binaries to the same location as where Busybox installs
>  # the corresponding applets, so that we have a single version of the
>  # tools (from iputils)
> -define IPUTILS_MOVE_BINARIES
> +define IPUTILS_MOVE_ARPING_BINARY
>  	mv $(TARGET_DIR)/usr/bin/arping $(TARGET_DIR)/usr/sbin/arping
> +endef
> +ifeq ($(BR2_PACKAGE_IPUTILS_ARPING),y)
> +IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_ARPING_BINARY
> +endif
> +
> +define IPUTILS_MOVE_PING_BINARY
>  	$(if $(BR2_ROOTFS_MERGED_USR),,\
>  		mv $(TARGET_DIR)/usr/bin/ping $(TARGET_DIR)/bin/ping)
> +endef
> +ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
> +IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_PING_BINARY
> +endif
> +
> +define IPUTILS_MOVE_TFTPD_BINARY
>  	mv $(TARGET_DIR)/usr/bin/tftpd $(TARGET_DIR)/usr/sbin/tftpd
>  endef
> -IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_BINARIES
> +ifeq ($(BR2_PACKAGE_IPUTILS_TFTPD),y)
> +IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_TFTPD_BINARY
> +endif
>  
>  # upstream requires distros to create symlink
>  define IPUTILS_CREATE_PING6_SYMLINK
>  	ln -sf $(TARGET_DIR)/bin/ping $(TARGET_DIR)/bin/ping6
>  endef
> +ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
>  IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_CREATE_PING6_SYMLINK
> +endif
>  
>  # handle permissions ourselves
>  IPUTILS_CONF_OPTS += -DNO_SETCAP_OR_SUID=true
>  ifeq ($(BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES),y)
>  define IPUTILS_PERMISSIONS
> -	/usr/sbin/arping      f 755 0 0 - - - - -
> -	/usr/bin/clockdiff    f 755 0 0 - - - - -
> -	|xattr cap_net_raw+p
> -	/bin/ping             f 755 0 0 - - - - -
> -	|xattr cap_net_raw+p
> -	/usr/bin/traceroute6  f 755 0 0 - - - - -
> -	|xattr cap_net_raw+p
> +	$(if $(BR2_PACKAGE_IPUTILS_ARPING),\
> +		/usr/sbin/arping      f 755 0 0 - - - - -,)
> +	$(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),\
> +		/usr/bin/clockdiff    f 755 0 0 - - - - -
> +		|xattr cap_net_raw+p,)
> +	$(if $(BR2_PACKAGE_IPUTILS_PING),\
> +		/bin/ping             f 755 0 0 - - - - -
> +		|xattr cap_net_raw+p,)
> +	$(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),\
> +		/usr/bin/traceroute6  f 755 0 0 - - - - -
> +		|xattr cap_net_raw+p,)
>  endef
>  else
>  define IPUTILS_PERMISSIONS
> -	/usr/sbin/arping      f  755 0 0 - - - - -
> -	/usr/bin/clockdiff    f 4755 0 0 - - - - -
> -	/bin/ping             f 4755 0 0 - - - - -
> -	/usr/bin/traceroute6  f 4755 0 0 - - - - -
> +	$(if $(BR2_PACKAGE_IPUTILS_ARPING),\
> +		/usr/sbin/arping      f  755 0 0 - - - - -,)
> +	$(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),\
> +		/usr/bin/clockdiff    f 4755 0 0 - - - - -,)
> +	$(if $(BR2_PACKAGE_IPUTILS_PING),\
> +		/bin/ping             f 4755 0 0 - - - - -,)
> +	$(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),\
> +		/usr/bin/traceroute6  f 4755 0 0 - - - - -,)
>  endef
>  endif
>  
>
This second version fixes some typos on the permission hooks which
produced build errors on some circumstances. Please disregard the
previous messages.

Thank you.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2] package/iputils: add configs to select which binaries are built
  2019-08-26 18:09 ` Alejandro González
@ 2019-08-26 19:21   ` Petr Vorel
  2019-08-26 19:35     ` Alejandro González
  0 siblings, 1 reply; 4+ messages in thread
From: Petr Vorel @ 2019-08-26 19:21 UTC (permalink / raw)
  To: buildroot

Hi Alejandro,

> El 26/8/19 a las 20:07, Alejandro Gonz?lez escribi?:
> > By default, the iputils build script might build binaries which are
> > useless for certain applications, like tftpd. Those binaries will bloat
> > the target filesystem unless a post-build script removes them manually,
> > which is cumbersome and doesn't shorten build times.

> > These changes add Kconfig options which let the user select what
> > binaries are built with ease.

> > Signed-off-by: Alejandro Gonz?lez <alejandro.gonzalez.correo@gmail.com>
Reviewed-by: Petr Vorel <petr.vorel@gmail.com>

I understand the concern, but not sure if this is a buildroot policy.
IMHO there is a concern not to put too many options in Kconfig.
Thomas, Petr, am I right?

Kind regards,
Petr

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2] package/iputils: add configs to select which binaries are built
  2019-08-26 19:21   ` Petr Vorel
@ 2019-08-26 19:35     ` Alejandro González
  0 siblings, 0 replies; 4+ messages in thread
From: Alejandro González @ 2019-08-26 19:35 UTC (permalink / raw)
  To: buildroot

El 26/8/19 a las 21:21, Petr Vorel escribi?:
> Hi Alejandro,
> 
>> El 26/8/19 a las 20:07, Alejandro Gonz?lez escribi?:
>>> By default, the iputils build script might build binaries which are
>>> useless for certain applications, like tftpd. Those binaries will bloat
>>> the target filesystem unless a post-build script removes them manually,
>>> which is cumbersome and doesn't shorten build times.
> 
>>> These changes add Kconfig options which let the user select what
>>> binaries are built with ease.
> 
>>> Signed-off-by: Alejandro Gonz?lez <alejandro.gonzalez.correo@gmail.com>
> Reviewed-by: Petr Vorel <petr.vorel@gmail.com>
> 
> I understand the concern, but not sure if this is a buildroot policy.
> IMHO there is a concern not to put too many options in Kconfig.
> Thomas, Petr, am I right?
> 
> Kind regards,
> Petr
> 
Thank you for your prompt review.

I understand that too many options might be confusing and/or ugly.
However, in this case, these options are only shown in the menuconfig
when the iputils package is selected. If it is not, then they won't
show up, and they won't clutter the view. There are other packages that
offer similar options, like ntp or iptables, but I don't know if they
precisely are examples to follow for new development.

Regards.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-08-26 19:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-26 18:07 [Buildroot] [PATCH v2] package/iputils: add configs to select which binaries are built Alejandro González
2019-08-26 18:09 ` Alejandro González
2019-08-26 19:21   ` Petr Vorel
2019-08-26 19:35     ` Alejandro González

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox