Makefile: separate PLATFORM into BOARD+FIRMWARE

Combination of BOARD and FIRMWARE is a more precious definition.
And we decide PLATFORM_XXX based on FIRMWARE, remove relative one in
board config.

We reserve PLATFORM for backward compatibility.

Tracked-On: #1995
Signed-off-by: Tw <wei.tan@intel.com>
Reviewed-by: Yin Fengwei < fengwei.yin@intel.com>
Reviewed-by: Binbin Wu <binbin.wu@intel.com>
This commit is contained in:
Tw
2018-12-11 16:00:56 +08:00
committed by wenlingz
parent 064a31067f
commit 59c2b33a90
4 changed files with 40 additions and 20 deletions

View File

@@ -1,4 +1,3 @@
# Generated by Kconfiglib (https://github.com/ulfalizer/Kconfiglib)
CONFIG_PLATFORM_UEFI=y
CONFIG_BOARD="NUC6CAYH"
CONFIG_SERIAL_LEGACY=y

View File

@@ -1,5 +1,4 @@
# Generated by Kconfiglib (https://github.com/ulfalizer/Kconfiglib)
CONFIG_PLATFORM_UEFI=y
CONFIG_BOARD="UP2"
CONFIG_SERIAL_PCI=y
CONFIG_SERIAL_PCI_BDF=0x00C1

View File

@@ -29,6 +29,13 @@ override RELEASE := n
endif
endif
OVERWRITTEN := ""
ifeq ($(FIRMWARE),sbl)
OVERWRITTEN += "PLATFORM_SBL=y"
else ifeq ($(FIRMWARE),uefi)
OVERWRITTEN += "PLATFORM_UEFI=y"
endif
-include $(HV_OBJDIR)/$(HV_CONFIG_MK)
ifeq ($(shell [ $(HV_OBJDIR)/$(HV_CONFIG) -nt $(HV_OBJDIR)/$(HV_CONFIG_MK) ] && echo 1),1)
# config.mk may be outdated if .config has been overwritten. To update config.mk
@@ -37,17 +44,6 @@ ifeq ($(shell [ $(HV_OBJDIR)/$(HV_CONFIG) -nt $(HV_OBJDIR)/$(HV_CONFIG_MK) ] &&
-include $(HV_OBJDIR)/$(HV_CONFIG)
endif
# Backward-compatibility for PLATFORM=(sbl|uefi)
# * PLATFORM=sbl is equivalent to BOARD=apl-mrb
# * PLATFORM=uefi is equivalent to BOARD=apl-nuc (i.e. NUC6CAYH)
ifndef BOARD
ifeq ($(PLATFORM),sbl)
BOARD=apl-mrb
else ifeq ($(PLATFORM),uefi)
BOARD=apl-nuc
endif
endif
$(eval $(call override_config,BOARD,apl-mrb))
$(eval $(call override_config,RELEASE,n))
@@ -97,7 +93,7 @@ oldconfig: $(KCONFIG_DEPS)
@BOARD=$(TARGET_BOARD) \
python3 $(KCONFIG_DIR)/silentoldconfig.py Kconfig \
$(HV_OBJDIR)/$(HV_CONFIG) \
RELEASE=$(RELEASE)
RELEASE=$(RELEASE) $(OVERWRITTEN)
# Minimize the current .config. This target can be used to generate a defconfig
# for future use.