aboutsummaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
Diffstat (limited to 'extra')
-rwxr-xr-xextra/grub/build55
-rw-r--r--extra/grub/checksums2
-rw-r--r--extra/grub/depends5
-rw-r--r--extra/grub/files/grub.default53
-rw-r--r--extra/grub/sources2
-rw-r--r--extra/grub/version1
6 files changed, 118 insertions, 0 deletions
diff --git a/extra/grub/build b/extra/grub/build
new file mode 100755
index 00000000..10513bf0
--- /dev/null
+++ b/extra/grub/build
@@ -0,0 +1,55 @@
+#!/bin/sh -e
+
+# Grub expects Python but it isn't actually needed. Give
+# it something fake so that configure passes.
+export PYTHON=/bin/true
+
+# Disable the post-python mv calls as a means of disabling
+# the Python tooling. The /bin/true above will create a
+# blank file, this prevents the blank file from overwriting
+# the existing one.
+sed 's/mv $@.new $@/:/g' grub/Makefile.in > _
+cat _ > grub/Makefile.in; rm -f _
+
+# Strip '-march' from 'CFLAGS' as per advice from upstream.
+# Fixes build fails on specific hardware.
+CFLAGS=$(printf %s "$CFLAGS" | sed 's/-march=[^ ]*//g')
+
+# Grub is built in a function so the script argument
+# needs to be stored.
+pkg_dir=$1
+
+build_grub() (
+ cp -a grub "grub-${1##*=}"
+ cd "grub-${1##*=}"
+
+ ./configure \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc \
+ --disable-werror \
+ --disable-nls \
+ --disable-grub-mkfont \
+ --disable-grub-mount \
+ "$@"
+
+ make
+ make DESTDIR="$pkg_dir" install
+)
+
+build_grub --with-platform=pc
+build_grub --with-platform=efi --disable-efiemu
+
+# Install /etc/default/grub (used by grub-mkconfig).
+install -Dm0644 grub.default "$1/etc/default/grub"
+
+# Remove gdb debugging files.
+(
+ cd "$pkg_dir/usr/lib"
+
+ rm -f grub/*/*.module
+ rm -f grub/*/*.image
+ rm -f grub/*/kernel.exec
+ rm -f grub/*/gdb_grub
+ rm -f grub/*/gmodule.pl
+)
diff --git a/extra/grub/checksums b/extra/grub/checksums
new file mode 100644
index 00000000..43950510
--- /dev/null
+++ b/extra/grub/checksums
@@ -0,0 +1,2 @@
+e5292496995ad42dabe843a0192cf2a2c502e7ffcc7479398232b10a472df77d grub-2.04.tar.xz
+5d05ace6f6dda3e32908b018a7b5c38ab195792449805cb41563899924d8cf45 grub.default
diff --git a/extra/grub/depends b/extra/grub/depends
new file mode 100644
index 00000000..b37ce94a
--- /dev/null
+++ b/extra/grub/depends
@@ -0,0 +1,5 @@
+binutils make
+bison make
+flex make
+linux-headers make
+xz
diff --git a/extra/grub/files/grub.default b/extra/grub/files/grub.default
new file mode 100644
index 00000000..a8c6ab34
--- /dev/null
+++ b/extra/grub/files/grub.default
@@ -0,0 +1,53 @@
+# GRUB boot loader configuration
+
+GRUB_DEFAULT=0
+GRUB_TIMEOUT=5
+GRUB_DISTRIBUTOR="Carbs"
+GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
+
+# Preload both GPT and MBR modules so that they are not missed
+GRUB_PRELOAD_MODULES="part_gpt part_msdos"
+
+# Uncomment to enable booting from LUKS encrypted devices
+#GRUB_ENABLE_CRYPTODISK=y
+
+# Set to 'countdown' or 'hidden' to change timeout behavior,
+# press ESC key to display menu.
+#GRUB_TIMEOUT_STYLE=menu
+
+# Uncomment to use basic console
+#GRUB_TERMINAL_INPUT=console
+
+# Uncomment to disable graphical terminal
+#GRUB_TERMINAL_OUTPUT=console
+
+# The resolution used on graphical terminal
+# note that you can use only modes which your graphic card supports via VBE
+# you can see them in real GRUB with the command `vbeinfo'
+#GRUB_GFXMODE=auto
+
+# Uncomment to allow the kernel use the same resolution used by grub
+#GRUB_GFXPAYLOAD_LINUX=keep
+
+# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
+# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
+#GRUB_DISABLE_LINUX_UUID=true
+
+# Uncomment to disable generation of recovery mode menu entries
+#GRUB_DISABLE_RECOVERY=true
+
+# Uncomment and set to the desired menu colors. Used by normal and wallpaper
+# modes only. Entries specified as foreground/background.
+#GRUB_COLOR_NORMAL="light-blue/black"
+#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
+
+# Uncomment one of them for the gfx desired, a image background or a gfxtheme
+#GRUB_BACKGROUND="/path/to/wallpaper"
+#GRUB_THEME="/path/to/gfxtheme"
+
+# Uncomment to get a beep at GRUB start
+#GRUB_INIT_TUNE="480 440 1"
+
+# Uncomment to make GRUB remember the last selection. This requires to
+# set 'GRUB_DEFAULT=saved' above.
+#GRUB_SAVEDEFAULT="true"
diff --git a/extra/grub/sources b/extra/grub/sources
new file mode 100644
index 00000000..3c08ed68
--- /dev/null
+++ b/extra/grub/sources
@@ -0,0 +1,2 @@
+https://ftp.gnu.org/gnu/grub/grub-2.04.tar.xz grub/
+files/grub.default
diff --git a/extra/grub/version b/extra/grub/version
new file mode 100644
index 00000000..621313cd
--- /dev/null
+++ b/extra/grub/version
@@ -0,0 +1 @@
+2.04 4