summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2024-06-09 16:06:07 +0100
committerLeah Rowe <leah@libreboot.org>2024-06-09 16:06:07 +0100
commitc5441bb9f538ca45468db21c1c62f45680349a3d (patch)
tree59246ade782fa728b2f0fd56ea944aac39584421
parentd33556c6ae548415a274c0a10bb122535c2fad9a (diff)
re-add ability to use cbfs grub.cfg as default
i removed this before, when making grub multi-tree, because the design i used in an earlier version of the patch actually added the grub.elf generation to grub source itself, but then i decided to hack around the grub build system from lbmk/cbmk instead re-add this functionality, so that users can easily insert their own custom grub.cfg into cbfs without needing to re-build their image. Signed-off-by: Leah Rowe <leah@libreboot.org>
-rw-r--r--config/data/grub/memdisk.cfg10
-rwxr-xr-xscript/trees4
2 files changed, 13 insertions, 1 deletions
diff --git a/config/data/grub/memdisk.cfg b/config/data/grub/memdisk.cfg
new file mode 100644
index 00000000..543e421d
--- /dev/null
+++ b/config/data/grub/memdisk.cfg
@@ -0,0 +1,10 @@
+# SPDX-License-Identifier: GPL-3.0-or-later
+# Copyright (C) 2023 Leah Rowe <leah@libreboot.org>
+
+set prefix=(memdisk)/boot/grub
+
+if [ -f (cbfsdisk)/grub.cfg ]; then
+ source (cbfsdisk)/grub.cfg
+else
+ source (memdisk)/boot/grub/grub_default.cfg
+fi
diff --git a/script/trees b/script/trees
index 68d4f94b..4d9a5d08 100755
--- a/script/trees
+++ b/script/trees
@@ -286,7 +286,9 @@ mkpayload_grub()
-O i386-coreboot -o "${cdir}/grub.elf" -d "${cdir}/grub-core/" \
--fonts= --themes= --locales= --modules="$grub_modules" \
--install-modules="$grub_install_modules" \
- "/boot/grub/grub.cfg=${cdir}/.config" || $err "$tree: !mkgrub"
+ "/boot/grub/grub_default.cfg=${cdir}/.config" \
+ "/boot/grub/grub.cfg=$grubdata/memdisk.cfg" || \
+ $err "$tree: cannot build grub.elf"
}
copy_elf()