aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuild2
-rwxr-xr-xresources/utilities/grub-assemble/gen.sh56
-rwxr-xr-xresources/utilities/grub-assemble/gen.txtmode.sh29
-rwxr-xr-xresources/utilities/grub-assemble/gen.vesafb.sh28
4 files changed, 57 insertions, 58 deletions
diff --git a/build b/build
index e80c4cbd..de6fba09 100755
--- a/build
+++ b/build
@@ -32,7 +32,7 @@ cd coreboot/
for romtype in txtmode vesafb
do
cd ../resources/utilities/grub-assemble
- ./gen."$romtype".sh
+ ./gen.sh "$romtype"
rm -f ../../../coreboot/grub_"$romtype".elf
mv grub_"$romtype".elf ../../../coreboot/
cd ../../../coreboot
diff --git a/resources/utilities/grub-assemble/gen.sh b/resources/utilities/grub-assemble/gen.sh
new file mode 100755
index 00000000..b784366e
--- /dev/null
+++ b/resources/utilities/grub-assemble/gen.sh
@@ -0,0 +1,56 @@
+#!/bin/bash
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved. This file is offered as-is,
+# without any warranty.
+
+set -u -e -v
+
+if (( $# != 1 )); then
+ echo "Usage: ./gen.sh mode"
+ echo "Example: ./gen.sh vesafb"
+ echo "Example: ./gen.sh txtmode"
+ echo "You need to specify exactly 1 argument"
+ exit 1
+fi
+
+# This is where GRUB is expected to be (outside of the grub-assemble, instead in main checkout)
+grubdir="../../../grub"
+
+source "modules.conf"
+
+if [ "$1" = "vesafb" ]
+then
+ # Generate the grub.elf (vesafb)
+ $grubdir/grub-mkstandalone \
+ --grub-mkimage=$grubdir/grub-mkimage \
+ -O i386-coreboot \
+ -o grub_vesafb.elf \
+ -d $grubdir/grub-core/ \
+ --fonts= --themes= --locales= \
+ --modules="$grub_modules" \
+ --install-modules="$grub_install_modules" \
+ /boot/grub/grub.cfg="../../../resources/grub/config/grub_memdisk.cfg" \
+ /background.jpg="../../../resources/grub/background/background.jpg" \
+ /dejavusansmono.pf2="../../../resources/grub/font/dejavusansmono.pf2" \
+ $(./grub_memdisk_keymap)
+elif [ "$1" = "txtmode" ]
+then
+ # Generate the grub.elf (txtmode)
+ $grubdir/grub-mkstandalone \
+ --grub-mkimage=$grubdir/grub-mkimage \
+ -O i386-coreboot \
+ -o grub_txtmode.elf \
+ -d $grubdir/grub-core/ \
+ --fonts= --themes= --locales= \
+ --modules="$grub_modules" \
+ --install-modules="$grub_install_modules" \
+ /boot/grub/grub.cfg="../../../resources/grub/config/grub_memdisk.cfg" \
+ /memtest="../../../memtest86+-5.01/memtest" \
+ /invaders.exec="../../../grubinvaders/invaders.exec" \
+ $(./grub_memdisk_keymap)
+else
+ echo "grub-assemble gen.sh: invalid mode '$1'"
+ exit 1
+fi
+
diff --git a/resources/utilities/grub-assemble/gen.txtmode.sh b/resources/utilities/grub-assemble/gen.txtmode.sh
deleted file mode 100755
index 1906f772..00000000
--- a/resources/utilities/grub-assemble/gen.txtmode.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-# Copying and distribution of this file, with or without modification,
-# are permitted in any medium without royalty provided the copyright
-# notice and this notice are preserved. This file is offered as-is,
-# without any warranty.
-
-set -u -e -v
-
-# TODO: Fail (and clean up) if GRUB isn't actually built. Error checking.
-
-# This is where GRUB is expected to be (outside of the grub-assemble, instead in main checkout)
-grubdir="../../../grub"
-
-source "modules.conf"
-
-# Generate the grub.elf
-$grubdir/grub-mkstandalone \
- --grub-mkimage=$grubdir/grub-mkimage \
- -O i386-coreboot \
- -o grub_txtmode.elf \
- -d $grubdir/grub-core/ \
- --fonts= --themes= --locales= \
- --modules="$grub_modules" \
- --install-modules="$grub_install_modules" \
- /boot/grub/grub.cfg="../../../resources/grub/config/grub_memdisk.cfg" \
- /memtest="../../../memtest86+-5.01/memtest" \
- /invaders.exec="../../../grubinvaders/invaders.exec" \
- $(./grub_memdisk_keymap) \
-
diff --git a/resources/utilities/grub-assemble/gen.vesafb.sh b/resources/utilities/grub-assemble/gen.vesafb.sh
deleted file mode 100755
index 627c7d4c..00000000
--- a/resources/utilities/grub-assemble/gen.vesafb.sh
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/bash
-# Copying and distribution of this file, with or without modification,
-# are permitted in any medium without royalty provided the copyright
-# notice and this notice are preserved. This file is offered as-is,
-# without any warranty.
-
-set -u -e -v
-
-# TODO: Fail (and clean up) if GRUB isn't actually built. Error checking.
-
-# This is where GRUB is expected to be (outside of the grub-assemble, instead in main checkout)
-grubdir="../../../grub"
-
-source "modules.conf"
-
-# Generate the grub.elf
-$grubdir/grub-mkstandalone \
- --grub-mkimage=$grubdir/grub-mkimage \
- -O i386-coreboot \
- -o grub_vesafb.elf \
- -d $grubdir/grub-core/ \
- --fonts= --themes= --locales= \
- --modules="$grub_modules" \
- --install-modules="$grub_install_modules" \
- /boot/grub/grub.cfg="../../../resources/grub/config/grub_memdisk.cfg" \
- /background.jpg="../../../resources/grub/background/background.jpg" \
- /dejavusansmono.pf2="../../../resources/grub/font/dejavusansmono.pf2" \
- $(./grub_memdisk_keymap) \