blob: 4c816ef0b3c9d25f0b5dd38081f628457234f02f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
# Maintainer: streaksu <streaksu@member.fsf.org>
pkgname=limine
pkgver=7.4.1
pkgrel=0
pkgdesc="Advanced, portable, multiprotocol bootloader"
url="https://limine-bootloader.org"
# only these supported
arch="aarch64 x86 x86_64 riscv64"
license="BSD-2-Clause"
install="
$pkgname.post-install
$pkgname-efi-updater.post-upgrade
"
makedepends="
clang
lld
llvm
mtools
nasm
"
subpackages="
$pkgname-doc
$pkgname-dev
$pkgname-cd:_cd
$pkgname-pxe
$pkgname-sys
$pkgname-x86_32:_32
$pkgname-efi-updater:updater
"
source="https://github.com/limine-bootloader/limine/releases/download/v$pkgver/limine-$pkgver.tar.gz
limine-efi-updater.sh
limine-efi.conf
"
options="!check" # no tests in tarball
case "$CARCH" in
aarch64|riscv64|x86_64)
# can't build these on x86
subpackages="
$subpackages
$pkgname-x86_64:_64
$pkgname-aarch64:_64_arm
$pkgname-riscv64:_64_riscv
"
_conf="--enable-all"
;;
x86)
_conf="
--enable-bios
--enable-bios-cd
--enable-bios-pxe
--enable-uefi-cd
--enable-uefi-ia32
"
;;
esac
build() {
./configure \
--host=$CHOST \
--prefix=/usr \
$_conf
make
}
package() {
provides="$pkgname-enroll-config=$pkgver-r$pkgrel $pkgname-deploy=$pkgver-r$pkgrel"
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir"/limine-efi.conf -t "$pkgdir"/etc/limine/
install -Dm755 "$srcdir"/limine-efi-updater.sh -t "$pkgdir"/usr/bin/
}
_cd() {
pkgdesc="$pkgdesc (cd/efi files)"
depends="$pkgname=$pkgver-r$pkgrel $pkgname-sys=$pkgver-r$pkgrel"
amove usr/share/limine/limine-*-cd.bin
}
pxe() {
pkgdesc="$pkgdesc (pxe executable)"
depends="$pkgname=$pkgver-r$pkgrel $pkgname-sys=$pkgver-r$pkgrel"
amove usr/share/limine/limine-bios-pxe.bin
}
sys() {
pkgdesc="$pkgdesc (sys file)"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/share/limine/limine-bios.sys
}
_32() {
pkgdesc="$pkgdesc (32-bit x86 uefi image)"
depends="$pkgname=$pkgver-r$pkgrel"
# renamed to be less vague
provides="$pkgname-32=$pkgver-r$pkgrel"
replaces="$pkgname-32"
amove usr/share/limine/BOOTIA32.EFI
}
_64() {
pkgdesc="$pkgdesc (64-bit x86 uefi image)"
depends="$pkgname=$pkgver-r$pkgrel"
# renamed to be less vague
provides="$pkgname-64=$pkgver-r$pkgrel"
replaces="$pkgname-64"
amove usr/share/limine/BOOTX64.EFI
}
_64_arm() {
pkgdesc="$pkgdesc (64-bit aarch64 uefi image)"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/share/limine/BOOTAA64.EFI
}
_64_riscv() {
pkgdesc="$pkgdesc (64-bit riscv64 uefi image)"
depends="$pkgname=$pkgver-r$pkgrel"
amove usr/share/limine/BOOTRISCV64.EFI
}
updater() {
pkgdesc="Limine auto-updater for EFI payload"
amove etc/limine/limine-efi.conf
amove usr/bin/limine-efi-updater.sh
}
sha512sums="
3e1a44ed5e642fc553450162a9fc8d945b475aedbedfc9239fb8a29f1c169e5f066bba0a43ee154a30f8d5084d82323d3b1e11ac84ab75bc0c34221e9715e7c8 limine-7.4.1.tar.gz
e4a92c519e5a17bae16ec31dcdc7faeefbbaf12531744839e4ce5335a347a15c3955ac2c36ddf848abc33651b2e9536d298356dac8f2c6a54f9a8dff34a69a0d limine-efi-updater.sh
394c5067b850eb7b8b236c172471c6b9d152a4ef823d2f6b71396199fbe798638ef4031e60402fdfdfc9425aed0b7e119d15625fc0007622d35fbfadf9457cf8 limine-efi.conf
"
|