Skip to content
This repository has been archived by the owner on May 20, 2023. It is now read-only.

Commit

Permalink
archrelease: copy trunk to extra-any
Browse files Browse the repository at this point in the history
git-svn-id: file:///srv/repos/svn-packages/svn@452062 eb2447ed-0c53-47e4-bac8-5bc4a241df78
  • Loading branch information
dvzrv authored and svntogit committed Aug 4, 2022
1 parent eb68dab commit ef2a5da
Show file tree
Hide file tree
Showing 14 changed files with 154 additions and 81 deletions.
177 changes: 113 additions & 64 deletions repos/extra-any/PKGBUILD
@@ -1,81 +1,130 @@
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>

pkgname=seabios
pkgbase=seabios
pkgname=(seabios seabios-docs)
pkgver=1.16.0
pkgrel=1
pkgdesc="A 16-bit x86 bios"
arch=('any')
pkgrel=2
pkgdesc="Open-source legacy BIOS implementation"
arch=(any)
url="https://www.coreboot.org/SeaBIOS"
license=('GPL3' 'LGPL3')
makedepends=('iasl' 'python' 'inetutils')
options=('!makeflags' '!strip')
_tag=rel-$pkgver
source=(seabios-$pkgver.zip::https://github.com/coreboot/seabios/archive/$_tag.zip
config.coreboot
config.seabios-128k
config.seabios-256k
config.vga.isavga
config.vga.stdvga
config.csm
config.vga.cirrus
config.vga.qxl
config.vga.vmware
config.vga.bochs-display
config.vga.ramfb
config.vga.virtio
reproducible-version.patch)
sha1sums=('9e04be81849d52c230e5461f1a2ecacb651a730f'
'5f2adb09c9006def1719b8cbd4792f14a7c7f7c9'
'7a4ec70237476c7cdd78589b069d0d39dfeaa8eb'
'05b912a291994226049103cbe6754976cc03532d'
'd56482f6ee0bf9633c551b10e99e24c74d9ece1e'
'54d4edf6eccf30883aedca348b9d2f125502fcdb'
'590739c1d5dc6cb63bdf311ee1cfbcde6c0ccc0f'
'84a44c04e74a09affae0d1a6e50800d10997108f'
'5a1316a0081f91acc300f57372de18fa9c67415e'
'5b017b16aec445df873618aaebd154aa97107148'
'c7c730ade7a63e1efc7de81c7536632e0617e808'
'c2f4a7708befd6a0763dd4a5a4f8b5168db30340'
'a2b3d09f944e3d6857ceee272b733075a7edc52e'
'352aa180d17642d1230391e5a1a26389a9629c47')
license=(GPL3 LGPL3)
makedepends=(iasl inetutils python)
options=(!makeflags !strip)
source=(
seabios-$pkgver.tar.gz::https://github.com/coreboot/seabios/archive/rel-$pkgver.tar.gz
config.coreboot
config.csm
config.seabios-128k
config.seabios-256k
config.seabios-microvm
config.vga-ati
config.vga-bochs-display
config.vga-cirrus
config.vga-isavga
config.vga-qxl
config.vga-ramfb
config.vga-stdvga
config.vga-virtio
config.vga-vmware
)
sha512sums=('bc4a674ff62b84d5643814c46f965c39e417d91610ea95503496cb9d6942075e71f256e5e354cd795cc618714d973203e06f1f32a0b479f1ee045175d9d74c39'
'dc77f693e2426a8a9b084f22d607d9bf6dfd0776cb86373a55d6e02f154f546b6fd616bb981783e914be51eb843311652a90b111fb573e32b3a8207d66aea218'
'a2238723fbbb96184bb52b018633701aeb929bfae43f50659258dee854acaf4f1bdf2c201c65fb46d2712372d11ab345eac1c41068f82d6dcbef91ef9d1d39cd'
'91719d73daf931a8f1d4efd06db4d581779875cadbb0458dd2bad8548d07f990ec37fabf590684fb4e9b64579125adb21d11f7a9187fcb0dfdad50764ca47cd6'
'ea75c9af8ee06a74ed048925c6dd2544f8a272c5e663fc0bc9134769b199d0637ac8caea25e8d691d56fef938cca17f790549b73c1e85dd4b1ac2e033f03377f'
'2b4093254f11898c5bb58e5b8e7ecf5d03f1a1d87ac747f5bdfde2ebfe34cc7b8f461ef350e518fe7e7f97687f1a77d27f7570aed5bae38c1801931948c5e52f'
'0ba37f068e8a6e15cdfcbb38215983da3aed0bf54bee508681a2e642952ed6d402be6ef15f78a3272129ee45d374742e1b31e997b0e4c03fcdb84f75610b6d7c'
'c395975320ec9e4eabf0ef60c25122e141de0607c161e9c0ec507916297b5fc6bbf7874a1fd8c3d73ec82fb9d00b5ff8a60344cabd11c404f3de0b7b3f4ed6bf'
'e9ef2d6bec9419e69bc90adf1a4bb7c174284cd722e53903deea0411f88074cc247069116e03e124715072ec82f153cf6014168febba41369a2569983d3265b6'
'aada61232f4834c1e9bec921b1e1365ce5ecb4adf42c659f34cdf051efb56f0ec2e62f0ccf66bb25d9bb0b8601e2df49b712265f19185068d45353c3aacf1cd9'
'9ebcb6702cf28685daf1821be26bab8ddc791ef2c118217c984c03c5fb77c8b9691c0fa6931367a63b8d97d67c973cd4b620fe9ca9c76da51a9b2ab3b4b5653b'
'00bffe38865d210c2d3473e6a6913eda51235b89c03d2c35e04b606e19f1881857ac5cfed77bd127c1fe377065fdb435342111d311d7b48ce1d21b7b863e3bf3'
'4a1b7fcc729d78dc8fd4e73d1cb6258ed9d49f8a91e6e00cc184e07c89a304f8d38ef5446d1c4ba5e8e929c82693d82c21526e42992ad6e1a008f39bb7c90448'
'4d627be11d79f0b8bd814a49e608826375aba6b59a0189dcba9afe24a181347b92e6ab18e0d9199e2f7a78f8fb02f03dad84c63fbbc2ffe9af76777ef28c5f8a'
'2a82f75ca6dbf48546ffa5a756136dd7085855d9411c3b37a74cc53281027b4916cf628dba784bcad915682d94705b5f8116f7a1b7ec6a99d9b2fb3fffba01c0')
b2sums=('7f0e1d322fcbdd9eb30268b210314c0e4e9c3dc1b29d6e8e8f80d29cc7d1371f1fcb4d7b52f354c4df3db01e959bf37f9e11dbf699b1ed3d986d2ff697f1f945'
'9c581d4f109e23daec6933506d8e857d9f1075295e9a898dee09bcf621509bf016f542d77c36b1dd7a2b17394158999d3d18a628dfcf3c834a146d78329b8e53'
'66f9593b5d5d9ef60836bdcf43a3fcc52e7797bd131653b526d3d6b07e77273590e83284fac256164348aa956600d0f493c1ab75f8b65587822b6496be135639'
'415a160c17f578aaff2a0ee33240a98e1d8df2e8c6e9ae9c17b8455de06661d7a5491538b201cf066c0a5649171c1e6423cf97cbb5489a3a82a0ab327243868c'
'e337c939980af63583737b4e6a0ed574663f5bd965256efd88d926fca01b10ff24fb257296a86cedf1a9c0d75502789a7df91402ed9556b4cd627c7f7c9bff6d'
'd24c4c3297d7767e35a294b21354bcf3fb9f4f6c5d2295579f27a036088680f7e4092f5786849972ca00d0f7ffbcee27b270e93e736e1366508b6e023e217ab4'
'0a7b2643523d4d23bed629991b428fbbe9dd65d5b98ecb62e4800d8e77d40405dc717ade9e51d55f81f44b794c80f7acda6da5fadd87dfe956e996bcc5cbcbce'
'4e99c3875e4fe58035a4bcd004e4929ca0f1aefaaf1bf0f5dbd199370bebfce7821e0e3d0c9f3e8e88cd0ddd9d6d1e9cf62230d8d470b1da0ed67738aecabe1d'
'24b655e5d66a4f7305afa4d7e92a4323279959e72d905aeeb15e3fe45e049609f625c7d6469b7d4bd387a83ac93c2f146b7857d80ce1d20febd001af50cb5a0e'
'dd3d8d0f86caa610c5f3833c4b17f7248dbe8ffff3f87a90ff42ead66a044a2d2a0a8330cfd9689379b8a2aa3797b258adddd9fee0978d2915ca02141c37ea14'
'f627711caa7dfbb236b4e9e83104d3d5c7d07a0c5e586f8ab73c4f09daa63bf96a0b976c2648b83e22a11a17dee1412fbbb55cc98fd7c99a5d8568e99df52d57'
'fab17d0633b082f6dd0749e214d5faba876effc192dab25eb2ec002dcdd4b30436c3d12cfe8d53766730bbd2be62e440989330e9de877c241ad1c28a6039d476'
'7c10706c7d261f64e181d85c268375aa3b6b362bf3e5f1f391c52a6a3644a498a44c9627f60b6c47893c4fad24cc4667e816ab98e6bdcdb97b7d8f7463a8bf10'
'98237322784b56cdff2c7d7298a419b18ab77031dfad9da743af73c3073a5b766be3940694a320c82ffda65c8a48e028eccd974d37ccd44f9ba0720b5787b53e'
'8ab374ee7b0ad5cd8f732ccc4983f2251a8ba4843bab358cb3e84e12a572e4e348094e762ecfaa94f704ad05d718bfebd34048b1db3076dae2309d7963794437')
_debug_level=0

