summaryrefslogtreecommitdiff
path: root/app-emulation/xen
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2021-12-05 02:47:11 +0000
committerV3n3RiX <venerix@koprulu.sector>2021-12-05 02:47:11 +0000
commit2771f79232c273bc2a57d23bf335dd81ccf6af28 (patch)
treec8af0fd04194aed03cf067d44e53c7edd3e9ab84 /app-emulation/xen
parente9d044d4b9b71200a96adfa280848858c0f468c9 (diff)
gentoo resync : 05.12.2021
Diffstat (limited to 'app-emulation/xen')
-rw-r--r--app-emulation/xen/Manifest8
-rw-r--r--app-emulation/xen/xen-4.14.3-r1.ebuild2
-rw-r--r--app-emulation/xen/xen-4.14.3-r2.ebuild163
-rw-r--r--app-emulation/xen/xen-4.15.1-r1.ebuild2
-rw-r--r--app-emulation/xen/xen-4.15.1-r2.ebuild163
5 files changed, 334 insertions, 4 deletions
diff --git a/app-emulation/xen/Manifest b/app-emulation/xen/Manifest
index f6e954da4d04..ecee04aa28b5 100644
--- a/app-emulation/xen/Manifest
+++ b/app-emulation/xen/Manifest
@@ -2,9 +2,13 @@ AUX xen-4.14-efi.patch 1969 BLAKE2B dec62e9b04ce23025443caa68df2fd69c50a3fdf650b
AUX xen-4.15-efi.patch 2181 BLAKE2B a06b944dea37c3dfdbe4344191ec4a286348f46bcccf1b5a75f061e55b961d767972456803b8c9aa15120b2b2497651495e903925bf93b04c483e0713d9117a9 SHA512 7ec52fc65b5b8a22877c941f0ab6f249ba1d7b40ad7d50d8f0ac793069cc0eb85b1e5394ce81adf60fa23b01ecc8ce983e6c508b8e0d22189dc46e2c1ad8c1b4
AUX xen-4.15-flask.patch 400 BLAKE2B 68ee04b8b0923cbe7e2b93b834a23b465c9c8e63ae41bea98c8b4bce4ff59374534294b8c5cd5be30ea64d7c66caec54de0bc1bf70d80275d027b3a082ec2003 SHA512 146c6a161d3def5ab947264d6ac5932066f3124e25be14185ebd75eaa18932adcf35daf21edd051861cacd28b950b6a3ee5c5ac335ccc1d0e27b3242da5c4441
DIST xen-4.14.3-upstream-patches-0.tar.xz 3532 BLAKE2B b3e1530a9e14bb1481296f3a878cceb81f1979b1cfb9105d4d1b03681a3449c40cabd1807109acfb3742fd8085c28094c29889d22dab5a99c9bf22443d1e848e SHA512 d6b39830bff83da745279041d144d56c3b153beae09e96fa878397f388575d106509816d710e94fa79dd60a874087921eba98e1316877f6ef4591a12f05846ee
+DIST xen-4.14.3-upstream-patches-2.tar.xz 28336 BLAKE2B 45666fd4aa81c5b8d3c13f5fa949f30a3c168c3ece0109f66092a93d1c2c204dda21afdb46357ca836f763cddaa66a9dbe895939294db36ed28a348e0d92d072 SHA512 c80c4e1cf6c5b870d3471b7430478f1180704d55b5327ef0748e2dc5c3bc03eee05003888160a802b439a6a11aa6bd047122f340ea0cdc1b6bfd71371090e827
DIST xen-4.14.3.tar.gz 39982036 BLAKE2B 927fd2937f451567238702430cea3a6e5d2db70d5eef10f029bb1d6d030681573c851eb8076c8bad89c97c115f81a19ac8e46e78ca3f0e642565f7300c264ca1 SHA512 b462fcc1549f6e57f7f2a4fd10ce1e957a25a6a7c0319672b62699468f6c4330b9cd0cf2b0231b5cce94f4bb142a957eb8aa58aa0ffb5c85b37211d6b34ccf16
DIST xen-4.15.1-upstream-patches-0.tar.xz 3532 BLAKE2B 797f6c4ce44b43c9b43ee27718dc6d0b234588df2148961f8b078b3362b23bec6c2326eb0584255b0f3128c2f8b673ac6b9590596119c5fec82e7b03a1305b2c SHA512 c7d1a21042a3003eb9d968b3eb00aabbbc5c145b8b05fdd9e520cde34d1643d7f4f8f7039f30843a65439b1d40584c751e31ead620b88332d50b10f14fe81c0d
+DIST xen-4.15.1-upstream-patches-2.tar.xz 30180 BLAKE2B 675c13cfb4a6f47121dfe125ddea21d98e7e37563f63b91cde96cd92d94eff648eaa65426fec09833ad668102959948b2e684860631db2b5a2a53b2521a01069 SHA512 f0a6c0829068828ac400d67230d3066b2370a90303e537dd5e0761920ac0d584139b59244a72d9dcd2e4cb1a151ab80d3197ba908e642e13817b89b9a33c73fb
DIST xen-4.15.1.tar.gz 40800852 BLAKE2B 39475ea33f029fb0e84b82b4a2b13fd613bab01e3ef6c241dfede3d190ee9be53c99b62121d37d83b1e078764b3e4d88d1dfb99be1b5623691e56519850c6798 SHA512 8d3cbdf708f46477e32ee7cbd16a490c82efa855cecd84ee712b8680df4d69c987ba9ab00ff3851f627b98a8ebbc5dab71f92f142ed958ee2bc538bc792cd4b9
-EBUILD xen-4.14.3-r1.ebuild 4627 BLAKE2B 9c99f4201bc5c7738d777acc4c239bf756b9e2cb76f1d0d68b02e14ed53543623af2191a122c5c395fc1295114d28f9838144027ee044fe0c3f3ade3ad315458 SHA512 65fca3e1e8269ff11fd1cbc06f04da10044e5ecb03ad306a678f699166874b7ef3d2a29672e3a9ab8c3c1b75ec0354a94bf65286d008b3487e19b6a2262e34be
-EBUILD xen-4.15.1-r1.ebuild 4628 BLAKE2B bd86636c88fbc90c4afc8c1d01ef854a3ee719eca5340acd8c5cdf181dda443977e53e46c776524f71ae567394f0f92716a3ae217c54ae83192c4599623920d9 SHA512 b491a31c7ae627af8bb0dec42f86723682644c713fa73ef5b4c7594eb1a834e6a5813e981801363c10391d43559c61b2cda965d1dfd07995ad25b1abbd07183f
+EBUILD xen-4.14.3-r1.ebuild 4618 BLAKE2B f4f37118907681f11493d053d671384099a0b8db5c3ec9dcd9e2a3ba078afef205f432a50951ffea9a1f4fc1b02c8995d20e96dd1cff48da9d19f2cdd39253b0 SHA512 d548007aec0d9386b5798bf506f55938a26ba8bd68235097c9decfe0f751182a3a07a5048dc02bdc5466aa08fa5960609bbc284c088ea691beaf1368f9cb8b5e
+EBUILD xen-4.14.3-r2.ebuild 4408 BLAKE2B 46ca07316dd866afdfe43386665acc3552c5ebc0c8d289d1f59c752f2be948122cc550c2e8fa2583cc1ef172f6e5026d6c16bdcd57bbc9b72f1bf917c65b2a68 SHA512 2afd50d4c3c6bee62a6fc8eb17f90caf400906dc8f7fa3a99610d22680eb7e5192a8a83e24ef5d703c04a94e50d72ed4758d9e97a2b89d1a931a304b9639d745
+EBUILD xen-4.15.1-r1.ebuild 4619 BLAKE2B 397f788d7b93af265b9164031a415dc235bc623ee05b381f711faf0b13319311dd29aa8f6d986304065763f02da2039ff655b0018092bbd38a8150de9d0e1d50 SHA512 1e1ef9d2f51da2bdddc0ffcd3b19ecb2b70dc33b85ecc189e9c3fa9819fafbec4bf7b85843bcdce67616ce3a4a5e6803088eb09a704b6f301b27fac2860e16a3
+EBUILD xen-4.15.1-r2.ebuild 4409 BLAKE2B 22601b8aedb52c39d584837ea28eba60c2a229b244d28f19f49ee7e8cb60a62a6b0fe75fbbeacc7b91f6954fe561c82fbef78a900efe1c701bd700a60967dcde SHA512 9ee6862e2487a26cee46c8ed909ed9cb33d599cb6ecff829733292b661ddfa312ffde89957e7fc97f6b2d537a7646115ef6d0b3ff81990e64220272a8b461464
MISC metadata.xml 676 BLAKE2B 23003620a5ae9ecc8fca8bea77951fdf0469bb3b997819bfaccb7be4ece20b8a2c2f4b3385f1fc04e749d40a3f2353ed8559806049069fa6bf6bcbe43921db03 SHA512 027f25045231ae0425f5d60e7cf0981654f9e0f445ebfecdee9d7ca0f13272c0edc0440faf9bca85feb55711391d4e3dce402b138a5d4e72f30aa7ee680e14fb
diff --git a/app-emulation/xen/xen-4.14.3-r1.ebuild b/app-emulation/xen/xen-4.14.3-r1.ebuild
index 06fd167c12e6..0877f968edfe 100644
--- a/app-emulation/xen/xen-4.14.3-r1.ebuild
+++ b/app-emulation/xen/xen-4.14.3-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=7
PYTHON_COMPAT=( python3_{8..9} )
-inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
+inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
MY_PV=${PV/_/-}
MY_P=${PN}-${MY_PV}
diff --git a/app-emulation/xen/xen-4.14.3-r2.ebuild b/app-emulation/xen/xen-4.14.3-r2.ebuild
new file mode 100644
index 000000000000..177dc0282e93
--- /dev/null
+++ b/app-emulation/xen/xen-4.14.3-r2.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+
+inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
+ SRC_URI=""
+else
+ KEYWORDS="amd64 ~arm -x86"
+ UPSTREAM_VER=2
+ SECURITY_VER=
+ GENTOO_VER=
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+fi
+
+DESCRIPTION="The Xen virtual machine monitor"
+HOMEPAGE="https://www.xenproject.org"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug efi flask"
+
+DEPEND="${PYTHON_DEPS}
+ efi? ( >=sys-devel/binutils-2.22[multitarget] )
+ !efi? ( >=sys-devel/binutils-2.22 )
+ flask? ( sys-apps/checkpolicy )"
+RDEPEND=""
+PDEPEND="~app-emulation/xen-tools-${PV}"
+
+# no tests are available for the hypervisor
+# prevent the silliness of /usr/lib/debug/usr/lib/debug files
+# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
+RESTRICT="test splitdebug strip"
+
+# Approved by QA team in bug #144032
+QA_WX_LOAD="boot/xen-syms-${PV}"
+
+REQUIRED_USE="arm? ( debug )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ if [[ -z ${XEN_TARGET_ARCH} ]]; then
+ if use amd64; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ [[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
+
+ # Security patchset
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patch set"
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ source "${WORKDIR}"/patches-security/${PV}.conf
+
+ local i
+ for i in ${XEN_SECURITY_MAIN}; do
+ eapply "${WORKDIR}"/patches-security/xen/$i
+ done
+ fi
+
+ # Gentoo's patchset
+ [[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
+
+ # Symlinks do not work on fat32 volumes
+ eapply "${FILESDIR}"/${PN}-4.14-efi.patch
+
+ # Enable XSM-FLASK
+ use flask && eapply "${FILESDIR}"/${PN}-4.15-flask.patch
+
+ # Workaround new gcc-11 options
+ sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
+
+ # Drop .config
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ if use efi; then
+ export EFI_VENDOR="gentoo"
+ export EFI_MOUNTPOINT="/boot"
+ fi
+
+ default
+}
+
+src_configure() {
+ use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
+ use debug && myopt="${myopt} debug=y"
+
+ # remove flags
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+
+ tc-ld-disable-gold # Bug 700374
+}
+
+src_compile() {
+ # Send raw LDFLAGS so that --as-needed works
+ emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
+}
+
+src_install() {
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ # The 'make install' doesn't 'mkdir -p' the subdirs
+ if use efi; then
+ mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
+ fi
+
+ emake LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" DESTDIR="${D}" -C xen ${myopt} install
+
+ # make install likes to throw in some extra EFI bits if it built
+ use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide:"
+ elog " https://wiki.gentoo.org/wiki/Xen"
+
+ use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
+
+ ewarn
+ ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
+ ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
+ ewarn "to work fine."
+ ewarn
+ ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
+ ewarn
+ ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
+}
diff --git a/app-emulation/xen/xen-4.15.1-r1.ebuild b/app-emulation/xen/xen-4.15.1-r1.ebuild
index b49ac4f28ca3..dce7af966330 100644
--- a/app-emulation/xen/xen-4.15.1-r1.ebuild
+++ b/app-emulation/xen/xen-4.15.1-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=7
PYTHON_COMPAT=( python3_{8..9} )
-inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
+inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
MY_PV=${PV/_/-}
MY_P=${PN}-${MY_PV}
diff --git a/app-emulation/xen/xen-4.15.1-r2.ebuild b/app-emulation/xen/xen-4.15.1-r2.ebuild
new file mode 100644
index 000000000000..9170b0ac6fc9
--- /dev/null
+++ b/app-emulation/xen/xen-4.15.1-r2.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+
+inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
+ SRC_URI=""
+else
+ KEYWORDS="~amd64 ~arm -x86"
+ UPSTREAM_VER=2
+ SECURITY_VER=
+ GENTOO_VER=
+
+ [[ -n ${UPSTREAM_VER} ]] && \
+ UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
+ https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
+ [[ -n ${SECURITY_VER} ]] && \
+ SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
+ [[ -n ${GENTOO_VER} ]] && \
+ GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
+ SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
+ ${UPSTREAM_PATCHSET_URI}
+ ${SECURITY_PATCHSET_URI}
+ ${GENTOO_PATCHSET_URI}"
+fi
+
+DESCRIPTION="The Xen virtual machine monitor"
+HOMEPAGE="https://www.xenproject.org"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug efi flask"
+
+DEPEND="${PYTHON_DEPS}
+ efi? ( >=sys-devel/binutils-2.22[multitarget] )
+ !efi? ( >=sys-devel/binutils-2.22 )
+ flask? ( sys-apps/checkpolicy )"
+RDEPEND=""
+PDEPEND="~app-emulation/xen-tools-${PV}"
+
+# no tests are available for the hypervisor
+# prevent the silliness of /usr/lib/debug/usr/lib/debug files
+# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
+RESTRICT="test splitdebug strip"
+
+# Approved by QA team in bug #144032
+QA_WX_LOAD="boot/xen-syms-${PV}"
+
+REQUIRED_USE="arm? ( debug )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ if [[ -z ${XEN_TARGET_ARCH} ]]; then
+ if use amd64; then
+ export XEN_TARGET_ARCH="x86_64"
+ elif use arm; then
+ export XEN_TARGET_ARCH="arm32"
+ elif use arm64; then
+ export XEN_TARGET_ARCH="arm64"
+ else
+ die "Unsupported architecture!"
+ fi
+ fi
+}
+
+src_prepare() {
+ # Upstream's patchset
+ [[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
+
+ # Security patchset
+ if [[ -n ${SECURITY_VER} ]]; then
+ einfo "Try to apply Xen Security patch set"
+ # apply main xen patches
+ # Two parallel systems, both work side by side
+ # Over time they may concdense into one. This will suffice for now
+ source "${WORKDIR}"/patches-security/${PV}.conf
+
+ local i
+ for i in ${XEN_SECURITY_MAIN}; do
+ eapply "${WORKDIR}"/patches-security/xen/$i
+ done
+ fi
+
+ # Gentoo's patchset
+ [[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
+
+ # Symlinks do not work on fat32 volumes
+ eapply "${FILESDIR}"/${PN}-4.15-efi.patch
+
+ # Enable XSM-FLASK
+ use flask && eapply "${FILESDIR}"/${PN}-4.15-flask.patch
+
+ # Workaround new gcc-11 options
+ sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
+
+ # Drop .config
+ sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
+
+ if use efi; then
+ export EFI_VENDOR="gentoo"
+ export EFI_MOUNTPOINT="/boot"
+ fi
+
+ default
+}
+
+src_configure() {
+ use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
+ use debug && myopt="${myopt} debug=y"
+
+ # remove flags
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+
+ tc-ld-disable-gold # Bug 700374
+}
+
+src_compile() {
+ # Send raw LDFLAGS so that --as-needed works
+ emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
+}
+
+src_install() {
+ local myopt
+ use debug && myopt="${myopt} debug=y"
+
+ # The 'make install' doesn't 'mkdir -p' the subdirs
+ if use efi; then
+ mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
+ fi
+
+ emake LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" DESTDIR="${D}" -C xen ${myopt} install
+
+ # make install likes to throw in some extra EFI bits if it built
+ use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
+}
+
+pkg_postinst() {
+ elog "Official Xen Guide:"
+ elog " https://wiki.gentoo.org/wiki/Xen"
+
+ use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
+
+ ewarn
+ ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
+ ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
+ ewarn "to work fine."
+ ewarn
+ ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
+ ewarn
+ ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
+}