[Buildroot] Package overriding

Charles Manning cdhmanning at gmail.com
Mon Mar 18 02:33:27 UTC 2013


Hello Buildrooters

It seems to me that the package override feature is misnamed and has
some shortcomings.

First off, the name is, IMHO, poor. Package Override is applied before
tha packages are parsed. It does not override them. Instead it is
really overriding configurations before the packages are read. Perhaps
it should really be called CONFIG_OVERRIDE?

There is also a deficiency in that Package Override cannot override
anything set up in the packages.

For example, I recently needed to add two more configuration lines to
building bluez_utils.

Instead of:

BLUEZ_UTILS_CONF_OPT = --enable-test --enable-tools
I wanted
BLUEZ_UTILS_CONF_OPT = --enable-test --enable-tools --enable-bccmd --enable-dund


A logical way I can see to do this would be to have a mechanism
similar to Package Override but that is applied after the packages are
parsed.

--- Makefile	(revision 20385)
+++ Makefile	(working copy)
@@ -319,11 +319,20 @@
 -include $(PACKAGE_OVERRIDE_FILE)
 endif

 include package/*/*.mk
 include hj/package/*/*.mk
 include boot/common.mk
 include linux/linux.mk

+POST_PACKAGE_OVERRIDE_FILE=$(call qstrip,$(BR2_POST_PACKAGE_OVERRIDE_FILE))
+ifneq ($(POST_PACKAGE_OVERRIDE_FILE),)
+-include $(POST_PACKAGE_OVERRIDE_FILE)
+endif
+
+

Then have POST_PACKAGE_OVERRIDE_FILE point to a file which has

# Add bluez_utils options we need
BLUEZ_UTILS_CONF_OPT +=  --enable-bccmd --enable-dund

Does that sound useful?

Is there a better way?

Thanks

Charles


More information about the buildroot mailing list