From 323f60cc42a93750f2446782812c86dac32d922e Mon Sep 17 00:00:00 2001 From: Michael Marineau Date: Wed, 2 May 2007 04:27:24 +0000 Subject: [PATCH] Add Xen 3.0.4 from the marineam-xen overlay Package-Manager: portage-2.1.1-r2 --- app-emulation/xen/ChangeLog | 9 +- app-emulation/xen/files/digest-xen-3.0.4_p1 | 3 + app-emulation/xen/xen-3.0.2.ebuild | 40 +++------ app-emulation/xen/xen-3.0.4_p1.ebuild | 98 +++++++++++++++++++++ 4 files changed, 122 insertions(+), 28 deletions(-) create mode 100644 app-emulation/xen/files/digest-xen-3.0.4_p1 create mode 100644 app-emulation/xen/xen-3.0.4_p1.ebuild diff --git a/app-emulation/xen/ChangeLog b/app-emulation/xen/ChangeLog index f2a873a4ceea..1ebb8eac90c4 100644 --- a/app-emulation/xen/ChangeLog +++ b/app-emulation/xen/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-emulation/xen # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen/ChangeLog,v 1.43 2007/01/25 23:07:09 genone Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen/ChangeLog,v 1.44 2007/05/02 04:27:24 marineam Exp $ + +*xen-3.0.4_p1 (02 May 2007) + + 02 May 2007; Michael Marineau + -files/gentoo-makefile-targets, -files/xend-conf, xen-3.0.2.ebuild, + +xen-3.0.4_p1.ebuild: + Add xen 3.0.4 from the marineam-xen overlay, cleanup the 3.0.2 ebuild a bit. 25 Jan 2007; Marius Mauch xen-3.0.2.ebuild: Replacing einfo with elog diff --git a/app-emulation/xen/files/digest-xen-3.0.4_p1 b/app-emulation/xen/files/digest-xen-3.0.4_p1 new file mode 100644 index 000000000000..7aadef066796 --- /dev/null +++ b/app-emulation/xen/files/digest-xen-3.0.4_p1 @@ -0,0 +1,3 @@ +MD5 e85e16ad3dc354338e3ac4a8951f9649 xen-3.0.4_1-src.tgz 6473636 +RMD160 f869eec35f6afe0bc9824ce2eb4a600f789d423b xen-3.0.4_1-src.tgz 6473636 +SHA256 6b3842393e69a9c8fcdbc2789d05830aba6f1d108a6f97f1448de4a86f92a5cb xen-3.0.4_1-src.tgz 6473636 diff --git a/app-emulation/xen/xen-3.0.2.ebuild b/app-emulation/xen/xen-3.0.2.ebuild index 6601ded044dc..2e363d9e41fd 100644 --- a/app-emulation/xen/xen-3.0.2.ebuild +++ b/app-emulation/xen/xen-3.0.2.ebuild @@ -1,30 +1,29 @@ # Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen/xen-3.0.2.ebuild,v 1.8 2007/01/25 23:07:09 genone Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen/xen-3.0.2.ebuild,v 1.9 2007/05/02 04:27:24 marineam Exp $ inherit mount-boot flag-o-matic DESCRIPTION="The Xen virtual machine monitor" HOMEPAGE="http://xen.sourceforge.net" -if [[ ${PV} == *_p* ]]; then - XEN_UNSTABLE="xen-unstable-${PV#*_p}" - SRC_URI="mirror://gentoo/${XEN_UNSTABLE}.tar.bz2" - S="${WORKDIR}/${XEN_UNSTABLE}" -else - SRC_URI="http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/${P}-src.tgz" - S="${WORKDIR}/xen-${PV}" -fi +MY_PV=${PV/_p/_} +SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV/_/-}/src.tgz/xen-${MY_PV}-src.tgz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="debug custom-cflags pae hardened" -DEPEND="sys-devel/dev86" -RDEPEND="" +RDEPEND="|| ( sys-boot/grub + sys-boot/grub-static ) + ~sys-kernel/xen-sources-2.6.16.28" +PDEPEND="~app-emulation/xen-tools-${PV}" RESTRICT="test" +# Approved by QA team in bug #144032 +QA_WX_LOAD="boot/xen-syms-${MY_PV/_/-}" + pkg_setup() { if [[ -z ${XEN_TARGET_ARCH} ]]; then if use x86; then @@ -75,15 +74,10 @@ src_compile() { src_install() { local myopt + use debug && myopt="${myopt} debug=y" use pae && myopt="${myopt} pae=y" - make DESTDIR="${D}" ${myopt} install-xen \ - || die "install failed" - - # for upstream change tracking - if [[ -n ${XEN_UNSTABLE} ]]; then - dodoc "${S}"/XEN-VERSION - fi + make DESTDIR="${D}" install-xen ${myopt} || die "install failed" } pkg_postinst() { @@ -91,15 +85,7 @@ pkg_postinst() { elog "http://gentoo-wiki.com/HOWTO_Xen_and_Gentoo" echo - elog "Note: xen tools have been moved to app-emulation/xen-tools;" - elog "you need to install that package to manage your domains." - - if [[ -n ${XEN_UNSTABLE} ]]; then - echo - elog "This is a snapshot of the xen-unstable tree." - elog "Please report bugs in xen itself (and not the packaging) to" - elog "bugzilla.xensource.com" - fi + elog "Note: xen tools have been moved to app-emulation/xen-tools" if use pae; then echo diff --git a/app-emulation/xen/xen-3.0.4_p1.ebuild b/app-emulation/xen/xen-3.0.4_p1.ebuild new file mode 100644 index 000000000000..93aab2dcd1bf --- /dev/null +++ b/app-emulation/xen/xen-3.0.4_p1.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen/xen-3.0.4_p1.ebuild,v 1.1 2007/05/02 04:27:24 marineam Exp $ + +inherit mount-boot flag-o-matic + +DESCRIPTION="The Xen virtual machine monitor" +HOMEPAGE="http://www.xensource.com/xen/xen/" +MY_PV=${PV/_p/_} +SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV/_/-}/src.tgz/xen-${MY_PV}-src.tgz" +S="${WORKDIR}/xen-${MY_PV}-src" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug custom-cflags pae" + +RDEPEND="|| ( sys-boot/grub + sys-boot/grub-static ) + >=sys-kernel/xen-sources-2.6.16.33" +PDEPEND="~app-emulation/xen-tools-${PV}" + +RESTRICT="test" + +# Approved by QA team in bug #144032 +QA_WX_LOAD="boot/xen-syms-${MY_PV/_/-}" + +pkg_setup() { + if [[ -z ${XEN_TARGET_ARCH} ]]; then + if use x86; then + export XEN_TARGET_ARCH="x86_32" + elif use amd64; then + export XEN_TARGET_ARCH="x86_64" + else + die "Unsupported architecture!" + fi + fi +} + +src_unpack() { + unpack ${A} + # 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 {} \; + fi + + # xen tries to be smart and filter out CFLAGs not supported by gcc. + # It doesn't handle no* flags though, but flag-o-matic's test-flag-CC does. + for FLAG in -nopie -fno-stack-protector -fno-stack-protector-all; do + test-flag-CC ${FLAG} && HARDFLAGS="${HARDFLAGS} ${FLAG}" + done + sed -i "s/^CFLAGS-y.*__XEN__.*$/& ${HARDFLAGS}/" \ + "${S}"/xen/Rules.mk +} + +src_compile() { + local myopt + use debug && myopt="${myopt} debug=y" + use pae && myopt="${myopt} pae=y" + + if use custom-cflags; then + filter-flags -fPIE -fstack-protector + else + unset CFLAGS + fi + + # Send raw LDFLAGS so that --as-needed works + emake LDFLAGS="$(raw-ldflags)" -C xen ${myopt} || die "compile failed" +} + +src_install() { + local myopt + use debug && myopt="${myopt} debug=y" + use pae && myopt="${myopt} pae=y" + + make DESTDIR="${D}" ${myopt} install-xen || die "install failed" +} + +pkg_postinst() { + elog "Please visit the Xen and Gentoo wiki:" + elog "http://gentoo-wiki.com/HOWTO_Xen_and_Gentoo" + + echo + elog "Note: xen tools have been moved to app-emulation/xen-tools" + + if use pae; then + echo + ewarn "This is a PAE build of Xen. It will *only* boot PAE kernels!" + fi +} -- 2.26.2