diff options
author | Michael Marineau <marineam@gentoo.org> | 2007-08-07 19:36:54 +0000 |
---|---|---|
committer | Michael Marineau <marineam@gentoo.org> | 2007-08-07 19:36:54 +0000 |
commit | 7479b6abe09936f52bd3c71d0c32438576068813 (patch) | |
tree | 4144049b66af0fd25f7e23b4d666b650a89d6c0d | |
parent | Manifest rebuild (diff) | |
download | xen-7479b6abe09936f52bd3c71d0c32438576068813.tar.gz xen-7479b6abe09936f52bd3c71d0c32438576068813.tar.bz2 xen-7479b6abe09936f52bd3c71d0c32438576068813.zip |
Add hvm use flag to toggle all hvm support and block USE=hvm on no-multilib profiles. (replaces the ioemu flag)
svn path=/overlay/; revision=14
-rw-r--r-- | app-emulation/xen-tools/Manifest | 8 | ||||
-rw-r--r-- | app-emulation/xen-tools/xen-tools-3.1.0.ebuild | 42 |
2 files changed, 27 insertions, 23 deletions
diff --git a/app-emulation/xen-tools/Manifest b/app-emulation/xen-tools/Manifest index cbe6243..f621f8e 100644 --- a/app-emulation/xen-tools/Manifest +++ b/app-emulation/xen-tools/Manifest @@ -31,10 +31,10 @@ MD5 a3b477fa44710894c47b0aeca7d6a57a files/xendomains.initd 2168 RMD160 c6dc22f50cf575393cb076c2abfff8b3f24b5540 files/xendomains.initd 2168 SHA256 ed1adcb24e5ffe1c0abc33d6bd69f129b31b3d4f068222ee343809a8dd12b8d0 files/xendomains.initd 2168 DIST xen-3.1.0-src.tgz 6831094 RMD160 2fd65a3b81e522d0ed2d62fd11e5977167f1ceb3 SHA1 fa4b54c36626f2cce9b15dc99cafda0b42c54777 SHA256 b5d7cea6deeee1439e8883fed4b3f1a8e4f675b4af8148178721f99bd76676b7 -EBUILD xen-tools-3.1.0.ebuild 5753 RMD160 a0a474e6d06dd5fd05f54762c8c2ea82172f6ed7 SHA1 c97f16f51a1acb503dfa009b80190593cbc58331 SHA256 866ef333c12a8c5ab593d489f7d358b4a10125bc4567125c0fd3a3022b3647fa -MD5 59346209a9fcc7ed46b43550322dfd7b xen-tools-3.1.0.ebuild 5753 -RMD160 a0a474e6d06dd5fd05f54762c8c2ea82172f6ed7 xen-tools-3.1.0.ebuild 5753 -SHA256 866ef333c12a8c5ab593d489f7d358b4a10125bc4567125c0fd3a3022b3647fa xen-tools-3.1.0.ebuild 5753 +EBUILD xen-tools-3.1.0.ebuild 5878 RMD160 2bab4a9c60fd626473ea664bcb6d1802df71f4ee SHA1 44a28f0fd65c09e4fb22aa1d33d5a242ec572260 SHA256 9024bde3406a4d3fbd6357e1c4f1215b14de29e6ab29a6aad7192c06a3cd7e4d +MD5 a492bcdd19499465834137778efcd65f xen-tools-3.1.0.ebuild 5878 +RMD160 2bab4a9c60fd626473ea664bcb6d1802df71f4ee xen-tools-3.1.0.ebuild 5878 +SHA256 9024bde3406a4d3fbd6357e1c4f1215b14de29e6ab29a6aad7192c06a3cd7e4d xen-tools-3.1.0.ebuild 5878 MD5 b2e86effae6681cbbecdbf864b193b4a files/digest-xen-tools-3.1.0 235 RMD160 2366b7298f0125f11d41aca0c6088c20863dbed1 files/digest-xen-tools-3.1.0 235 SHA256 12c130912c624791e6855ebeb932368fc8889371876db396055b02ac9a3b9892 files/digest-xen-tools-3.1.0 235 diff --git a/app-emulation/xen-tools/xen-tools-3.1.0.ebuild b/app-emulation/xen-tools/xen-tools-3.1.0.ebuild index a6b7b89..bba7836 100644 --- a/app-emulation/xen-tools/xen-tools-3.1.0.ebuild +++ b/app-emulation/xen-tools/xen-tools-3.1.0.ebuild @@ -12,24 +12,24 @@ S="${WORKDIR}/xen-${PV}-src" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="doc debug screen custom-cflags pygrub ioemu" +IUSE="doc debug screen custom-cflags pygrub hvm" CDEPEND="dev-lang/python sys-libs/zlib - ioemu? ( media-libs/libsdl )" + hvm? ( media-libs/libsdl )" DEPEND="${CDEPEND} sys-devel/gcc dev-lang/perl - sys-devel/dev86 app-misc/pax-utils doc? ( dev-tex/latex2html media-gfx/transfig ) - ioemu? ( + hvm? ( x11-proto/xproto net-libs/libvncserver + sys-devel/dev86 )" RDEPEND="${CDEPEND} @@ -48,6 +48,13 @@ PYTHON_MODNAME="xen grub" QA_WX_LOAD="usr/lib/xen/boot/hvmloader" pkg_setup() { + if ! use x86 && ! has x86 $(get_all_abis) && use hvm; then + eerror "HVM (VT-x and AMD-v) cannot be built on this system. An x86 or" + eerror "an amd64 multilib profile is required. Remove the hvm use flag" + eerror "to build xen-tools on your current profile." + die "USE=hvm is unsupported on this system." + fi + if [[ "$(scanelf -s __guard -q `which python`)" ]] ; then ewarn "xend may not work when python is built with stack smashing protection (ssp)." ewarn "If 'xm create' fails with '<ProtocolError for /RPC2: -1 >', see bug #141866" @@ -81,23 +88,17 @@ src_unpack() { -i {} \; fi - # Disable the 32bit-only vmxassist if we are not on x86 and we don't - # support the x86 ABI. Also disable hvmloader, since it requires vmxassist. - if ! use x86 && ! has x86 $(get_all_abis); then - sed -i -e "/SUBDIRS += vmxassist/d" "${S}"/tools/firmware/Makefile - sed -i -e "/SUBDIRS += hvmloader/d" "${S}"/tools/firmware/Makefile + # Disable hvm support on systems that don't support x86_32 binaries. + if ! use hvm; then + chmod 644 tools/check/check_x11_devel + sed -i -e '/^CONFIG_IOEMU := y$/d' "${S}"/config/*.mk + sed -i -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' "${S}"/tools/Makefile fi if ! use pygrub; then sed -i -e "/^SUBDIRS-y += pygrub$/d" "${S}"/tools/Makefile fi - # Don't bother with ioemu, only needed for fully virtualised guests - if ! use ioemu; then - chmod 644 tools/check/check_x11_devel - sed -i -e "/^CONFIG_IOEMU := y$/d" "${S}"/config/*.mk - fi - # Allow --as-needed LDFLAGS epatch "${FILESDIR}/${PN}-3.0.4_p1--as-needed.patch" @@ -115,7 +116,7 @@ src_compile() { use custom-cflags || unset CFLAGS #gcc-specs-ssp && append-flags -fno-stack-protector -fno-stack-protector-all - if use ioemu; then + if use hvm; then myconf="${myconf} --disable-system --disable-user" (cd tools/ioemu && econf ${myconf}) || die "configure failured" fi @@ -179,10 +180,13 @@ pkg_postinst() { ewarn "Please rebuild python with USE=ncurses to make use of xenmon.py." fi - if ! use x86 && ! has x86 $(get_all_abis); then + if ! use hvm; then + echo + elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm" + elog "support enable the hvm use flag." + elog "An x86 or amd64 multilib system is required to build HVM support." echo - elog "Your system does not support building x86 binaries (amd64 no-multilib)" - elog "hvmloader has not been built, which is required for HVM guests." + elog "The ioemu use flag has been removed and replaced with hvm." fi if grep -qsF XENSV= "${ROOT}/etc/conf.d/xend"; then |