summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYixun Lan <dlan@gentoo.org>2016-12-28 17:02:34 +0800
committerYixun Lan <dlan@gentoo.org>2016-12-28 17:02:34 +0800
commit1892523f1f74df2ff565f7c9858b97334a0b7dfd (patch)
tree53ead6d8bf0d96bd1df2930e9e0175f983ba2e2d /app-emulation
parentapp-benchmarks/sysbench: amd64 stable (diff)
downloadgentoo-1892523f1f74df2ff565f7c9858b97334a0b7dfd.tar.gz
gentoo-1892523f1f74df2ff565f7c9858b97334a0b7dfd.tar.bz2
gentoo-1892523f1f74df2ff565f7c9858b97334a0b7dfd.zip
app-emulation/xen: cleanup old vulnerables
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/xen/Manifest3
-rw-r--r--app-emulation/xen/xen-4.6.4-r3.ebuild193
-rw-r--r--app-emulation/xen/xen-4.6.4-r4.ebuild193
-rw-r--r--app-emulation/xen/xen-4.7.1-r3.ebuild193
4 files changed, 0 insertions, 582 deletions
diff --git a/app-emulation/xen/Manifest b/app-emulation/xen/Manifest
index fd2502681296..c516bbbcbf03 100644
--- a/app-emulation/xen/Manifest
+++ b/app-emulation/xen/Manifest
@@ -1,7 +1,4 @@
-DIST xen-4.6.4-upstream-patches-0.tar.xz 15280 SHA256 0f2d55e44e2c98fb7caf76997c05f44fe1efdbf7eaa971a4bf234ea3bc95e244 SHA512 26be1b03af1ac0d6a413b0ab8a30d59c733d6d5c4e29ce3b5b90818a1589cbb5c46a50b9ee42b273ef3b37df8ff403241d68e1e2221ce969054fb7e5f13516ab WHIRLPOOL 52420897c49cd1bcfd8896df45a1f9c8df6337cb68dd7a6ff962361e7ab2eab1e6d6699ae8236b105e6b700b5d5b6c8da302ff477ac6493a60a665e4225cff02
-DIST xen-4.6.4.tar.gz 19709274 SHA256 b795d5631a85fb68295361067195ecd00003656dacede4ec57533fce33ab5109 SHA512 e6278061a16829628030579e115a500970ff575eb6796189bfa1e2d7a8cbbf8aec2c2bd04c77cdc87226d6cc5eaee59d6c62cacb4e74b06e1f1379734b872938 WHIRLPOOL a982f7bbf2ba16781ac0f310ef27a32e9115596e91117609d22827bc1999facb12df4f33d1ba0b7015cbfae90a24302243d508e8c38ba45ea998341b76ba0567
DIST xen-4.7.1-upstream-patches-0.tar.xz 16420 SHA256 cb4724fedadc408ec390f99e9928a44ec75e793fb55cb97793f09980855b6a32 SHA512 79e117c48c6cc3d5783c818218ac11ec494735ce89755b5e263a64c23fb1f0a425bc65b567a24ce2e348b6e3839b26133c7e2c36411e5cc7acb54b855149dfbe WHIRLPOOL 982165da62cbb28cd72d32662c366ca7dac91a511b356eb58bced4b4af5cbc0d94c7e280a2400e5d9c92938d2afee86abd7c688926c2b9cb191d4554be828844
DIST xen-4.7.1.tar.gz 20706864 SHA256 e87f4b0575e78657ee23d31470a15ecf1ce8c3a92a771cda46bbcd4d0d671ffe SHA512 eb03244f5fa7b54402fcc1d38f1e69c0ea4536d5ab2f9859b41b5e94920ad9db20fb146e3c3d3635e9ca1d12e93ce0429e57f24bf53d4a2c4b69babc76ec724e WHIRLPOOL 5d7ba29ea58bdedb6a237f7cb1c0aacf361dc35ebb07ec8e55773e07b1f38c1b151615b526e14daeca7c2db235114bde0b6d124219e8818c6e529873b5151fec
DIST xen-4.8.0.tar.gz 22499917 SHA256 1e15c713ab7ba3bfda8b4a285ed973529364fd1100e6dd5a61f29583dc667b04 SHA512 70b95553f9813573b12e52999a4df8701dec430f23c36a8dc70d25a46bb4bc9234e5b7feb74a04062af4c8d6b6bcfe947d90b2b172416206812e54bac9797454 WHIRLPOOL 1296c25a05e3ab81730a2587ea1c07c7c022f05cfefc580224185c8d5fc9853531031c1292f69eff944ae2752492c4b95f13e160be3c449a7626aeadf1a21102
-DIST xen-security-patches-19.tar.xz 3336 SHA256 497a01fbd20fa45df19b41d337be0a87f4808101ac33cc9649461726abf43720 SHA512 d8a4a8ceeab9e2efedf880e7a2007b312a7f528cdb8fb1f748096621bbdc447ff8ee09b8fbe1aae657ccd7b2557e436cf60f6e70dcaef65e8959204e91f3ec57 WHIRLPOOL 26473bc9d7c2648f78f1fbf722e1ebcf42983d9d0e04d40f66eaad73c5a7ec232a397392dd5f66adb1258c571238a8faf0497ceb468674b93f7f86b91539f9b9
DIST xen-security-patches-20.tar.xz 5608 SHA256 5bb4b6d93a07a3aa74497848ecdc9b7f0729f38d8a3e90d964c9aa85851ebfba SHA512 17171ca9f212153e49636c84455ec034b08e73be26f912e43995ac245d1927e6d4aa97a160f96d55f05e2c19c44d7ed8617ad10d8f4f27dc75f8f936624f73ce WHIRLPOOL 68e6f0033102298c31bdca88ac426fbcf3ee986250795404cead9e7577cf9bdb73c153f01d40b5cac31a2e845d862fe1dfcbb9022b550abb00779cf784f9b523
diff --git a/app-emulation/xen/xen-4.6.4-r3.ebuild b/app-emulation/xen/xen-4.6.4-r3.ebuild
deleted file mode 100644
index 785a28565926..000000000000
--- a/app-emulation/xen/xen-4.6.4-r3.ebuild
+++ /dev/null
@@ -1,193 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${PV/_/-}
-
-if [[ $PV == *9999 ]]; then
- inherit git-r3
- KEYWORDS=""
- EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
- SRC_URI=""
-else
- KEYWORDS="amd64 ~arm -x86"
- UPSTREAM_VER=0
- SECURITY_VER=19
- GENTOO_VER=
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
-fi
-
-DESCRIPTION="The Xen virtual machine monitor"
-HOMEPAGE="http://xen.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
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # 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
- EPATCH_SUFFIX="patch"
- EPATCH_FORCE="yes"
-
- source "${WORKDIR}"/patches-security/${PV}.conf
-
- for i in ${XEN_SECURITY_MAIN}; do
- epatch "${WORKDIR}"/patches-security/xen/$i
- done
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- epatch "${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
-
- # remove -Werror for gcc-4.6's sake
- find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
- xargs sed -i 's/ *-Werror */ /'
- # not strictly necessary to fix this
- sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
-
- # Bug #575868 converted to a sed statement, typo of one char
- sed -e "s:granter’s:granter's:" -i xen/include/public/grant_table.h || die
-
- epatch_user
-}
-
-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 and the unoffical wiki page:"
- elog " https://wiki.gentoo.org/wiki/Xen"
- elog " http://en.gentoo-wiki.com/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"
-}
diff --git a/app-emulation/xen/xen-4.6.4-r4.ebuild b/app-emulation/xen/xen-4.6.4-r4.ebuild
deleted file mode 100644
index e91c520b8317..000000000000
--- a/app-emulation/xen/xen-4.6.4-r4.ebuild
+++ /dev/null
@@ -1,193 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${PV/_/-}
-
-if [[ $PV == *9999 ]]; then
- inherit git-r3
- KEYWORDS=""
- EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
- SRC_URI=""
-else
- KEYWORDS="amd64 ~arm -x86"
- UPSTREAM_VER=0
- SECURITY_VER=20
- GENTOO_VER=
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
-fi
-
-DESCRIPTION="The Xen virtual machine monitor"
-HOMEPAGE="http://xen.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
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # 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
- EPATCH_SUFFIX="patch"
- EPATCH_FORCE="yes"
-
- source "${WORKDIR}"/patches-security/${PV}.conf
-
- for i in ${XEN_SECURITY_MAIN}; do
- epatch "${WORKDIR}"/patches-security/xen/$i
- done
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- epatch "${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
-
- # remove -Werror for gcc-4.6's sake
- find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
- xargs sed -i 's/ *-Werror */ /'
- # not strictly necessary to fix this
- sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
-
- # Bug #575868 converted to a sed statement, typo of one char
- sed -e "s:granter’s:granter's:" -i xen/include/public/grant_table.h || die
-
- epatch_user
-}
-
-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 and the unoffical wiki page:"
- elog " https://wiki.gentoo.org/wiki/Xen"
- elog " http://en.gentoo-wiki.com/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"
-}
diff --git a/app-emulation/xen/xen-4.7.1-r3.ebuild b/app-emulation/xen/xen-4.7.1-r3.ebuild
deleted file mode 100644
index 785a28565926..000000000000
--- a/app-emulation/xen/xen-4.7.1-r3.ebuild
+++ /dev/null
@@ -1,193 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils multilib mount-boot flag-o-matic python-any-r1 toolchain-funcs
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${PV/_/-}
-
-if [[ $PV == *9999 ]]; then
- inherit git-r3
- KEYWORDS=""
- EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
- SRC_URI=""
-else
- KEYWORDS="amd64 ~arm -x86"
- UPSTREAM_VER=0
- SECURITY_VER=19
- GENTOO_VER=
-
- [[ -n ${UPSTREAM_VER} ]] && \
- UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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="http://bits.xensource.com/oss-xen/release/${MY_PV}/${MY_P}.tar.gz
- ${UPSTREAM_PATCHSET_URI}
- ${SECURITY_PATCHSET_URI}
- ${GENTOO_PATCHSET_URI}"
-fi
-
-DESCRIPTION="The Xen virtual machine monitor"
-HOMEPAGE="http://xen.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
- if [[ -n ${UPSTREAM_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- EPATCH_OPTS="-p1" \
- epatch "${WORKDIR}"/patches-upstream
- fi
-
- # 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
- EPATCH_SUFFIX="patch"
- EPATCH_FORCE="yes"
-
- source "${WORKDIR}"/patches-security/${PV}.conf
-
- for i in ${XEN_SECURITY_MAIN}; do
- epatch "${WORKDIR}"/patches-security/xen/$i
- done
- fi
-
- # Gentoo's patchset
- if [[ -n ${GENTOO_VER} ]]; then
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}"/patches-gentoo
- fi
-
- epatch "${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
-
- # remove -Werror for gcc-4.6's sake
- find "${S}" -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' | \
- xargs sed -i 's/ *-Werror */ /'
- # not strictly necessary to fix this
- sed -i 's/, "-Werror"//' "${S}/tools/python/setup.py" || die "failed to re-set setup.py"
-
- # Bug #575868 converted to a sed statement, typo of one char
- sed -e "s:granter’s:granter's:" -i xen/include/public/grant_table.h || die
-
- epatch_user
-}
-
-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 and the unoffical wiki page:"
- elog " https://wiki.gentoo.org/wiki/Xen"
- elog " http://en.gentoo-wiki.com/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"
-}