public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Lan Yixun" <dlan@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/virtualization:dlan commit in: app-emulation/xen-tools/files/, app-emulation/xen-tools/
Date: Mon, 20 Jan 2014 10:27:05 +0000 (UTC)	[thread overview]
Message-ID: <1390191984.14584253416c6a3d4332890d6f76ec8dcb42461b.dlan@gentoo> (raw)

commit:     14584253416c6a3d4332890d6f76ec8dcb42461b
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 18 01:48:02 2014 +0000
Commit:     Lan Yixun <dlan <AT> gentoo <DOT> 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 <dlan <AT> 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


             reply	other threads:[~2014-01-20 10:27 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-20 10:27 Lan Yixun [this message]
  -- strict thread matches above, loose matches on Subject: below --
2014-07-09  9:55 [gentoo-commits] proj/virtualization:dlan commit in: app-emulation/xen-tools/files/, app-emulation/xen-tools/ Lan Yixun
2014-02-28  9:35 [gentoo-commits] proj/virtualization:master " Lan Yixun
2014-04-04  7:35 ` [gentoo-commits] proj/virtualization:dlan " Lan Yixun
2014-01-20 10:27 Lan Yixun

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1390191984.14584253416c6a3d4332890d6f76ec8dcb42461b.dlan@gentoo \
    --to=dlan@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox