aboutsummaryrefslogtreecommitdiffstats
path: root/main/seabios/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'main/seabios/APKBUILD')
-rw-r--r--main/seabios/APKBUILD134
1 files changed, 134 insertions, 0 deletions
diff --git a/main/seabios/APKBUILD b/main/seabios/APKBUILD
new file mode 100644
index 0000000000..7bf2d60c1b
--- /dev/null
+++ b/main/seabios/APKBUILD
@@ -0,0 +1,134 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=seabios
+pkgver=1.8.1
+pkgrel=0
+pkgdesc="Open-source legacy BIOS implementation"
+url="http://www.coreboot.org/SeaBIOS"
+arch="x86 x86_64"
+license="LGPLv3"
+depends="$pkgname-bin=$pkgver-r$pkgrel seavgabios-bin=$pkgver-r$pkgrel"
+depends_dev=""
+makedepends="$depends_dev python iasl"
+install=""
+subpackages="$pkgname-bin:_seabios seavgabios-bin:_seavgabios"
+source="http://code.coreboot.org/p/seabios/downloads/get/seabios-$pkgver.tar.gz
+ config.coreboot
+ config.csm
+ config.seabios-128k
+ config.seabios-256k
+ config.vga.cirrus
+ config.vga.isavga
+ config.vga.qxl
+ config.vga.stdvga
+ config.vga.vmware
+ "
+
+_debug_level=1
+_builddir="$srcdir"/seabios-$pkgver
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+_build_bios() {
+ msg "building $3"
+ make clean distclean
+ cp "$1" .config
+ echo "CONFIG_DEBUG_LEVEL=${_debug_level}" >> .config
+ make oldnoconfig || return 1
+ make $4 || return 1
+ cp out/"$2" binaries/"$3"
+}
+
+build() {
+ cd "$_builddir"
+ mkdir binaries || return 1
+ # seabois
+ _build_bios "$srcdir"/config.csm Csm16.bin bios-csm.bin \
+ || return 1
+ _build_bios "$srcdir"/config.coreboot bios.bin.elf bios-coreboot.bin \
+ || return 1
+ _build_bios "$srcdir"/config.seabios-128k bios.bin bios.bin \
+ || return 1
+ _build_bios "$srcdir"/config.seabios-256k bios.bin bios-256k.bin \
+ || return 1
+
+ cp out/src/fw/*dsdt*.aml binaries/ || return 1
+
+ for i in $source; do
+ case $i in
+ config.vga.*)
+ _build_bios "$srcdir"/$i \
+ vgabios.bin \
+ vgabios-${i##*.}.bin \
+ out/vgabios.bin || return 1
+ ;;
+ esac
+ done
+}
+
+package() {
+ cd "$_builddir"
+ install -d "$pkgdir"/usr/share/seabios \
+ "$pkgdir"/usr/share/seavgabios
+ for i in binaries/*; do
+ case ${i#*/} in
+ bios*|*.aml) \
+ install -m 0644 "$i" "$pkgdir"/usr/share/seabios/ \
+ || return 1
+ ;;
+ vga*)
+ install -m 0644 "$i" "$pkgdir"/usr/share/seavgabios/ \
+ || return 1
+ ;;
+ esac
+ done
+}
+
+_seabios() {
+ pkgdesc="Seabios for x86"
+ mkdir -p "$subpkgdir"/usr/share/
+ mv "$pkgdir"/usr/share/seabios "$subpkgdir"/usr/share/ || return 1
+}
+
+_seavgabios() {
+ pkgdesc="Seavgabios for x86"
+ mkdir -p "$subpkgdir"/usr/share/
+ mv "$pkgdir"/usr/share/seavgabios "$subpkgdir"/usr/share/ || return 1
+}
+
+md5sums="581c3c5f19434e7835d893c3b71c47ae seabios-1.8.1.tar.gz
+e2e4c8e2bbc9e6250bccb7754e714534 config.coreboot
+446b2e19edbd1db3bb30f550ce705838 config.csm
+13126e6f8ebb936e468ede4bb21675a7 config.seabios-128k
+3170da5d37660b9bf5792103b3796f26 config.seabios-256k
+0958ef6ea9a61af57ad8132400f66386 config.vga.cirrus
+4c9895f9c5fe7a2d45bd570afa9a05ee config.vga.isavga
+8c3d5ebdd98f736143ccd4456f79e125 config.vga.qxl
+19dcddeb5aa9e8fbdf6975205e867c8e config.vga.stdvga
+c2d2b8d0f7b9024f9d157f8db100fec3 config.vga.vmware"
+sha256sums="283bd848f5ce9d4bc52add973a856347e02c9ce89a9e6bc92c99359b87c9871d seabios-1.8.1.tar.gz
+562c285883d803b415fc5836367ae919ab34a6d09001a84970f464887a03fe2c config.coreboot
+a046a73392f449f106de918a82c51c99225212d9d253b9011475d0eaa41e6180 config.csm
+e25892b3f9b59f2bd3cd5191f19cd7ee3072788a2c43fe9c9950b0b2bf8c415b config.seabios-128k
+8b14f70d5cf5e9fbe3b81a051149bb6d89e1786bae7fb6e6ed78bbe699a30834 config.seabios-256k
+888ad874052d301981a8cc6fa4bc72b1edd14ba937e7de113f71ce3fd2f8c253 config.vga.cirrus
+5826ec704d4e4bb57089e0cbb72e7e5ccd31b7192d81084665cd4faeecb60b04 config.vga.isavga
+26e43ea5e98615d11573b2619f3fb3c1933d5f810e6a2c44218d99465cc3ae77 config.vga.qxl
+ca7367ae57665fa01e0ebb741ba5823d646f4b65a9a87657ea163cc9f362a8a8 config.vga.stdvga
+1bd31f16dd43fb25aa92f9816cbfaae4a19a8faf29ff52bd02429fbaafb78f57 config.vga.vmware"
+sha512sums="252e360d699d8da8c09dac3b7867c45510a7c99376693dbe87170b91f947ef5e61794088d52bd737dab83332cb6d66192a7c5bb9a59a05471b54481fa92e4f7c seabios-1.8.1.tar.gz
+dc77f693e2426a8a9b084f22d607d9bf6dfd0776cb86373a55d6e02f154f546b6fd616bb981783e914be51eb843311652a90b111fb573e32b3a8207d66aea218 config.coreboot
+a2238723fbbb96184bb52b018633701aeb929bfae43f50659258dee854acaf4f1bdf2c201c65fb46d2712372d11ab345eac1c41068f82d6dcbef91ef9d1d39cd config.csm
+7dc04b1dcf7ecd30f7b4d05040f490eb81914a6a7f8997033e0c4903aaaee99cbd5c071631969bf7edd3713c0f3c5d3c9483d973b3cc9b280dcf8bd7866c196e config.seabios-128k
+3d41739944da088edafb3ea298c0d3db59ed638b614c258209a30635caccf86a284f03492612694e3a56f40357743a0a36053e8ec11b7d93853b91ba9e5a502f config.seabios-256k
+e9ef2d6bec9419e69bc90adf1a4bb7c174284cd722e53903deea0411f88074cc247069116e03e124715072ec82f153cf6014168febba41369a2569983d3265b6 config.vga.cirrus
+aada61232f4834c1e9bec921b1e1365ce5ecb4adf42c659f34cdf051efb56f0ec2e62f0ccf66bb25d9bb0b8601e2df49b712265f19185068d45353c3aacf1cd9 config.vga.isavga
+9ebcb6702cf28685daf1821be26bab8ddc791ef2c118217c984c03c5fb77c8b9691c0fa6931367a63b8d97d67c973cd4b620fe9ca9c76da51a9b2ab3b4b5653b config.vga.qxl
+4a1b7fcc729d78dc8fd4e73d1cb6258ed9d49f8a91e6e00cc184e07c89a304f8d38ef5446d1c4ba5e8e929c82693d82c21526e42992ad6e1a008f39bb7c90448 config.vga.stdvga
+2a82f75ca6dbf48546ffa5a756136dd7085855d9411c3b37a74cc53281027b4916cf628dba784bcad915682d94705b5f8116f7a1b7ec6a99d9b2fb3fffba01c0 config.vga.vmware"