Make KCONFIG_{ENABLE,DISABLE,SET}_OPT match whole words only.
Fixes that BR_INET_IPV6 enables CONFIG_IPV6 in the kernel's
.config, but also nukes everything with "CONFIG_IPV6" in its name, e.g.
CONFIG_IPV6_PRIVACY. This in turn causes any IPv6 options in a custom
kernel .config to be lost and oldconfig going interactive.
Signed-off-by: Malte Starostik <m-starostik@versanet.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Paul Jones <paul@pauljones.id.au>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The KCONFIG_ENABLE_OPT, KCONFIG_SET_OPT and KCONFIG_DISABLE_OPT are
new make functions to respectively enable, set and disable options in
Kconfig-like files (as used by the kernel, uClibc or Busybox).
They can be used as follows :
$(call KCONFIG_ENABLE_OPT,CONFIG_FOOBAR,/path/to/.config)
$(call KCONFIG_SET_OPT,CONFIG_BARFOO,foobar,/path/to/.config)
$(call KCONFIG_DISABLE_OPT,CONFIG_FARBOO,/path/to/.config)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The new <pkg>-show-depends simply outputs the list of dependencies for
the given package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As noticed by Thomas, we call the UPPERCASE macro a lot, and it slows down
startup quite a bit.
Optimize it by implementing it in make, rather than forking a shell + tr.
The implementation is heavily based on the 'up' macro from gmsl
(http://gmsl.sf.net)
With this in place, startup time is ~5 times lower.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since the documentation cleanup is done by the main Makefile in a
global way, there's no need to do that on a per-package basis in the
generic package infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This new infrastructure allows to write simpler .mk files for packages
not using the autotools as their build system, by factorizing many
common steps (download, extract, patching), and will more easily allow
Buildroot-wide changes in how the packages are handled.
The main macro is called GENTARGETS and works similarly to the
AUTOTARGETS macro that already exists for autotools-based
packages. However, the set of variables to be defined before calling
the macro is different. Refer to the documentation for details.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>