build: do not alter global default package selection from profiles

This partly reverts ca32373c95 which lets
profiles that suppress packages to alter the package selection for all
devices of the target when building with CONFIG_TARGET_PER_DEVICE_ROOTFS.

In particular, this caused the brcm47xx Edimax PS-1208MFG profile to
disable mtd, dropbear, firewall and other essential packages for all
brcm47xx/generic builds.

To solve this problem, prevent profiles from mangling the global
DEFAULT_PACKAGES selection and restrict the supression of negated
packages to the local PACKAGE variable list only.

Fixes ca32373c95 ("target.mk: let profile remove from DEFAULT_PACKAGES")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
This commit is contained in:
Jo-Philipp Wich 2018-07-21 20:47:10 +02:00
parent 03fce62c09
commit 69ea512c62

View file

@ -72,7 +72,6 @@ define Profile
$(eval $(call ProfileDefault)) $(eval $(call ProfileDefault))
$(eval $(call Profile/$(1))) $(eval $(call Profile/$(1)))
dumpinfo : $(call shexport,Profile/$(1)/Description) dumpinfo : $(call shexport,Profile/$(1)/Description)
DEFAULT_PACKAGES := $(filter-out $(patsubst -%,%,$(filter -%,$(PACKAGES))),$(DEFAULT_PACKAGES))
PACKAGES := $(filter-out -%,$(PACKAGES)) PACKAGES := $(filter-out -%,$(PACKAGES))
DUMPINFO += \ DUMPINFO += \
echo "Target-Profile: $(1)"; \ echo "Target-Profile: $(1)"; \