commit:     21553fd5fd80fdeef53848b820f870fb7744aa12
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  1 02:45:56 2016 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Nov  1 02:46:24 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21553fd5

app-emulation/spice: upstream stable release bump

Package-Manager: portage-2.3.2

 app-emulation/spice/Manifest                       |  1 +
 .../spice/files/0.12.8-upstream-fix.patch          | 36 +++++++++
 app-emulation/spice/spice-0.12.8.ebuild            | 87 ++++++++++++++++++++++
 3 files changed, 124 insertions(+)

diff --git a/app-emulation/spice/Manifest b/app-emulation/spice/Manifest
index b1bc248..4bc4869 100644
--- a/app-emulation/spice/Manifest
+++ b/app-emulation/spice/Manifest
@@ -1,3 +1,4 @@
 DIST spice-0.12.7.tar.bz2 1220405 SHA256 
1c8e96cb9e833e23372e2f461508135903b697fd8c6daff565e9e87f6d2f6aba SHA512 
a740d500d0ccad3edd1f2f71e51c5a120d6ae98e44125f33870c12f5d1eeb30b809e588d05b2d0cadb4216e889b38e57d2278916817538311b875ff22e3b31ae
 WHIRLPOOL 
61ffa3e280a346a2667ddd38dcfd63ffa6c1e6efd0f05da4fad43b00ca5e1a1587411a907b929b75e4d1e72ebcef29621ccdd76dfb313e8f3a5513a5a367132b
+DIST spice-0.12.8.tar.bz2 1223778 SHA256 
f901a5c5873d61acac84642f9eea5c4d6386fc3e525c2b68792322794e1c407d SHA512 
6485d3522af1cde93d2c0abad7f7ef9f2e4d3e5049314fb93b6dd4b86e33d67d353a3ff42a355c8fd991bad447bbde1e6320c083bbc6f02b576bd9cebe7269ed
 WHIRLPOOL 
9363254a4b072e8c06e7c0ea4d25dd4b068e4700cbb4fdaabc9f8fe9291e2f67afc321b0d56c2b6f46153b3f6bd7d6c96341437053b0410808fb95ddd01354fb
 DIST spice-0.13.1.tar.bz2 1245323 SHA256 
9ecb130424da02e90c235c1294f6e759d7c676c5e710587a5c98a1f20f991da2 SHA512 
a8e65cc02c802686f2e0c21615401e13b337e050c40938bebefa684abc1ce0e2d478136d0fec481a8ee30ed98f2e2fb909dfbf6cd65e9dfd7093d59f825b95d5
 WHIRLPOOL 
068d7d26f18435995546d84b0d8d81ced4973773303463e597cf05e1c5accd9ac8554f22032eb55827bebbe6c0fc14915455da24c58fc70b135d955fe3442db7
 DIST spice-0.13.2.tar.bz2 1284734 SHA256 
045a1f145d8207ecf33105c8a8917252c1201c45791fdc544733465a37974954 SHA512 
7220c6550446a8077522442bd518cff68439bb0b00ee199920b32a97c3655ccad75a0cdfc822a99be678e6098ad33698b26340caddae0400403490a89137d367
 WHIRLPOOL 
f2bd409e87203c2bbe481e6b6ba9ae3c6cfee0e67b0dd5073c97e9ff14d9c02a7cec0606700717ce9c25e478a38eefc925f9c797697981528f357464f388b65d

