From 7e9b9d893c08e5cf92a4620df476238008511ecd Mon Sep 17 00:00:00 2001 From: Patrick Georgi Date: Mon, 30 Apr 2012 21:06:10 +0200 Subject: [PATCH] Add Kconfig options to handle the blobs repository One option to allow using the repo (defaults to no), one to let boards state that they require it in the current configuration. The build system checks out the repo if allowed, and fails if the repo is requested by the configuration but not desired by the user. Change-Id: If71d80b329cf528aa467fcb0b4d9d7c7434aab27 Signed-off-by: Patrick Georgi Reviewed-on: http://review.coreboot.org/957 Reviewed-by: Stefan Reinauer Tested-by: build bot (Jenkins) --- Makefile.inc | 8 ++++++++ src/Kconfig | 18 ++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/Makefile.inc b/Makefile.inc index 53a3dadab0..c17978498e 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -67,6 +67,14 @@ ifeq ($(CONFIG_TRACE),y) ramstage-c-ccopts:= -finstrument-functions endif +ifeq ($(CONFIG_USE_BLOBS),y) +forgetthis:=$(shell git submodule update --init --checkout 3rdparty) +else +ifeq ($(CONFIG_REQUIRES_BLOB),y) +$(error Your current configuration requires binary-only components, but you did not choose to use them) +endif +endif + smm-c-ccopts:=-D__SMM__ smm-S-ccopts:=-D__SMM__ diff --git a/src/Kconfig b/src/Kconfig index e8a560df24..d449b30b84 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -175,6 +175,24 @@ config COLLECT_TIMESTAMPS Make coreboot create a table of timer-ID/timer-value pairs to allow measuring time spent at different phases of the boot process. +config USE_BLOBS + bool "Allow use of binary-only repository" + default n + help + This draws in the blobs repository, which contains binary files that + might be required for some chipsets or boards. + This flag ensures that a "Free" option remains available for users. + +config REQUIRES_BLOB + bool + default n + help + This option can be configured by boards that require the blobs + repository for the default configuration. It will make the build + fail if USE_BLOBS is disabled. Users that still desire to do a + coreboot build for such a board can override this manually, but + this option serves as warning that it might fail. + endmenu source src/mainboard/Kconfig