From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id BB0B3138247 for ; Mon, 20 Jan 2014 10:27:12 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 0DE5EE0DEE; Mon, 20 Jan 2014 10:27:09 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 11AC1E0DE2 for ; Mon, 20 Jan 2014 10:27:08 +0000 (UTC) Received: from spoonbill.gentoo.org (spoonbill.gentoo.org [81.93.255.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 200FE33F965 for ; Mon, 20 Jan 2014 10:27:07 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by spoonbill.gentoo.org (Postfix) with ESMTP id 0AFE118733 for ; Mon, 20 Jan 2014 10:27:05 +0000 (UTC) From: "Lan Yixun" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Lan Yixun" Message-ID: <1390191984.14584253416c6a3d4332890d6f76ec8dcb42461b.dlan@gentoo> Subject: [gentoo-commits] proj/virtualization:dlan commit in: app-emulation/xen-tools/files/, app-emulation/xen-tools/ X-VCS-Repository: proj/virtualization X-VCS-Files: app-emulation/xen-tools/Manifest app-emulation/xen-tools/files/qemu-bridge-r2.patch app-emulation/xen-tools/files/xen-tools-4-nodownload.patch app-emulation/xen-tools/xen-tools-9999.ebuild X-VCS-Directories: app-emulation/xen-tools/files/ app-emulation/xen-tools/ X-VCS-Committer: dlan X-VCS-Committer-Name: Lan Yixun X-VCS-Revision: 14584253416c6a3d4332890d6f76ec8dcb42461b X-VCS-Branch: dlan Date: Mon, 20 Jan 2014 10:27:05 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: cea1a2f2-085f-4066-84f8-015f5dd8df06 X-Archives-Hash: fc9894c3fc7b71a5ea4c447b1c30e18e commit: 14584253416c6a3d4332890d6f76ec8dcb42461b Author: Yixun Lan gentoo org> AuthorDate: Sat Jan 18 01:48:02 2014 +0000 Commit: Lan Yixun gentoo org> CommitDate: Mon Jan 20 04:26:24 2014 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/virtualization.git;a=commit;h=14584253 app-emulation/xen-tools: rework the ebuild 1) add USE=pam 2) remove lomount 3) rework no-download patch 4) qemu multilib support 5) rework qemu-bridge-helper 6) rework src_configure Signed-off-by: Yixun Lan gentoo.org> --- app-emulation/xen-tools/Manifest | 3 - app-emulation/xen-tools/files/qemu-bridge-r2.patch | 79 ++++++++++++++++++++++ .../xen-tools/files/xen-tools-4-nodownload.patch | 39 +++++++++++ app-emulation/xen-tools/xen-tools-9999.ebuild | 31 +++++++-- 4 files changed, 144 insertions(+), 8 deletions(-) diff --git a/app-emulation/xen-tools/Manifest b/app-emulation/xen-tools/Manifest index b81c9d4..aba75cb 100644 --- a/app-emulation/xen-tools/Manifest +++ b/app-emulation/xen-tools/Manifest @@ -1,6 +1,3 @@ DIST ipxe.tar.gz 2867999 SHA256 632ce8c193ccacc3012bd354bdb733a4be126f7c098e111930aa41dad537405c SHA512 c5cb1cdff40d2d71fd3e692a9d0efadf2aa17290daf5195391a1c81ddd9dfc913a8e44d5be2b12be85b2a5565ea31631c99c7053564f2fb2225c80ea0bb0e4a4 WHIRLPOOL 58b7459aaf7323968e2f4d1cdcb563a04a0ee40d7d0e8fc600495baf6914127fbbbcddfb66199cd9f462eb59565b3d1ae90a05b3c771b8f13c2d2dcb6070eebc -DIST seabios-dir-remote-20130720.tar.gz 3201017 SHA256 0cf06b54e8ae1cfc25f2942eea1490a9e7e01f478541577025f6eef76e0c76de SHA512 e9ebe3711e3f678d3632f8e8e645f8be4fb65608aff04aeeb0e1152521bf571bc4d879f136d23bb0aa8bd4c4ec20f294b472cf54dc70916e52d330328aadd357 WHIRLPOOL 6138271f72fd96fabe3cffc07a6efcb9c0e195ed96f4ad708d00e85e0a84a03900dc41389cd4f26d533a3aa42142a9e17708d7b87d722f1c9348f61a5db3e59d DIST seabios-dir-remote-20130802.tar.gz 463822 SHA256 b70ba80ba7f6cddd935cb7afe035fc48e0ee393f4d2e080f953326c4721c4bdf SHA512 5278eefbd09f111469d32528acb7ce078b64009cca9e749203eee8695add4dab052fef16f8452a43f62c97b53aeb7227bc083a09167802add96c26203055f5e7 WHIRLPOOL 3346bded3d94047e584fa20d56cfe4d42a97c3c8f7353a71ea6800b3539bbb07b4e833ab8e4b98abc0e621eb9f5f6062f4658066eb4c3e4752e5489253a2cead -DIST xen-4.3.1.tar.gz 16429423 SHA256 3b5b7cc508b1739753585b5c25635471cdcef680e8770a78bf6ef9333d26a9fd SHA512 f5250ad5ad3defc5dc1207eb6208a3928128ef57ac4162018bd92b750dc1df1eaaf37835528aca33a0f9e04c82d5f8c4ba79c03a1780d2b72cbb90cc26f77275 WHIRLPOOL 087390786cea9aee273a5d81988436303991aa5ea92faf111d3b619517368f8c8feef84f4f8c602cac723980a344eb90414887db4ca88a2ee14bc6b0253e36ca -DIST xen-4.4.0-rc1.tar.gz 18099051 SHA256 677f2f162a92da9758cfdcd630c5774b4e2ab27bd641f140f630195ba307c6b5 SHA512 0dd81952d27f7d56a11645c365cf0b1eb8892ad526bf7dd92676f0788721b7c574117c4bfc0115282ee8d40241c8cc04b7852ce74f3f8f05130866ba3e6cb77c WHIRLPOOL 4a9131d5a1dfc89d98bd093868b17fef399c3ff74a64400b8e0faa32e0ca589d12d1af999d37a2161a18c54352aa2bf2b4fce5bfd38aa8d39db12a15e157b1c8 DIST xen-4.4.0-rc2.tar.gz 18102834 SHA256 2ab42564fb3e06878416b0db31b751f95efa1bfdf01e538af53b8e2f9ae03ca8 SHA512 542ee46a7a1956a9443c6c912f46558315050c73ef59d70f8bd7a8259c380fa5baf4aaeeeae2b0538144829d67ff43057b2427f3529c167cf217404452362989 WHIRLPOOL 54e1613cfaf5844e80a23f461b1e74febd73a3116ccf7d831d2fdc8c51df6e0604ae8a47d9668b4db6c1a1ce9626adb3cb283a798c87e5711dffa8ed1942b98b diff --git a/app-emulation/xen-tools/files/qemu-bridge-r2.patch b/app-emulation/xen-tools/files/qemu-bridge-r2.patch new file mode 100644 index 0000000..c03652f --- /dev/null +++ b/app-emulation/xen-tools/files/qemu-bridge-r2.patch @@ -0,0 +1,79 @@ +diff --git a/tools/qemu-xen-dir/Makefile b/tools/qemu-xen-dir/Makefile +index 4d257f1..db2c2ad 100644 +--- a/tools/qemu-xen-dir/Makefile ++++ b/tools/qemu-xen-dir/Makefile +@@ -62,7 +62,7 @@ $(call set-vpath, $(SRC_PATH)) + + LIBS+=-lz $(LIBS_TOOLS) + +-HELPERS-$(CONFIG_LINUX) = qemu-bridge-helper$(EXESUF) ++HELPERS-$(CONFIG_LINUX) = xen-bridge-helper$(EXESUF) + + ifdef BUILD_DOCS + DOCS=qemu-doc.html qemu-tech.html qemu.1 qemu-img.1 qemu-nbd.8 QMP/qmp-commands.txt +@@ -186,7 +186,7 @@ qemu-img$(EXESUF): qemu-img.o $(block-obj-y) libqemuutil.a libqemustub.a + qemu-nbd$(EXESUF): qemu-nbd.o $(block-obj-y) libqemuutil.a libqemustub.a + qemu-io$(EXESUF): qemu-io.o $(block-obj-y) libqemuutil.a libqemustub.a + +-qemu-bridge-helper$(EXESUF): qemu-bridge-helper.o ++xen-bridge-helper$(EXESUF): xen-bridge-helper.o + + fsdev/virtfs-proxy-helper$(EXESUF): fsdev/virtfs-proxy-helper.o fsdev/virtio-9p-marshal.o libqemuutil.a libqemustub.a + fsdev/virtfs-proxy-helper$(EXESUF): LIBS += -lcap +diff --git a/tools/qemu-xen-dir/include/net/net.h b/tools/qemu-xen-dir/include/net/net.h +index 30e4b04..6691ff0 100644 +--- a/tools/qemu-xen-dir/include/net/net.h ++++ b/tools/qemu-xen-dir/include/net/net.h +@@ -178,7 +178,7 @@ NetClientState *net_hub_port_find(int hub_id); + + #define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup" + #define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown" +-#define DEFAULT_BRIDGE_HELPER CONFIG_QEMU_HELPERDIR "/qemu-bridge-helper" ++#define DEFAULT_BRIDGE_HELPER CONFIG_QEMU_HELPERDIR "/xen-bridge-helper" + #define DEFAULT_BRIDGE_INTERFACE "br0" + + void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd); +diff --git a/tools/qemu-xen-dir/qemu-bridge-helper.c b/tools/qemu-xen-dir/qemu-bridge-helper.c +index 6a0974e..74b4635 100644 +--- a/tools/qemu-xen-dir/qemu-bridge-helper.c ++++ b/tools/qemu-xen-dir/qemu-bridge-helper.c +@@ -67,7 +67,7 @@ typedef QSIMPLEQ_HEAD(ACLList, ACLRule) ACLList; + static void usage(void) + { + fprintf(stderr, +- "Usage: qemu-bridge-helper [--use-vnet] --br=bridge --fd=unixfd\n"); ++ "Usage: xen-bridge-helper [--use-vnet] --br=bridge --fd=unixfd\n"); + } + + static int parse_acl_file(const char *filename, ACLList *acl_list) +diff --git a/tools/qemu-xen-dir/qemu-options.hx b/tools/qemu-xen-dir/qemu-options.hx +index d15338e..f7104f1 100644 +--- a/tools/qemu-xen-dir/qemu-options.hx ++++ b/tools/qemu-xen-dir/qemu-options.hx +@@ -1601,7 +1601,7 @@ to disable script execution. + + If running QEMU as an unprivileged user, use the network helper + @var{helper} to configure the TAP interface. The default network +-helper executable is @file{/usr/local/libexec/qemu-bridge-helper}. ++helper executable is @file{/usr/local/libexec/xen-bridge-helper}. + + @option{fd}=@var{h} can be used to specify the handle of an already + opened host TAP interface. +@@ -1625,7 +1625,7 @@ qemu-system-i386 linux.img \ + #launch a QEMU instance with the default network helper to + #connect a TAP device to bridge br0 + qemu-system-i386 linux.img \ +- -net nic -net tap,"helper=/usr/local/libexec/qemu-bridge-helper" ++ -net nic -net tap,"helper=/usr/local/libexec/xen-bridge-helper" + @end example + + @item -netdev bridge,id=@var{id}[,br=@var{bridge}][,helper=@var{helper}] +@@ -1634,7 +1634,7 @@ Connect a host TAP network interface to a host bridge device. + + Use the network helper @var{helper} to configure the TAP interface and + attach it to the bridge. The default network helper executable is +-@file{/usr/local/libexec/qemu-bridge-helper} and the default bridge ++@file{/usr/local/libexec/xen-bridge-helper} and the default bridge + device is @file{br0}. + + Examples: diff --git a/app-emulation/xen-tools/files/xen-tools-4-nodownload.patch b/app-emulation/xen-tools/files/xen-tools-4-nodownload.patch new file mode 100644 index 0000000..e5b8b8d --- /dev/null +++ b/app-emulation/xen-tools/files/xen-tools-4-nodownload.patch @@ -0,0 +1,39 @@ +diff --git a/tools/Makefile b/tools/Makefile +index 00c69ee..7c24532 100644 +--- a/tools/Makefile ++++ b/tools/Makefile +@@ -118,21 +118,8 @@ export QEMU_ROOT + endif + + qemu-xen-traditional-dir-find: +- set -ex; \ +- if test -d $(CONFIG_QEMU); then \ +- mkdir -p qemu-xen-traditional-dir; \ +- else \ +- export GIT=$(GIT); \ +- $(XEN_ROOT)/scripts/git-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) qemu-xen-traditional-dir; \ +- fi + + qemu-xen-dir-find: +- if test -d $(QEMU_UPSTREAM_URL) ; then \ +- mkdir -p qemu-xen-dir; \ +- else \ +- export GIT=$(GIT); \ +- $(XEN_ROOT)/scripts/git-checkout.sh $(QEMU_UPSTREAM_URL) $(QEMU_UPSTREAM_REVISION) qemu-xen-dir ; \ +- fi + + .PHONY: qemu-xen-traditional-dir-force-update + qemu-xen-traditional-dir-force-update: +diff --git a/tools/configure.ac b/tools/configure.ac +index 0754f0e..cc884f7 100644 +--- a/tools/configure.ac ++++ b/tools/configure.ac +@@ -150,7 +150,7 @@ AC_PROG_INSTALL + AC_PATH_PROG([BISON], [bison]) + AC_PATH_PROG([FLEX], [flex]) + AX_PATH_PROG_OR_FAIL([PERL], [perl]) +-AS_IF([test "x$xapi" = "xy"], [ ++AS_IF([test "x$xenapi" = "xy"], [ + AX_PATH_PROG_OR_FAIL([CURL], [curl-config]) + AX_PATH_PROG_OR_FAIL([XML], [xml2-config]) + ]) diff --git a/app-emulation/xen-tools/xen-tools-9999.ebuild b/app-emulation/xen-tools/xen-tools-9999.ebuild index a86f0e4..a55a99b 100644 --- a/app-emulation/xen-tools/xen-tools-9999.ebuild +++ b/app-emulation/xen-tools/xen-tools-9999.ebuild @@ -35,7 +35,7 @@ DOCS=( README docs/README.xen-bugtool docs/ChangeLog ) LICENSE="GPL-2" SLOT="0" -IUSE="api custom-cflags debug doc flask hvm qemu ocaml python pygrub screen static-libs xend" +IUSE="api custom-cflags debug doc flask hvm qemu ocaml pam python pygrub screen static-libs xend" REQUIRED_USE="hvm? ( qemu )" @@ -93,7 +93,6 @@ RESTRICT="test" pkg_setup() { python-single-r1_pkg_setup - export "CONFIG_LOMOUNT=y" export "CONFIG_TESTS=n" if has_version dev-libs/libgcrypt; then @@ -149,6 +148,8 @@ src_unpack() { } src_prepare() { + epatch "${FILESDIR}"/xen-tools-4-nodownload.patch + sed -e 's/-Wall//' -i Config.mk || die "Couldn't sanitize CFLAGS" # Drop .config @@ -215,13 +216,27 @@ src_prepare() { # why need LC_ALL=C sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' -i tools/firmware/Makefile || die + # respect multilib, usr/lib/libcacard.so.0.0.0 + sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \ + -i tools/qemu-xen-dir/configure || die + + # Prevent file collision with qemu package Bug 478064 + epatch "${FILESDIR}"/qemu-bridge-r2.patch + mv tools/qemu-xen-dir/qemu-bridge-helper.c tools/qemu-xen-dir/xen-bridge-helper.c || die + epatch_user } src_configure() { - econf \ - --enable-lomount \ - --disable-werror + local myconf=" \ + --prefix=/usr \ + --libdir=/usr/$(get_libdir) \ + --disable-werror \ + $(use_enable pam) \ + $(use_enable api xenapi) \ + $(use_enable ocaml ocamltools) \ + " + econf ${myconf} } src_compile() { @@ -284,12 +299,18 @@ src_install() { if use xend; then newinitd "${FILESDIR}"/xend.initd-r2 xend fi + newconfd "${FILESDIR}"/xendomains.confd xendomains newconfd "${FILESDIR}"/xenstored.confd xenstored newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled + newconfd "${FILESDIR}"/xencommons.confd xencommons + newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev + newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains newinitd "${FILESDIR}"/xenstored.initd xenstored newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled + newinitd "${FILESDIR}"/xencommons.initd xencommons + newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev if use screen; then cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die