build: do not alter global default package selection from profiles
authorJo-Philipp Wich <jo@mein.io>
Sat, 21 Jul 2018 18:47:10 +0000 (20:47 +0200)
committerJo-Philipp Wich <jo@mein.io>
Sat, 21 Jul 2018 18:53:43 +0000 (20:53 +0200)
This partly reverts ca32373c951c651f4fe5d8f99ddeb8d4f20bbe3e 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>
(cherry picked from commit 69ea512c62619b8b650d4e03d071b36a526734ce)

include/target.mk

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