summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Roth <martinroth@google.com>2016-04-26 09:51:41 -0600
committerMartin Roth <martinroth@google.com>2016-04-27 19:55:40 +0200
commit4005d9b2e42d6d8e70e9fb4b88002b3a69d20bca (patch)
treec7ab4736209fe92fe5b0a17d4e9f36da97dad3bb
parent4793ec3ea18b099efab7d8acf97e0063e0f577b7 (diff)
downloadcoreboot-4005d9b2e42d6d8e70e9fb4b88002b3a69d20bca.tar.xz
payloads: Add a stable version of Memtest86+ for reproducibility
Memtest86+ was pulling origin/master which will change over time. This adds a commit-id as a stable version to allow it to be reproducible. The other secondary payloads, coreinfo and nvramcui, do not need this because they are part of the coreboot repo and not fetched from an external source. Change-Id: I20c516010f76cf03342bd8883d0ee7ac5f8bc7e4 Signed-off-by: Martin Roth <martinroth@google.com> Reviewed-on: https://review.coreboot.org/14520 Tested-by: build bot (Jenkins) Reviewed-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r--payloads/Kconfig21
-rw-r--r--payloads/external/Makefile.inc2
-rw-r--r--payloads/external/Memtest86Plus/Makefile8
3 files changed, 28 insertions, 3 deletions
diff --git a/payloads/Kconfig b/payloads/Kconfig
index 00d5d88e96..6c178d40a2 100644
--- a/payloads/Kconfig
+++ b/payloads/Kconfig
@@ -77,6 +77,27 @@ config MEMTEST_SECONDARY_PAYLOAD
Memtest86+ can be loaded as a secondary payload under SeaBIOS, GRUB,
or any other payload that can load additional payloads.
+choice
+ prompt "Memtest86+ version"
+ default MEMTEST_STABLE
+ depends on MEMTEST_SECONDARY_PAYLOAD
+
+config MEMTEST_STABLE
+ bool "Stable"
+ help
+ Stable Memtest86+ version.
+
+ For reproducible builds, this option must be selected.
+config MEMTEST_MASTER
+ bool "Master"
+ help
+ Newest Memtest86+ version.
+
+ This option will fetch the newest version of the Memtest86+ code,
+ updating as new changes are committed. This makes the build
+ non-reproducible, as it can fetch different code each time.
+endchoice
+
config NVRAMCUI_SECONDARY_PAYLOAD
bool "Load nvramcui as a secondary payload"
default n
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc
index 26a561365a..5ae9f7e6f1 100644
--- a/payloads/external/Makefile.inc
+++ b/payloads/external/Makefile.inc
@@ -122,6 +122,8 @@ payloads/external/Memtest86Plus/memtest86plus/memtest: $(top)/$(DOTCONFIG)
LD="$(LD_x86_32)" \
OBJCOPY="$(OBJCOPY_x86_32)" \
AS="$(AS_x86_32)" \
+ CONFIG_MEMTEST_MASTER=$(CONFIG_MEMTEST_MASTER) \
+ CONFIG_MEMTEST_STABLE=$(CONFIG_MEMTEST_STABLE) \
$(MEMTEST_SERIAL_OPTIONS) \
MFLAGS= MAKEFLAGS=
diff --git a/payloads/external/Memtest86Plus/Makefile b/payloads/external/Memtest86Plus/Makefile
index f77fa38a1c..90ea5e8a7a 100644
--- a/payloads/external/Memtest86Plus/Makefile
+++ b/payloads/external/Memtest86Plus/Makefile
@@ -13,8 +13,10 @@
## GNU General Public License for more details.
##
-TAG-y=origin/master
-NAME-y=MASTER
+TAG-$(CONFIG_MEMTEST_MASTER)=origin/master
+NAME-$(CONFIG_MEMTEST_MASTER)=Master
+TAG-$(CONFIG_MEMTEST_STABLE)=ca352c9a6bd8c1bba16ea22cbfc7028d97bacec9
+NAME-$(CONFIG_MEMTEST_STABLE)=Stable
project_name=Memtest86+
project_dir=$(CURDIR)/memtest86plus
@@ -33,7 +35,7 @@ fetch: $(project_dir)
git fetch; fi
checkout: fetch
- echo " Checking out $(project_name) revision $(NAME-y)"
+ echo " Checking out $(project_name) revision $(NAME-y) ($(TAG-y))"
cd $(project_dir); \
git checkout master; \
git branch -D coreboot 2>/dev/null; \