mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-05-05 04:16:46 +02:00
testing/grub: add efi and bios subpkgs
This commit is contained in:
parent
4e41770281
commit
0192e157d5
@ -3,7 +3,7 @@
|
||||
pkgname=grub
|
||||
_ver=2.02~beta3
|
||||
pkgver=2.02_beta3
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="Bootloader with support for Linux, Multiboot and more"
|
||||
url="https://www.gnu.org/software/grub/"
|
||||
arch="all !armhf"
|
||||
@ -13,17 +13,21 @@ depends_dev=""
|
||||
makedepends="$depends_dev bison flex linux-headers xz-dev lvm2-dev
|
||||
automake autoconf libtool"
|
||||
install=""
|
||||
subpackages="$pkgname-dev $pkgname-doc"
|
||||
subpackages="$pkgname-dev $pkgname-doc $pkgname-efi"
|
||||
source="ftp://alpha.gnu.org/gnu/grub/grub-$_ver.tar.xz
|
||||
2.02_beta3-gcc6-ld-no-pie.patch
|
||||
fix-gcc-no-pie-specs.patch
|
||||
"
|
||||
builddir="$srcdir/grub-$_ver"
|
||||
|
||||
build() {
|
||||
cd "$builddir"
|
||||
autoreconf -vif
|
||||
#export CFLAGS="$CFLAGS -no-pie"
|
||||
# currently grub only builds on x86* and aarch64 systems
|
||||
# aarch64 is not supported on pc/bios platform.
|
||||
if [ ! "$CARCH" = aarch64 ]; then
|
||||
subpackages="$subpackages $pkgname-bios"
|
||||
fi
|
||||
|
||||
_build_bios() {
|
||||
cd $builddir/bios
|
||||
./configure \
|
||||
--build=$CBUILD \
|
||||
--host=$CHOST \
|
||||
@ -31,16 +35,78 @@ build() {
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--localstatedir=/var \
|
||||
--disable-nls \
|
||||
--disable-werror \
|
||||
--with-platform=pc \
|
||||
|| return 1
|
||||
make || return 1
|
||||
}
|
||||
|
||||
package() {
|
||||
_build_efi() {
|
||||
cd $builddir/efi
|
||||
./configure \
|
||||
--build=$CBUILD \
|
||||
--host=$CHOST \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--mandir=/usr/share/man \
|
||||
--localstatedir=/var \
|
||||
--disable-nls \
|
||||
--disable-werror \
|
||||
--with-platform=efi \
|
||||
--disable-efiemu \
|
||||
|| return 1
|
||||
make || return 1
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$builddir"
|
||||
autoreconf -vif || return 1
|
||||
|
||||
# BIOS build
|
||||
if [ ! "$CARCH" = aarch64 ]; then
|
||||
msg "Building grub for platform BIOS"
|
||||
cp -r "$builddir" "$builddir"/bios
|
||||
_build_bios || return 1
|
||||
fi
|
||||
|
||||
# EFI build
|
||||
msg "Building grub for platform EFI"
|
||||
cp -r "$builddir" "$builddir"/efi
|
||||
_build_efi || return 1
|
||||
}
|
||||
|
||||
package() {
|
||||
# install both version into the same directory
|
||||
# and overwrite similar files.
|
||||
|
||||
# BIOS install
|
||||
if [ ! "$CARCH" = aarch64 ]; then
|
||||
cd "$builddir"/bios
|
||||
make DESTDIR="$pkgdir" install || return 1
|
||||
fi
|
||||
|
||||
# EFI install
|
||||
cd "$builddir"/efi
|
||||
make DESTDIR="$pkgdir" install || return 1
|
||||
|
||||
rm -f "$pkgdir"/usr/lib/charset.alias
|
||||
}
|
||||
|
||||
bios() {
|
||||
pkgdesc="$pkgdesc (BIOS version)"
|
||||
depends="$pkgname"
|
||||
mkdir -p $subpkgdir/usr/lib/grub
|
||||
mv $pkgdir/usr/lib/grub/*-pc $subpkgdir/usr/lib/grub/
|
||||
}
|
||||
|
||||
efi() {
|
||||
pkgdesc="$pkgdesc (EFI version)"
|
||||
depends="$pkgname"
|
||||
mkdir -p $subpkgdir/usr/lib/grub
|
||||
mv $pkgdir/usr/lib/grub/*-efi $subpkgdir/usr/lib/grub/
|
||||
}
|
||||
|
||||
md5sums="ab399fc6f74a97d66ff77f04b743149c grub-2.02~beta3.tar.xz
|
||||
7a09f166141e2a57f1829dd6cf1424fa 2.02_beta3-gcc6-ld-no-pie.patch
|
||||
632f1e9dee0f8a4a52e592cb29cdf8cc fix-gcc-no-pie-specs.patch"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user