summaryrefslogtreecommitdiff
path: root/app-emulation/xen
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-01-22 10:09:44 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-01-22 10:09:44 +0000
commit09351e78166b5e864197c4456ebae3f89dd0bed9 (patch)
tree41a96399f56ed3aa399006871bfce4430db84aa2 /app-emulation/xen
parentc8a77dfe4d3d307c1d5dd2650b7297447d8b609d (diff)
gentoo resync : 22.01.2019
Diffstat (limited to 'app-emulation/xen')
-rw-r--r--app-emulation/xen/Manifest2
-rw-r--r--app-emulation/xen/xen-4.12.0_rc1.ebuild172
2 files changed, 174 insertions, 0 deletions
diff --git a/app-emulation/xen/Manifest b/app-emulation/xen/Manifest
index 8a9fe38318f4..228e94279aef 100644
--- a/app-emulation/xen/Manifest
+++ b/app-emulation/xen/Manifest
@@ -5,8 +5,10 @@ DIST xen-4.10.2.tar.gz 24697204 BLAKE2B b331d3ad8d7842446f7d2da5dd31560f636aa140
DIST xen-4.11.0-upstream-patches-3.tar.xz 91692 BLAKE2B 500f6099b89d741264b72dc25919e16de0f1d5e1e3adebbe7788de25f1b82692c56b271f241e39733911e2d7d3e27e3ad29d91b94e1f4d8f0257d08b173b62f1 SHA512 bdb8dc5ff868434043d40417b013370e5fd7dc07570ac0bdaa6c253b50521d7fd79af8f7d85578a961b4631cc1ba3c4942d5c60ccc165205da0135506adfb4d2
DIST xen-4.11.0.tar.gz 25131533 BLAKE2B 892639b8bcd9b9956104e4d5137ffd88e17f92d965fa967b4af8d74a4fddcc21c6971c53026e0fb5ce833ab2c25c68f827abcac0b7b1dcebc21dca645c465573 SHA512 33d431c194f10d5ee767558404a1f80a66b3df019012b0bbd587fcbc9524e1bba7ea04269020ce891fe9d211d2f81c63bf78abedcdbe1595aee26251c803a50a
DIST xen-4.11.1.tar.gz 25152217 BLAKE2B a8dfbeb3d490787725c589e1ce82dcbbcd0be7fb4743b38daf3a8704dffda34d1faabb07d74e01d2fab1572ce0b730c21192469317545e8b3edb3fae1130ef8c SHA512 c1655c5decdaed95a2b9a99652318cfc72f6cfdae957cfe60d635f7787e8850f33e8fafc4c4b8d61fb579c9b9d93028a6382903e71808a0418b931e76d72a649
+DIST xen-4.12.0-rc1.tar.gz 26926475 BLAKE2B 19ca3a4a6ffd1537c72f35e1092e86d217fabd218568fa4206ad4e42789b8cbb8a7e9a932ef515563f288f366026a32c158858fe2f99507441f665dfb66555fc SHA512 0d6bde8931794efed972ec951143d2532b6195d6e150d731b5c8d7d7bb107724531be7ed6ae13dd9bc1e98ad02033e1aa6c7b5c33f15f04fbcb98a6b0099b417
EBUILD xen-4.10.2-r1.ebuild 4795 BLAKE2B a92c63430183df7e014a9ebcf3b7cf9af2b2e33bc962f49766ce5fc0a7555e5e6f8fd32ea8a7718b1d33f9ec81f26202d0d1bd3d21ef797d49ad43dbb5b074c0 SHA512 0d569fb4f40fb40a22deb567f74863310f04140eb12351e06861d00dbb7d88a78d5bac5c321bee2e804d36b70a735ec2ac29e2e11ea9cf444ad44f1401c8c4db
EBUILD xen-4.10.2-r2.ebuild 4795 BLAKE2B 2c8d72c915de0ea49d415f74653bcea64f8cbac1def72f526198ae5f3923dcf8a4011aef11cd310b36021bf5cedbe9116cd0402373380ec0ebb84aec8ff6c383 SHA512 31277e30c73c775d581804e15bbe1cd5a863a7633534f06547fc520cbf7ac296cafcccf0c3a3e290bb0c42a72d5b0270b5c34ab725d8687760187e821596a9eb
EBUILD xen-4.11.0-r4.ebuild 4796 BLAKE2B 5c0e07427bef2e6f90d8d669304601455fb51e33cfdf66c8746ce08cd3293428f88a8bd6c0fc65cf0113d9a470680f338d56775226f48a340c680bab2fa83cff SHA512 ebdafd3984474b440c604c099e4dd46348aaf48f3b570936c9ac7a24e6b91d2439cdb0fabbb2ff22b6ae2ee07b0479a2a390675a6603a02bdb3ea0ac6569080f
EBUILD xen-4.11.1.ebuild 4795 BLAKE2B 4d7362604ab1be1541cbca8f47d43d2b1dfade482ff4ead1ca0fe43d2078a69312f8b86205970d5bd103b5142bb54175a664b096c84fb97fe3ab055f4c77c319 SHA512 2e7dcff4c8eb9fefd05eecd333fa7a3e61cf886882d96b97a38325f9a2595a5fe61ce0a49bb877655f061a0d4cd4646dfd21a07095d38a9bf557020703ce1822
+EBUILD xen-4.12.0_rc1.ebuild 4809 BLAKE2B 5692f78d0cf4823ae463a28234752062fd374e2c6a341fc1cb2d047dfff4bdf57adbacb19eae0079ea6d89a6b75edcdc096def0eb38da662e848b4e00d3f1909 SHA512 6e963265f7f0a2c60a882d10868c23a45a6d5d48acfe9f228ec470d68d4de5c3f85272796798fdb3e676d195a32f072cda351693296cde8ac28c87d063fd62bc
MISC metadata.xml 417 BLAKE2B 5713c8e5f27d56714938b7d2bed096c3b3f9fbb0ad9bce2bb3240e4a8556134cfc88efe0e2c7feb2e9cc722c11800e8433afa0d03746b05998909dd976230225 SHA512 2708f84b8a1508eebc96539993ae1bde4b921d4401229c221e2bee9a0cd643fdf1f854fcbba6033ed68667d0efb00c25222f4c68535a96f2200084d8d8759946
diff --git a/app-emulation/xen/xen-4.12.0_rc1.ebuild b/app-emulation/xen/xen-4.12.0_rc1.ebuild
new file mode 100644
index 000000000000..0feb6edbf07d
--- /dev/null
+++ b/app-emulation/xen/xen-4.12.0_rc1.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit flag-o-matic mount-boot multilib 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"
+ KEYWORDS=""
+ UPSTREAM_VER=
+ 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="custom-cflags debug efi flask"
+
+DEPEND="${PYTHON_DEPS}
+ efi? ( >=sys-devel/binutils-2.22[multitarget] )
+ !efi? ( >=sys-devel/binutils-2.22 )"
+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
+
+ if use flask ; then
+ export "XSM_ENABLE=y"
+ export "FLASK_ENABLE=y"
+ 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
+
+ eapply "${FILESDIR}"/${PN}-4.6-efi.patch
+
+ # 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
+
+ # if the user *really* wants to use their own custom-cflags, let them
+ if use custom-cflags; then
+ einfo "User wants their own CFLAGS - removing defaults"
+ # try and remove all the default custom-cflags
+ find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
+ -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
+ -i {} \; || die "failed to re-set custom-cflags"
+ fi
+
+ default
+}
+
+src_configure() {
+ use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
+
+ use debug && myopt="${myopt} debug=y"
+
+ if use custom-cflags; then
+ filter-flags -fPIE -fstack-protector
+ replace-flags -O3 -O2
+ else
+ unset CFLAGS
+ unset LDFLAGS
+ unset ASFLAGS
+ fi
+}
+
+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)" 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"
+
+ elog "You can optionally block the installation of /boot/xen-syms by an entry"
+ elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
+ elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
+}