# build routine from fedora
build_bios() {
make clean distclean
cp $1 .config
make oldnoconfig V=1
_build_bios() {
local config=$1
local output_name=$2
local binary_name=$3
local build_target=$4

make V=1 $4
echo "Building target with config $config, output_name $output_name, binary_name $binary_name and build_target $build_target..."

cp out/$2 binaries/$3
}
make clean distclean -C $pkgbase-rel-$pkgver

prepare() {
cd seabios-$_tag
cp -v $config $pkgbase-rel-$pkgver/.config
# NOTE: refer to $pkgbase-rel-$pkgver/src/config.h for explanation of debug levels
echo "CONFIG_DEBUG_LEVEL=$_debug_level" >> $pkgbase-rel-$pkgver/.config
make oldnoconfig V=1 -C $pkgbase-rel-$pkgver

patch -p1 < ../reproducible-version.patch # FS#67178
make -C $pkgbase-rel-$pkgver \
V=1 \
EXTRAVERSION="-$pkgrel" \
PYTHON=python3 \
$build_target

rm -rf binaries
mkdir binaries
cp $pkgbase-rel-$pkgver/out/$output_name output/$binary_name
}

echo "ArchLinux ${pkgver}-${pkgrel}" > .version
prepare() {
mkdir -vp output
echo "Arch Linux $pkgver-$pkgrel" > $pkgbase-rel-$pkgver/.version
}

build() {
cd seabios-$_tag
# seabios
build_bios "${srcdir}"/config.csm Csm16.bin bios-csm.bin
build_bios "${srcdir}"/config.coreboot bios.bin.elf bios-coreboot.bin
build_bios "${srcdir}"/config.seabios-128k bios.bin bios.bin
build_bios "${srcdir}"/config.seabios-256k bios.bin bios-256k.bin
# seavgabios
for config in "${srcdir}"/{config.vga.isavga,config.vga.stdvga,config.vga.cirrus,config.vga.qxl,config.vga.vmware,config.vga.ramfb,config.vga.virtio,config.vga.bochs-display}; do
name=${config#*config.vga.}
build_bios ${config} vgabios.bin vgabios-${name}.bin out/vgabios.bin
local -A _build_args=(
[config.coreboot]="bios.bin.elf bios-coreboot.bin"
[config.csm]="Csm16.bin bios-csm.bin"
[config.seabios-128k]="bios.bin bios.bin"
[config.seabios-256k]="bios.bin bios-256k.bin"
[config.seabios-microvm]="bios.bin bios-microvm.bin"
[config.vga-ati]="vgabios.bin vgabios-ati.bin out/vgabios.bin"
[config.vga-bochs-display]="vgabios.bin vgabios-bochs-display.bin out/vgabios.bin"
[config.vga-cirrus]="vgabios.bin vgabios-cirrus.bin out/vgabios.bin"
[config.vga-isavga]="vgabios.bin vgabios-isavga.bin out/vgabios.bin"
[config.vga-qxl]="vgabios.bin vgabios-qxl.bin out/vgabios.bin"
[config.vga-ramfb]="vgabios.bin vgabios-ramfb.bin out/vgabios.bin"
[config.vga-stdvga]="vgabios.bin vgabios-stdvga.bin out/vgabios.bin"
[config.vga-virtio]="vgabios.bin vgabios-virtio.bin out/vgabios.bin"
[config.vga-vmware]="vgabios.bin vgabios-vmware.bin out/vgabios.bin"
)
local _config _config_array

for _config in "${source[@]}"; do
if [[ $_config == config.* ]]; then
read -ra _config_array <<< "${_build_args[$_config]}"
_build_bios $_config "${_config_array[@]}"
fi
done
}

package() {
cd seabios-$_tag
install -Dm644 -t "${pkgdir}/usr/share/qemu" binaries/*.bin
package_seabios() {
optdepends=('seabios-docs: for documentation')

install -vDm 644 output/*.bin -t "$pkgdir/usr/share/qemu/"
install -vDm 644 $pkgbase-rel-$pkgver/README -t "$pkgdir/usr/share/doc/$pkgbase/"
}

package_seabios-docs() {
pkgdesc+=" - documentation"

install -vDm 644 $pkgbase-rel-$pkgver/docs/*.md -t "$pkgdir/usr/share/doc/$pkgbase/"
}
12 changes: 10 additions & 2 deletions repos/extra-any/config.seabios-128k
Expand Up @@ -2,6 +2,7 @@
# need to turn off features (bootsplash) to make it fit into 128k
CONFIG_QEMU=y
CONFIG_ROM_SIZE=128
CONFIG_ATA_DMA=n
CONFIG_BOOTSPLASH=n
CONFIG_XEN=n
CONFIG_USB_OHCI=n
Expand All @@ -10,5 +11,12 @@ CONFIG_USB_UAS=n
CONFIG_SDCARD=n
CONFIG_TCGBIOS=n
CONFIG_MPT_SCSI=n
CONFIG_DEBUG_LEVEL=0
CONFIG_DEBUG_IO=n
CONFIG_ESP_SCSI=n
CONFIG_MEGASAS=n
CONFIG_PVSCSI=n
CONFIG_NVME=n
CONFIG_USE_SMM=n
CONFIG_VGAHOOKS=n
CONFIG_HOST_BIOS_GEOMETRY=n
CONFIG_ACPI_PARSE=n
CONFIG_SERCON=n
1 change: 1 addition & 0 deletions repos/extra-any/config.seabios-256k
@@ -1,3 +1,4 @@
# for qemu machine types 2.0 + newer
CONFIG_QEMU=y
CONFIG_ROM_SIZE=256
CONFIG_ATA_DMA=n
26 changes: 26 additions & 0 deletions repos/extra-any/config.seabios-microvm
@@ -0,0 +1,26 @@
CONFIG_QEMU=y
CONFIG_QEMU_HARDWARE=y
CONFIG_PERMIT_UNALIGNED_PCIROM=y
CONFIG_ROM_SIZE=128
CONFIG_XEN=n
CONFIG_BOOTSPLASH=n
CONFIG_ATA=n
CONFIG_AHCI=n
CONFIG_SDCARD=n
CONFIG_PVSCSI=n
CONFIG_ESP_SCSI=n
CONFIG_LSI_SCSI=n
CONFIG_MEGASAS=n
CONFIG_MPT_SCSI=n
CONFIG_FLOPPY=n
CONFIG_FLASH_FLOPPY=n
CONFIG_NVME=n
CONFIG_PS2PORT=n
CONFIG_USB=n
CONFIG_LPT=n
CONFIG_RTC_TIMER=n
CONFIG_USE_SMM=n
CONFIG_PMTIMER=n
CONFIG_TCGBIOS=n
CONFIG_HARDWARE_IRQ=n
CONFIG_ACPI_PARSE=y
4 changes: 4 additions & 0 deletions repos/extra-any/config.vga-ati
@@ -0,0 +1,4 @@
CONFIG_QEMU=y
CONFIG_BUILD_VGABIOS=y
CONFIG_VGA_ATI=y
CONFIG_VGA_PCI=y
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
15 changes: 0 additions & 15 deletions repos/extra-any/reproducible-version.patch

This file was deleted.

0 comments on commit ef2a5da

Please sign in to comment.