summaryrefslogtreecommitdiff
path: root/sys-firmware/seabios
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-09-07 04:34:29 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-09-07 04:34:29 +0100
commit1ccef27203b03f1fa900c9b44dc425df27e49452 (patch)
tree9c98577fb64ec98520e2d39857ab6f917e8fa460 /sys-firmware/seabios
parentc4b3d05f2d4415c0d6f135a3ea0d2055d6e055b5 (diff)
gentoo auto-resync : 07:09:2022 - 04:34:29
Diffstat (limited to 'sys-firmware/seabios')
-rw-r--r--sys-firmware/seabios/Manifest3
-rw-r--r--sys-firmware/seabios/files/README2
-rw-r--r--sys-firmware/seabios/seabios-1.16.0.ebuild142
3 files changed, 144 insertions, 3 deletions
diff --git a/sys-firmware/seabios/Manifest b/sys-firmware/seabios/Manifest
index 10b76e808822..6aafacea3e8d 100644
--- a/sys-firmware/seabios/Manifest
+++ b/sys-firmware/seabios/Manifest
@@ -1,4 +1,3 @@
-AUX README 95 BLAKE2B 1b24d1199d9095bb7620c92be24990add23fa0667373ca1fa267da4ca8d7601250e22068aa572e38658049e150a3b2906849deb4393cbd2ce1ccb5cce994b7bc SHA512 60a67c0b57f8c36a266041d5307fcc8e1302660ffaf855e0f01f0ae8460843b0eeb336a78c48b59e7441738ac5cf9069c868d49daf3015ccf0fa72b8081e1c81
AUX seabios-1.14.0-binutils-2.36.patch 401 BLAKE2B c9ae2113c1eaa9b99ec3c05d77e67a308ba86a6f9ba16691e50937f2fa10da730b3d270b20306b1505730cbb3c9fff0a1602ecc70de75d245986c1508c838a39 SHA512 be60c197071423aacd6d69f3e71223d57d5d740b0790f7b817653affe4489911493ea265ed1245a1960442aeefcd052abd576a8c87fd210d45f64d70c0157eb6
AUX seabios/config.seabios-128k 358 BLAKE2B dc64c17aafbb52f88b0db80314b0b1aab31bdeb6fe692762afe9cf60f9f7868ee8cb65d402f9a4c04c0bf1bf891d566b773f1f4c30105a02e2074b36fd726962 SHA512 1428a05757313e7f5d57ed9e55b22dd74b864129b0a25bb69f83c949418b008984b932d433589220a1c8f68ebd5dbabedf668d230293bf7dc73d8107dbda117b
AUX seabios/config.seabios-256k 71 BLAKE2B be5e2925d288cbec5fbcde43daa7f4429ad0e44ad242eefae7d4303b72d16df36654e461ae4ad9487045d66b56fd4739cb5686478dee349fd5d1e740e0391efd SHA512 3d41739944da088edafb3ea298c0d3db59ed638b614c258209a30635caccf86a284f03492612694e3a56f40357743a0a36053e8ec11b7d93853b91ba9e5a502f
@@ -13,9 +12,11 @@ DIST seabios-1.12.0.tar.gz 613542 BLAKE2B f145c2db716996bfa9e5c014086ccfaa8ae96e
DIST seabios-1.14.0-bin.tar.xz 170160 BLAKE2B 1ab471ce0c6e27633ec42a66e3069496be84de713baab5de4f297821bd0da26404f7f70abc82e223ec5aa317a878889ae92b019988c72d24f77e7dcc5865f916 SHA512 7964e9bb7dff4fd6593f5d6d64efc4b1460750461b86635dbe5255d2086d619f51711d7a35e4dc20e556f705091c0950afabeddcd2e8876f05ce14f9ca73ed71
DIST seabios-1.14.0-r2-bin.tar.xz 132256 BLAKE2B 7d38949de254d6e3699d463a66c363156aa36bfe16c18bea48c55a61bdc423184175fd5427d3246a78d9c6335e61e5baa982f67e7406c5525e405b4383530d41 SHA512 5ce0e407b97e878842fbd7ad2f9e8a65f2565a5aa43d08e01cff024352780f55f8669958c58d20770db7f90e87cc52c860af831cefe3846227e7b45cd9dc33ee
DIST seabios-1.14.0.tar.gz 628985 BLAKE2B cc1126925dab1551a655680d20d06ebf28c12c386500d1ee4df9e1a99403b4c5bc6a66c2cc5ef58b4c3d6d7226f35007506a6a1855c2cf2742469dcb7aba05bb SHA512 215c42f59425f8abd062be7b11fc0e39c977cee5001a2381551b0f851ac337d0dd53c065267e6dee0e710ffd700fa635f9007b89da8dfce0f47122c984ee8146
+DIST seabios-1.16.0.tar.gz 635419 BLAKE2B b645f20bae341d56ce4fc4a7044446050d8490c6c136377f6dccf02c88100b0644bc13d210b4a517a8be6002d5671b0fba77120a2aca3a9bafbad5e88d037e40 SHA512 9daefcfb1c9edda4462a4b080c9bac552154d577ae19703a914928e43005e7a52edd86869c6507e94a7f0c61ce8b3e6f5dea38cd5146628cb138a130947c522f
EBUILD seabios-1.12.0-r1.ebuild 4058 BLAKE2B 960efadabb9000c6aecde46e41760d414f92f7b915ae546faf831cd52954b8f78e98419faeb54200189d0210c2d72057fa05997fa848fc10a42cbdff3d665a47 SHA512 9a9fe25e5766f9fc88fc22ac3fe796a3229a36bdba5c08a7648df8dcea0e8502fa9ada2ab3ab1aee2466f67bbb678e3e500ee99e2fe24b3e8b77c4bdded33a32
EBUILD seabios-1.12.0.ebuild 3439 BLAKE2B 4e88e25af3df5c52d44259b8078f2c6a7baf5d88dfd572ab7e25c1d0a35737eca941002fb2e111a70143d95af61b012bbeb1da7e33a1b900471a4c3720cd6f70 SHA512 7e9a0e45766736bfc4aa71736aeee1e5301a044cb84f0ea7060be4cfc2e6f7da97ca789d136b85911d05a25aa1abcc6f644ebdf2da3c5e7a4371171d18614423
EBUILD seabios-1.14.0-r1.ebuild 3922 BLAKE2B 28456deb4ae6bb85deae3f815372db3815bb84789c3107f6f8e47bf83d89f06f519c7ba0d4ed61838d90e476b7ebfb2d221158506ec6f79bbba9ef6f5de9eee6 SHA512 02d60543a35f653e2cfd17df4e8cbd6739d6a90ed444ad7783d1bf047af46424030efc0f425e469f3aca0ef5280422bd5993f7bfb7ac673e778bbc3dfff3278e
EBUILD seabios-1.14.0-r2.ebuild 4312 BLAKE2B ddb719c9cb15130b786708227ff200b51a615806b2a1ba0b7aafb2c6076ccb6cb89629d3e046bd084360114b2d48111244b34cac12260d9b1020b199d1b29c24 SHA512 f8324420c74cc1d55a613c50e7b87fb8b30c787b550cd764c80f5d5188f2f372090deaa581663d7a50227adb85fe98001d940ae9bd235bbbfdc06885f3948197
EBUILD seabios-1.14.0.ebuild 3773 BLAKE2B 3ae3a072999d39f6d639d5c06454a8c33cafcb90014e4a77c5811bc176a536e9b43b144cc12da1e85c21c958dd6b985921902e6129381a3c670aa074d4b1bf81 SHA512 054cda4d92a31852e9cd97dd79182f206c7270f332ffd2e4642890f17b57e89621f3add65ad62e20707c7ef2a929f732d82ee154b7ed47c3dbfbc8c0da5da7c0
+EBUILD seabios-1.16.0.ebuild 3398 BLAKE2B a5add1f7e4bcd07e77d520e32d3c8021e33244a82d990d5ac68a6b043f0347db2653595e4b8f2f6a8d858039a4f998b1a0d0fa4d415e0118236c2a77ada81739 SHA512 a7a157c830ff9a1f216476b4d427ff41f52e7d7a8c743fec74a8a95755f979b59308ce5a0c9069fe7d81e780731be7298b31f74e8650cf9785fc82b8db54b89a
MISC metadata.xml 552 BLAKE2B c04d6ed849a522fa91d5698915ce4a2344cf68301fa7a4a1b1c3644be4892a36920b1daa83afff6c4296877617e394a2565699c3ba34e92acb9b6dc52be34adf SHA512 4c92f35b58ee8f41b2a9457f830ef33962f831e854fe87982579a78c65df7ae5d74c54fb7a90ab837e51229a8ca0d75ae84c989e92c2f679ec9a91ed5ebb7561
diff --git a/sys-firmware/seabios/files/README b/sys-firmware/seabios/files/README
deleted file mode 100644
index a7aed6d46cf6..000000000000
--- a/sys-firmware/seabios/files/README
+++ /dev/null
@@ -1,2 +0,0 @@
-The configuration files config.vga-xxx are based on the variants found in
-the qemu/roms/ tree.
diff --git a/sys-firmware/seabios/seabios-1.16.0.ebuild b/sys-firmware/seabios/seabios-1.16.0.ebuild
new file mode 100644
index 000000000000..4ba443b19f0b
--- /dev/null
+++ b/sys-firmware/seabios/seabios-1.16.0.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit toolchain-funcs python-any-r1
+
+# SeaBIOS maintainers sometimes don't release stable tarballs or stable
+# binaries to generate the stable tarball the following is necessary:
+# git clone git://git.seabios.org/seabios.git && cd seabios
+# git archive --output seabios-${PV}.tar.gz --prefix seabios-${PV}/ rel-${PV}
+
+if [[ ${PV} == *9999* || -n "${EGIT_COMMIT}" ]] ; then
+ EGIT_REPO_URI="git://git.seabios.org/seabios.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.seabios.org/downloads/${P}.tar.gz"
+ #KEYWORDS="~alpha ~amd64 ~arm64 ~loong ~m68k ~mips ~ppc ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Open Source implementation of a 16-bit x86 BIOS"
+HOMEPAGE="https://www.seabios.org/"
+
+LICENSE="LGPL-3 GPL-3"
+SLOT="0"
+IUSE="debug +seavgabios"
+
+BDEPEND="
+ >=sys-power/iasl-20060912
+ ${PYTHON_DEPS}"
+RDEPEND="!sys-firmware/seabios-bin"
+
+choose_target_chost() {
+ if [[ -n "${CC}" ]]; then
+ ${CC} -dumpmachine
+ return
+ fi
+
+ if use amd64 || use x86; then
+ # Use the native compiler
+ echo "${CHOST}"
+ return
+ fi
+
+ local i
+ for i in x86_64 i686 i586 i486 i386 ; do
+ i=${i}-pc-linux-gnu
+ type -P ${i}-gcc > /dev/null && echo ${i} && return
+ done
+}
+
+pkg_pretend() {
+ ewarn "You have decided to compile your own SeaBIOS. This is not"
+ ewarn "supported by upstream unless you use their recommended"
+ ewarn "toolchain (which you are not)."
+ elog
+ ewarn "If you are intending to use this build with QEMU, realize"
+ ewarn "you will not receive any support if you have compiled your"
+ ewarn "own SeaBIOS. Virtual machines subtly fail based on changes"
+ ewarn "in SeaBIOS."
+ if [[ -z "$(choose_target_chost)" ]]; then
+ elog
+ eerror "Before you can compile ${PN}, you need to install a x86 cross-compiler"
+ eerror "Run the following commands:"
+ eerror " emerge crossdev"
+ eerror " crossdev --stable -t x86_64-pc-linux-gnu"
+ die "cross-compiler is needed"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # Ensure precompiled iasl files are never used
+ find "${WORKDIR}" -name '*.hex' -delete || die
+}
+
+src_configure() {
+ tc-ld-disable-gold #438058
+
+ if use debug ; then
+ echo "CONFIG_DEBUG_LEVEL=8" >.config
+ fi
+ _emake config
+}
+
+_emake() {
+ LANG=C \
+ emake V=1 \
+ CPP="$(tc-getPROG CPP cpp)" \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" \
+ AR="$(tc-getAR)" \
+ AS="$(tc-getAS)" \
+ OBJCOPY="$(tc-getOBJCOPY)" \
+ RANLIB="$(tc-getRANLIB)" \
+ OBJDUMP="$(tc-getOBJDUMP)" \
+ STRIP="$(tc-getSTRIP)" \
+ HOST_CC="$(tc-getBUILD_CC)" \
+ VERSION="Gentoo/${EGIT_COMMIT:-${PVR}}" \
+ "$@"
+}
+
+src_compile() {
+ local TARGET_CHOST=$(choose_target_chost)
+
+ cp "${FILESDIR}/seabios/config.seabios-256k" .config || die
+ _emake oldnoconfig
+ CHOST="${TARGET_CHOST}" _emake iasl
+ CHOST="${TARGET_CHOST}" _emake out/bios.bin
+ mv out/bios.bin ../bios-256k.bin || die
+
+ if use seavgabios ; then
+ local config t targets=(
+ cirrus
+ isavga
+ qxl
+ stdvga
+ virtio
+ vmware
+ )
+ for t in "${targets[@]}" ; do
+ _emake clean distclean
+ cp "${FILESDIR}/seavgabios/config.vga-${t}" .config || die
+ _emake oldnoconfig
+ CHOST="${TARGET_CHOST}" _emake out/vgabios.bin
+ cp out/vgabios.bin ../vgabios-${t}.bin || die
+ done
+ fi
+}
+
+src_install() {
+ insinto /usr/share/seabios
+ doins ../bios-256k.bin
+
+ if use seavgabios ; then
+ insinto /usr/share/seavgabios
+ doins ../vgabios*.bin
+ fi
+}