summaryrefslogtreecommitdiffstats
path: root/toolchain.inc
diff options
context:
space:
mode:
authorPatrick Georgi <pgeorgi@chromium.org>2015-04-30 14:25:14 +0200
committerPatrick Georgi <pgeorgi@google.com>2015-04-30 15:39:53 +0200
commit27ef602fab2074a5e524f9448b61f5b7c5a7b2d5 (patch)
tree0439e10c5b96ed3b7f7a0d58ae7c988936bba34e /toolchain.inc
parent8ef8afbb38734fea50b926c94e994b2682328a0d (diff)
downloadcoreboot-27ef602fab2074a5e524f9448b61f5b7c5a7b2d5.tar.gz
coreboot-27ef602fab2074a5e524f9448b61f5b7c5a7b2d5.tar.bz2
coreboot-27ef602fab2074a5e524f9448b61f5b7c5a7b2d5.zip
vboot: split class in library and stage
The build system includes a bunch of files into verstage that also exist in romstage - generic drivers etc. These create link time conflicts when trying to link both the verstage copy and romstage copy together in a combined configuration, so separate "stage" parts (that allow things to run) from "library" parts (that contain the vboot specifics). Change-Id: Ieed910fcd642693e5e89e55f3e6801887d94462f Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Reviewed-on: http://review.coreboot.org/10041 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Diffstat (limited to 'toolchain.inc')
-rw-r--r--toolchain.inc6
1 files changed, 4 insertions, 2 deletions
diff --git a/toolchain.inc b/toolchain.inc
index 9820fa222fb8..36402fec9e99 100644
--- a/toolchain.inc
+++ b/toolchain.inc
@@ -51,7 +51,8 @@ HOSTCXX:=CCC_CXX="$(HOSTCXX)" $(CXX)
ROMCC=CCC_CC="$(ROMCC_BIN)" $(CC)
endif
-COREBOOT_STANDARD_STAGES := bootblock verstage romstage ramstage
+COREBOOT_STANDARD_STAGES := bootblock libverstage verstage romstage ramstage
+MAP-libverstage := verstage
ARCHDIR-i386 := x86
ARCHDIR-x86_32 := x86
@@ -81,8 +82,9 @@ toolchain_to_dir = \
# This step is essential for initializing the toolchain for coreboot standard
# stages i.e. bootblock, romstage and ramstage, since it acts as the second
# parameter to create_class_compiler below in init_standard_toolchain
+map_stage = $(strip $(if $(MAP-$(1)),$(MAP-$(1)),$(1)))
set_stage_toolchain= \
- $(foreach arch,$(ARCH_SUPPORTED),$(eval ARCH-$(1)-$($(shell echo CONFIG_ARCH_$(1)_$(arch) | tr '[:lower:]' '[:upper:]')) := $(arch)))
+ $(foreach arch,$(ARCH_SUPPORTED),$(eval ARCH-$(1)-$($(shell echo CONFIG_ARCH_$(call map_stage,$(1))_$(arch) | tr '[:lower:]' '[:upper:]')) := $(arch)))
# create_class_compiler: Used to create compiler tool set for
# special classes