From 33dd541790614765228a71477e1f8b2b6aa21ce1 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Fri, 18 Oct 2013 19:54:20 +0200 Subject: reorganize the handling of busybox applets, which needs to be disabled when full programm is choosen by the user --- package/busybox/Makefile | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'package/busybox/Makefile') diff --git a/package/busybox/Makefile b/package/busybox/Makefile index 4a8e8ea68..bda0c0165 100644 --- a/package/busybox/Makefile +++ b/package/busybox/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= busybox PKG_VERSION:= 1.20.2 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= e025414bc6cd79579cc7a32a45d3ae1c PKG_DESCR:= Core utilities for embedded systems PKG_SECTION:= base @@ -43,17 +43,17 @@ else BB_MAKE_FLAGS+= EXTRA_LDFLAGS="-static-libgcc" endif -# XXX: Although this looks like all new symbols are enabled when 'make oldconfig' runs, they're not. -# In fact, you can pipe "yes ''" as well as "yes n", each time leading to the default value being -# chosen for each unknown symbol. -# A real solution for that task (disabling everything that's unknown, as we know better) is to -# upgrade ${TOPDIR}/config so it understands the oldnoconfig target, and using that to update -# the busybox config before compiling. -# The workaround for now is to patch all busybox symbols to default n inside the busybox source -# which do depend on non-existance of other packages outside the busybox source. do-configure: + # get all symbols from top level config grep BUSYBOX_ $(TOPDIR)/.config|sed -e 's/BUSYBOX_/CONFIG_/' > \ ${WRKBUILD}/.config + # remove all disabled symbols + for i in $$(grep "BUSYBOX_DISABLE" $(TOPDIR)/.config);do \ + test -s "$$i" || continue; \ + grep -v $${i#BUSYBOX_DISABLE} ${WRKBUILD}/.config > \ + ${WRKBUILD}/.config.tmp; \ + cp ${WRKBUILD}/.config.tmp ${WRKBUILD}/.config; \ + done $(SED) 's;@IDIR@;${WRKINST};' ${WRKBUILD}/.config yes '' | $(MAKE) ${BB_MAKE_FLAGS} oldconfig $(MAKE_TRACE) -- cgit v1.2.3