mirror of
https://git.savannah.gnu.org/git/gnuboot.git
synced 2025-01-07 00:37:42 +01:00
89517ed6b9
this is forked from the "libre" branch in osboot, which is itself a libre, deblobbed fork of osboot, a blobbed up fork of libreboot libreboot needed to be purged clean. this is the new libreboot development repository. the old one has been abandoned
128 lines
4.4 KiB
Diff
128 lines
4.4 KiB
Diff
From 91b073efaca57d455e2f25370918b9796cbc1a15 Mon Sep 17 00:00:00 2001
|
|
From: Leah Rowe <leah@libreboot.org>
|
|
Date: Thu, 13 May 2021 23:52:08 +0100
|
|
Subject: [PATCH 01/17] hardcode tianocore revisions, and don't automatically
|
|
download
|
|
|
|
---
|
|
Makefile | 2 +-
|
|
payloads/external/tianocore/Makefile | 57 ++++++++--------------------
|
|
2 files changed, 17 insertions(+), 42 deletions(-)
|
|
|
|
diff --git a/Makefile b/Makefile
|
|
index 02c6288f15..8290b45e89 100644
|
|
--- a/Makefile
|
|
+++ b/Makefile
|
|
@@ -486,7 +486,7 @@ distclean-utils:
|
|
$(MAKE) -C util/$(tool) distclean MFLAGS= MAKEFLAGS= ; \
|
|
rm -f /util/$(tool)/junit.xml;)
|
|
|
|
-distclean: clean clean-ctags clean-cscope distclean-payloads distclean-utils
|
|
+distclean: clean clean-ctags clean-cscope distclean-utils
|
|
rm -f .config .config.old ..config.tmp* .kconfig.d .tmpconfig* .ccwrap .xcompile
|
|
rm -rf coreboot-builds coreboot-builds-chromeos
|
|
rm -f abuild*.xml junit.xml* util/lint/junit.xml
|
|
diff --git a/payloads/external/tianocore/Makefile b/payloads/external/tianocore/Makefile
|
|
index 7cd34f1732..3527b7a2ad 100644
|
|
--- a/payloads/external/tianocore/Makefile
|
|
+++ b/payloads/external/tianocore/Makefile
|
|
@@ -1,5 +1,8 @@
|
|
## SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
+# This file has been modified for libreboot/osboot/osboot-libre.
|
|
+# The tianocore repo/branch/revision has been hardcoded, as have some options
|
|
+
|
|
# force the shell to bash - the edksetup.sh script doesn't work with dash
|
|
export SHELL := env bash
|
|
|
|
@@ -9,51 +12,31 @@ project_git_repo=https://github.com/mrchromebox/edk2
|
|
project_git_branch=coreboot_fb
|
|
upstream_git_repo=https://github.com/tianocore/edk2
|
|
|
|
-ifeq ($(CONFIG_TIANOCORE_UEFIPAYLOAD),y)
|
|
-bootloader=UefiPayloadPkg
|
|
-logo_pkg=MdeModulePkg
|
|
-build_flavor=-D BOOTLOADER=COREBOOT -D PCIE_BASE=$(CONFIG_MMCONF_BASE_ADDRESS) -DPS2_KEYBOARD_ENABLE
|
|
-TAG=upstream/master
|
|
-else
|
|
bootloader=CorebootPayloadPkg
|
|
logo_pkg=CorebootPayloadPkg
|
|
# STABLE revision is MrChromebox's coreboot framebuffer (coreboot_fb) branch
|
|
-TAG=origin/$(project_git_branch)
|
|
-endif
|
|
-
|
|
-ifneq ($(CONFIG_TIANOCORE_REVISION_ID),)
|
|
-TAG=$(CONFIG_TIANOCORE_REVISION_ID)
|
|
-endif
|
|
+TAG=ca08920ded1649921a12105d1959df423733431f
|
|
+# above is a commit ID in MrChromebox's coreboot_fb branch
|
|
|
|
export EDK_TOOLS_PATH=$(project_dir)/BaseTools
|
|
|
|
-ifeq ($(CONFIG_TIANOCORE_DEBUG),y)
|
|
-BUILD_TYPE=DEBUG
|
|
-else
|
|
BUILD_TYPE=RELEASE
|
|
-endif
|
|
|
|
-ifneq ($(CONFIG_TIANOCORE_USE_8254_TIMER), y)
|
|
TIMER=-DUSE_HPET_TIMER
|
|
-endif
|
|
|
|
-TIMEOUT=-D PLATFORM_BOOT_TIMEOUT=$(CONFIG_TIANOCORE_BOOT_TIMEOUT)
|
|
+# see coreboot 61a3c8a005922d46425c84f847c0ad26e9c3cdca
|
|
+# "2 seconds for board with internal display"
|
|
+# "5 seconds for board without internal display"
|
|
+# libreboot takes the shotgun approach. 5 seconds for all
|
|
+TIMEOUT=-D PLATFORM_BOOT_TIMEOUT=5
|
|
|
|
-ifeq ($(CONFIG_TIANOCORE_COREBOOTPAYLOAD),y)
|
|
-ifeq ($(CONFIG_TIANOCORE_TARGET_IA32), y)
|
|
-ARCH=-a IA32 -p CorebootPayloadPkg/CorebootPayloadPkgIa32.dsc
|
|
-else
|
|
ARCH=-a IA32 -a X64 -p CorebootPayloadPkg/CorebootPayloadPkgIa32X64.dsc
|
|
-endif
|
|
-else
|
|
-ARCH=-a IA32 -a X64 -p UefiPayloadPkg/UefiPayloadPkg.dsc
|
|
-endif
|
|
|
|
-BUILD_STR=-q $(ARCH) -t COREBOOT -b $(BUILD_TYPE) $(TIMER) $(TIMEOUT) $(build_flavor)
|
|
+BUILD_STR=-q $(ARCH) -t COREBOOT -b $(BUILD_TYPE) $(TIMER) $(TIMEOUT)
|
|
|
|
all: clean build
|
|
|
|
-$(project_dir):
|
|
+download:
|
|
echo " Cloning $(project_name) from Git"
|
|
git clone --branch $(project_git_branch) $(project_git_repo) $(project_dir); \
|
|
cd $(project_dir); \
|
|
@@ -76,17 +59,9 @@ update: $(project_dir)
|
|
git submodule update --init
|
|
|
|
checktools:
|
|
- echo "Checking uuid-dev..."
|
|
- echo "#include <uuid/uuid.h>" > libtest.c
|
|
- echo "int main(int argc, char **argv) { (void) argc; (void) argv; return 0; }" >> libtest.c
|
|
- $(HOSTCC) $(HOSTCCFLAGS) libtest.c -o libtest >/dev/null 2>&1 && echo " found uuid-dev." || \
|
|
- ( echo " Not found."; echo "ERROR: please_install uuid-dev (libuuid-devel)"; exit 1 )
|
|
- rm -rf libtest.c libtest
|
|
- echo "Checking nasm..."
|
|
- type nasm > /dev/null 2>&1 && echo " found nasm." || \
|
|
- ( echo " Not found."; echo "Error: Please install nasm."; exit 1 )
|
|
-
|
|
-build: update checktools
|
|
+ echo "tianocore tool check disabled"
|
|
+
|
|
+build: checktools
|
|
unset CC; $(MAKE) -C $(project_dir)/BaseTools
|
|
echo " build $(project_name) $(TAG)"
|
|
if [ -n "$(CONFIG_TIANOCORE_BOOTSPLASH_FILE)" ]; then \
|
|
@@ -116,4 +91,4 @@ clean:
|
|
distclean:
|
|
rm -rf $(project_dir)
|
|
|
|
-.PHONY: all update checktools config build clean distclean
|
|
+.PHONY: all update checktools config build clean distclean download
|
|
--
|
|
2.25.1
|
|
|