diff --git a/app-emulation/spice/files/0.12.8-upstream-fix.patch 
b/app-emulation/spice/files/0.12.8-upstream-fix.patch
new file mode 100644
index 00000000..fcc1855
--- /dev/null
+++ b/app-emulation/spice/files/0.12.8-upstream-fix.patch
@@ -0,0 +1,36 @@
+commit 1d597f4b1a6bbeaf3dda998413a1e3cef2e40681
+Author: Marc-AndrĂ© Lureau <[email protected]>
+Date:   Wed Jul 20 17:16:31 2016 +0400
+
+    Call migrate_end_complete() after falling back to switch-host
+    
+    Eventually, during a seamless migration, qemu may finish to migrate
+    before the spice client even finished to connect all channels to
+    destination and informed the server. In this case,
+    main_channel_client_migrate_src_complete() will fall back to
+    switch-host method, and reds_mig_fill_wait_disconnect() is called to
+    complete the migration (disconnecting all channels).
+    
+    reds_mig_cleanup() is called when all channels are disconnected, but
+    reds->mig_wait_connect is still TRUE, and it will call
+    migrate_connect_complete() instead of the expected
+    migrate_end_complete(). Setting reds->mig_wait_connect to FALSE when
+    reds_mig_fill_wait_disconnect() solves the issue.
+    
+    Fixes:
+    https://bugzilla.redhat.com/show_bug.cgi?id=1352836
+    
+    Signed-off-by: Marc-AndrĂ© Lureau <[email protected]>
+
+diff --git a/server/reds.c b/server/reds.c
+index 61bf735..f40b65c 100644
+--- a/server/reds.c
++++ b/server/reds.c
+@@ -2816,6 +2816,7 @@ static void reds_mig_fill_wait_disconnect(void)
+         wait_client->client = client;
+         ring_add(&reds->mig_wait_disconnect_clients, &wait_client->link);
+     }
++    reds->mig_wait_connect = FALSE;
+     reds->mig_wait_disconnect = TRUE;
+     core->timer_start(reds->mig_timer, MIGRATE_TIMEOUT);
+ }

diff --git a/app-emulation/spice/spice-0.12.8.ebuild 
b/app-emulation/spice/spice-0.12.8.ebuild
new file mode 100644
index 00000000..7cbe1ee
--- /dev/null
+++ b/app-emulation/spice/spice-0.12.8.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit eutils python-any-r1
+
+DESCRIPTION="SPICE server"
+HOMEPAGE="http://spice-space.org/";
+SRC_URI="http://spice-space.org/download/releases/${P}.tar.bz2";
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="libressl sasl smartcard static-libs"
+
+# the libspice-server only uses the headers of libcacard
+RDEPEND="
+       >=dev-libs/glib-2.22:2[static-libs(+)?]
+       >=media-libs/celt-0.5.1.1:0.5.1[static-libs(+)?]
+       media-libs/opus[static-libs(+)?]
+       sys-libs/zlib[static-libs(+)?]
+       virtual/jpeg:0=[static-libs(+)?]
+       >=x11-libs/pixman-0.17.7[static-libs(+)?]
+       !libressl? ( dev-libs/openssl:0[static-libs(+)?] )
+       libressl? ( dev-libs/libressl[static-libs(+)?] )
+       sasl? ( dev-libs/cyrus-sasl[static-libs(+)?] )"
+
+DEPEND="
+       ~app-emulation/spice-protocol-0.12.11
+       virtual/pkgconfig
+       $(python_gen_any_dep '
+               >=dev-python/pyparsing-1.5.6-r2[${PYTHON_USEDEP}]
+               dev-python/six[${PYTHON_USEDEP}]
+       ')
+       smartcard? ( app-emulation/qemu[smartcard] )
+       ${RDEPEND}"
+
+python_check_deps() {
+       has_version ">=dev-python/pyparsing-1.5.6-r2[${PYTHON_USEDEP}]"
+       has_version "dev-python/six[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+       [[ ${MERGE_TYPE} != binary ]] && python-any-r1_pkg_setup
+}
+
+# maintainer notes:
+# * opengl support is currently broken
+
+src_prepare() {
+       epatch \
+               "${FILESDIR}"/0.11.0-gold.patch \
+               "${FILESDIR}"/0.12.8-upstream-fix.patch
+
+       epatch_user
+}
+
+src_configure() {
+       # Prevent sandbox violations, bug #586560
+       # https://bugzilla.gnome.org/show_bug.cgi?id=744134
+       # https://bugzilla.gnome.org/show_bug.cgi?id=744135
+       addpredict /dev
+
+       econf \
+               $(use_enable static-libs static) \
+               $(use_with sasl) \
+               $(use_enable smartcard) \
+               --disable-gui
+}
+
+src_compile() {
+       # Prevent sandbox violations, bug #586560
+       # https://bugzilla.gnome.org/show_bug.cgi?id=744134
+       # https://bugzilla.gnome.org/show_bug.cgi?id=744135
+       addpredict /dev
+
+       default
+}
+
+src_install() {
+       default
+       use static-libs || prune_libtool_files
+}

Reply via email to