diff options
Diffstat (limited to 'main/grub/APKBUILD')
-rw-r--r-- | main/grub/APKBUILD | 105 |
1 files changed, 59 insertions, 46 deletions
diff --git a/main/grub/APKBUILD b/main/grub/APKBUILD index b3c6351eb24..9820b1a0f35 100644 --- a/main/grub/APKBUILD +++ b/main/grub/APKBUILD @@ -1,16 +1,16 @@ # Contributor: Carlo Landmeter <clandmeter@alpinelinux.org> # Maintainer: Timo Teräs <timo.teras@iki.fi> pkgname=grub -pkgver=2.06 -pkgrel=2 +pkgver=2.12 +pkgrel=3 pkgdesc="Bootloader with support for Linux, Multiboot and more" url="https://www.gnu.org/software/grub/" arch="all !s390x" license="GPL-3.0-or-later" -depends="mkinitfs" +depends="initramfs-generator" triggers="grub.trigger=/boot" -makedepends="bison flex linux-headers xz-dev lvm2-dev fuse-dev - automake autoconf libtool python3 freetype-dev unifont gettext-dev" +makedepends="autoconf automake bison flex font-unifont freetype-dev + fuse-dev gawk gettext-dev libtool linux-headers lvm2-dev python3 xz-dev" install="$pkgname.post-upgrade" # strip handled by grub Makefiles, abuild strip breaks xen pv-grub options="!check !strip" # Cannot test boot loader. @@ -19,7 +19,7 @@ subpackages=" $pkgname-doc $pkgname-mkfont $pkgname-mount - $pkgname-bash-completion:bashcomp:noarch + $pkgname-bash-completion " # currently grub only builds on x86*, aarch64 and ppc* systems @@ -31,37 +31,58 @@ case "$CARCH" in riscv*) flavors="efi";; ppc*) flavors="ieee1275"; makedepends="$makedepends powerpc-utils" ;; s390x) flavors="emu" ;; + loongarch64) flavors="efi" ;; esac for f in $flavors; do - [ x"$f" = x"xenhost_pvh" ] && continue # xenhost_pvh shipped in the xenhost subpackage + [ "$f" = "xenhost_pvh" ] && continue # xenhost_pvh shipped in the xenhost subpackage subpackages="$subpackages $pkgname-$f" done source="https://ftp.gnu.org/gnu/grub/grub-$pkgver.tar.xz - fix-gcc-no-pie-specs.patch + update-grub grub-xen-host_grub.cfg - alpine-mkconfig.patch - lang-C.UTF-8.patch - 0001-loader-drop-argv-argument-in-grub_initrd_load.patch - 0002-efi-add-definition-of-LoadFile2-protocol.patch - 0003-efi-implemented-LoadFile2-initrd-loading-protocol-fo.patch - 0004-linux-ignore-FDT-unless-we-need-to-modify-it.patch - 0005-loader-Move-arm64-linux-loader-to-common-code.patch - 0006-RISC-V-Update-image-header.patch - 0007-RISC-V-Use-common-linux-loader.patch - 0008-fix-build-error-in-binutils-2.36.patch - 0009-fix-kernel-version-detection.patch + + 0001-Fix-grub-mkconfig-detection-of-linux-edge-virt.patch + 0002-ensure-grub-mkconfig-ignores-.apk-new-files.patch + 0003-prevent-harmless-LVM-warnings-from-grub-probe.patch + 0004-Handle-encrypted-zfs-root-partition.patch + 0005-Alpine-Linux-fixes-for-menu.patch + 0006-build-force-no-pie.patch + 0007-uefi-firmware-remove-fsetup-check.patch " +# secfixes: +# 2.06-r13: +# - CVE-2021-3697 +# 2.06-r0: +# - CVE-2021-3418 +# - CVE-2020-10713 +# - CVE-2020-14308 +# - CVE-2020-14309 +# - CVE-2020-14310 +# - CVE-2020-14311 +# - CVE-2020-14372 +# - CVE-2020-15705 +# - CVE-2020-15706 +# - CVE-2020-15707 +# - CVE-2020-25632 +# - CVE-2020-25647 +# - CVE-2020-27749 +# - CVE-2020-27779 +# - CVE-2021-20225 +# - CVE-2021-20233 + prepare() { default_prepare - PYTHON=python3 ./autogen.sh + PYTHON=python3 sh ./autogen.sh + + # Required to fix 2.12 build - (empty) file is missing from release + touch "$builddir"/grub-core/extra_deps.lst } _build_flavor() { local flavor="$1" shift - local _configure="$@" msg "Building grub for platform $flavor" mkdir -p "$srcdir"/build-$flavor @@ -76,7 +97,7 @@ _build_flavor() { --localstatedir=/var \ --disable-nls \ --disable-werror \ - $_configure + "$@" make } @@ -84,10 +105,12 @@ build() { local f for f in $flavors; do case "$f" in - bios) _build_flavor $f --with-platform=pc;; + bios) CFLAGS="${CFLAGS/-fno-plt/}" \ + _build_flavor $f --with-platform=pc;; efi) _build_flavor $f --with-platform=efi --disable-efiemu;; xenhost) _build_flavor $f --with-platform=xen;; - xenhost_pvh) _build_flavor $f --with-platform=xen_pvh --target=i386;; + xenhost_pvh) CFLAGS="${CFLAGS/-fno-plt/}" \ + _build_flavor $f --with-platform=xen_pvh --target=i386;; *) _build_flavor $f --with-platform=$f;; esac @@ -173,6 +196,8 @@ package() { mkdir -p "$pkgdir"/usr/share/bash-completion mv "$pkgdir"/etc/bash_completion.d "$pkgdir"/usr/share/bash-completion/completions + + install -D -m755 "$srcdir"/update-grub "$pkgdir"/usr/sbin/update-grub } bios() { @@ -228,32 +253,20 @@ mkfont() { mount() { pkgdesc="$pkgdesc (mount utility)" - depends="$pkgname" + depends="" mkdir -p $subpkgdir/usr/bin mv $pkgdir/usr/bin/grub-mount $subpkgdir/usr/bin/ } -bashcomp() { - depends="" - pkgdesc="Bash completions for $pkgname" - install_if="$pkgname=$pkgver-r$pkgrel bash-completion" - - amove usr/share/bash-completion/completions -} - sha512sums=" -4f11c648f3078567e53fc0c74d5026fdc6da4be27d188975e79d9a4df817ade0fe5ad2ddd694238a07edc45adfa02943d83c57767dd51548102b375e529e8efe grub-2.06.tar.xz -f2a7d9ab6c445f4e402e790db56378cecd6631b5c367451aa6ce5c01cd95b95c83c3dd24d6d4b857f8f42601eba82c855607513eb6ce5b2af6bd6c71f046e288 fix-gcc-no-pie-specs.patch +761c060a4c3da9c0e810b0ea967e3ebc66baa4ddd682a503ae3d30a83707626bccaf49359304a16b3a26fc4435fe6bea1ee90be910c84de3c2b5485a31a15be3 grub-2.12.tar.xz +85b3c56670fb0aaaf831cc6d7ca45faeb68b844cb17cfd6f9b51c2473f0b153cfa7b26ff8bf00a88b2ed3e0ae69a1e8f735256e6cecc91e959169606e2abf887 update-grub 4e7394e0fff6772c89683039ccf81099ebbfe4f498e6df408977a1488fd59389b6e19afdbf0860ec271e2b2aea0df7216243dcc8235d1ca3af0e7f4d0a9d60a4 grub-xen-host_grub.cfg -84d9694af384336c0846faad968a63b154e2bd957671fa7c0163c36e20fd086a8d5b67ddf5eb983a11a69f65dac52668d0f51537e7cfe9a1ea9bca7aba91f20b alpine-mkconfig.patch -f23702741f2a37c83d0cbf16a000a6229dfd433cd583f3254d523ce35b3668c1db2d8a704a75013e74655ec4f9da5db6b630aa92e3ca5cc47df44cc9e41d1806 lang-C.UTF-8.patch -c0ea8ef9a3d4e511fae97a4b90dc6f407c5b0a81c922924992f3eccd49fad0886f2e06ff21731cc59d42a6ac28272eb859a7ee9f14642ae1ad705f2cd1da1956 0001-loader-drop-argv-argument-in-grub_initrd_load.patch -708c3e8ca60638b7961aac64fe1eecb21ef9db844b4a21c2d36303c7fcd71173ba13dc0df3c8ae09b4a0a6a4a5b7fb3c41736a9bf6d1ef367c73dcf5bdf17668 0002-efi-add-definition-of-LoadFile2-protocol.patch -aa2fbabeab2e8f517128f0d81d3c76eba18b24518b616d4574ffaaec7d4765e02b5b118caf04da1e225342a66700f2774c6a04c1ebfd32747499eb3cbc9b72ea 0003-efi-implemented-LoadFile2-initrd-loading-protocol-fo.patch -6616373b6c94f48dd8ee0636973451a7cf492ea8dfc854b9c250bcc291d5c3a9efae51ad9d37b7298dc8e6f22041109b4ad8e82cf75c9514b5dfaa78a02d9ce1 0004-linux-ignore-FDT-unless-we-need-to-modify-it.patch -74b2bf8e9da604c5ca60ed13e389e48ceb4eeea1669b8ac720cdc452a4450676fe4bb961a63d31603bcdc9fe15ab6a8cb74b9ff97b6d7d85f1aaba24b1e9e244 0005-loader-Move-arm64-linux-loader-to-common-code.patch -4901c964278ab8a46901b905efef4562aa4942d6c37be052db9536d4779ecea6a0cf68fcc97fe6ef2b39c54cd598d4f8351cf3e27c3dacff888549bdc35deee3 0006-RISC-V-Update-image-header.patch -721c9d7aefd9d9fdd4fe92c229122c3311e75266a9419a12f5f77536099070a232b6c4ff3c33ab5a2cb6f7f917ae0d6510b09045d2f035f87c65b4dd7f09d3ee 0007-RISC-V-Use-common-linux-loader.patch -8c35663ef72683bd23c18e75134a0ddb1bb9a7c053ed87691e2ac5c9765fdf802761a6ad54f8bdc7999679d9cc5ebea9c01f1c0f615ac90505f7a398129d157b 0008-fix-build-error-in-binutils-2.36.patch -d4432a36286f0ad7d3527d34e20daf9fbef24d6037171582ae3ccdd51668ffe422b87d984f107a9b4dcf019b89ac76dd322d64e42bbfa64bb6789d3d897fc1f2 0009-fix-kernel-version-detection.patch +d45f416f7308f338cd187909207cd8329dcb21e22ab0573ae932110c3e108e4bafe6411ae22b5f87809bea39544660dcb03e3fea2c1c33492cd230fa6d3b2760 0001-Fix-grub-mkconfig-detection-of-linux-edge-virt.patch +e1612f34d14644b30a63d9dc18a0eaf9617ef9f4aa6787c386e6304e15b4573f5149758936cac1ceffdb4e39f6a83e7e7c01a7ef3ed2f7bc974971ae0e2c644c 0002-ensure-grub-mkconfig-ignores-.apk-new-files.patch +d8606bc2fc6b34e683fdba8b2a131b7d5bede907556c141a30be1d7475a65bf5e2266d577f7a0f0da91646f8605c74d083858c100d2285375474249e53c14fd4 0003-prevent-harmless-LVM-warnings-from-grub-probe.patch +0f64ab38da309d3c91043b4b662bd8facbcad859c3150da0b15aa0874e33640de1ad7b1539f858f69d26f72512ebbaa70556f07613bea59d1ce509933ba5b753 0004-Handle-encrypted-zfs-root-partition.patch +474f3576b45f612de4b157f951fbd334d7e136275dd2640e2d3deac7c813e4e8a8809a3b798476eb51cb0a3dd42b52583f7fe526fc78e7638f4506861c98a062 0005-Alpine-Linux-fixes-for-menu.patch +bb792f7c7be99dee95a031e48be69698ec8e0e76a3060bff314922cca19f086525af6680fb3ea845949be85c7731659a7ab91b2b008e3d526d1549bb108053c2 0006-build-force-no-pie.patch +c0bea923acc6affd32e78a58685e847f24e26c501b5bbabee99cc6e25c5668263e61f0bf508a6741bd75fef891ca3229f9d746ef254c72d2cb8dca7c18f92f54 0007-uefi-firmware-remove-fsetup-check.patch " |