commit:     9e916ea1671f9a4476c38eabb5e219e3b596e06e
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 10 20:50:35 2018 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Mon Sep 10 21:07:59 2018 +0000
URL:        https://gitweb.gentoo.org/proj/gnome.git/commit/?id=9e916ea1

net-libs/libsoup: 2.58.2 → 2.60.3

Package-Manager: Portage-2.3.49, Repoman-2.3.10
Manifest-Sign-Key: 0x5A56C8CD0C13248A

 .../files/libsoup-2.58.2-sparc-unaligned.patch     | 28 ++++++++++
 .../{libsoup-9999.ebuild => libsoup-2.60.3.ebuild} | 63 ++++++++++------------
 net-libs/libsoup/libsoup-9999.ebuild               | 33 ++++++++----
 net-libs/libsoup/metadata.xml                      |  1 +
 4 files changed, 79 insertions(+), 46 deletions(-)

diff --git a/net-libs/libsoup/files/libsoup-2.58.2-sparc-unaligned.patch 
b/net-libs/libsoup/files/libsoup-2.58.2-sparc-unaligned.patch
new file mode 100644
index 00000000..d09d52c2
--- /dev/null
+++ b/net-libs/libsoup/files/libsoup-2.58.2-sparc-unaligned.patch
@@ -0,0 +1,28 @@
+From c2aaac0083f58d285b8feb24f13fe347d7f726fe Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <[email protected]>
+Date: Sat, 17 Mar 2018 10:28:00 +0000
+Subject: [PATCH] WebSockets: Avoid unaligned memory access
+
+This is causing test failures in SPARC architectures.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=794421
+---
+ libsoup/soup-websocket-connection.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/libsoup/soup-websocket-connection.c 
b/libsoup/soup-websocket-connection.c
+index 0258a22c..35eee6a6 100644
+--- a/libsoup/soup-websocket-connection.c
++++ b/libsoup/soup-websocket-connection.c
+@@ -401,9 +401,10 @@ send_message (SoupWebsocketConnection *self,
+        * probably a client somewhere that's not expecting it.
+        */
+       if (self->pv->connection_type == SOUP_WEBSOCKET_CONNECTION_CLIENT) {
++              guint32 rnd = g_random_int ();
+               outer[1] |= 0x80;
+               mask = outer + bytes->len;
+-              * ((guint32 *)mask) = g_random_int ();
++              memcpy (mask, &rnd, sizeof (rnd));
+               bytes->len += 4;
+       }
+ 

diff --git a/net-libs/libsoup/libsoup-9999.ebuild 
b/net-libs/libsoup/libsoup-2.60.3.ebuild
similarity index 64%
copy from net-libs/libsoup/libsoup-9999.ebuild
copy to net-libs/libsoup/libsoup-2.60.3.ebuild
index 36ee31ff..3b86d848 100644
--- a/net-libs/libsoup/libsoup-9999.ebuild
+++ b/net-libs/libsoup/libsoup-2.60.3.ebuild
@@ -1,76 +1,66 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
-EAPI="5"
-GCONF_DEBUG="yes"
+EAPI=6
 GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+PYTHON_COMPAT=( python{2_7,3_3,3_4,3_5,3_6} )
+VALA_USE_DEPEND="vapigen"
 
-inherit gnome2 multilib-minimal python-any-r1
-if [[ ${PV} = 9999 ]]; then
-       inherit gnome2-live
-fi
+inherit gnome2 multilib-minimal python-any-r1 vala
 
 DESCRIPTION="An HTTP library implementation in C"
-HOMEPAGE="https://wiki.gnome.org/LibSoup";
+HOMEPAGE="https://wiki.gnome.org/Projects/libsoup";
 
 LICENSE="LGPL-2+"
 SLOT="2.4"
-IUSE="debug +introspection samba ssl test"
-if [[ ${PV} = 9999 ]]; then
-       KEYWORDS=""
-       IUSE="${IUSE} doc"
-else
-       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh 
~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux 
~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-fi
+
+IUSE="debug gssapi +introspection samba ssl test vala"
+REQUIRED_USE="vala? ( introspection )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc 
~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~x86-macos ~sparc-solaris ~x86-solaris"
 
 RDEPEND="
        >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
        >=dev-libs/libxml2-2.9.1-r4:2[${MULTILIB_USEDEP}]
        >=dev-db/sqlite-3.8.2:3[${MULTILIB_USEDEP}]
        >=net-libs/glib-networking-2.38.2[ssl?,${MULTILIB_USEDEP}]
-       introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+       gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+       introspection? ( >=dev-libs/gobject-introspection-0.9.5:= )
        samba? ( net-fs/samba )
 "
 DEPEND="${RDEPEND}
        ${PYTHON_DEPS}
        >=dev-util/intltool-0.35
-       >=dev-util/gtk-doc-am-1.10
+       >=dev-util/gtk-doc-am-1.20
        sys-devel/gettext
        >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
        test? ( >=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}] )
+       vala? ( $(vala_depend) )
 "
-
-if [[ ${PV} = 9999 ]]; then
-       DEPEND="${DEPEND}
-               doc? ( >=dev-util/gtk-doc-1.10 )"
-fi
 #      test? ( 
www-servers/apache[ssl,apache2_modules_auth_digest,apache2_modules_alias,apache2_modules_auth_basic,
 #              
apache2_modules_authn_file,apache2_modules_authz_host,apache2_modules_authz_user,apache2_modules_dir,
 #              
apache2_modules_mime,apache2_modules_proxy,apache2_modules_proxy_http,apache2_modules_proxy_connect]
 #              dev-lang/php[apache2,xmlrpc]
 #              net-misc/curl
 #              net-libs/glib-networking[ssl])"
-RDEPEND="${RDEPEND}
-       abi_x86_32? (
-               !<=app-emulation/emul-linux-x86-baselibs-20140508-r8
-               !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-       )
-"
 
-src_prepare() {
-       if [[ ${PV} = 9999 ]]; then
-               # prevent SOUP_MAINTAINER_FLAGS from getting set
-               mv .git .git-bck || die
-       fi
+PATCHES=(
+       # https://bugs.gentoo.org/630516
+       "${FILESDIR}/${PN}-2.58.2-sparc-unaligned.patch"
+)
 
+src_prepare() {
        if ! use test; then
                # don't waste time building tests (bug #226271)
                sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' -i Makefile.am 
Makefile.in \
                        || die "sed failed"
        fi
 
+       # FIXME: workaround upstream not respecting --without-apache-httpd
+       sed -e '/check: start-httpd/d' \
+               -i tests/Makefile.am tests/Makefile.in || die
+
+       use vala && vala_src_prepare
        gnome2_src_prepare
 }
 
@@ -90,7 +80,10 @@ multilib_src_configure() {
                --disable-tls-check \
                --without-gnome \
                --without-apache-httpd \
+               $(usex debug --enable-debug=yes ' ') \
+               $(multilib_native_use_with gssapi) \
                $(multilib_native_use_enable introspection) \
+               $(multilib_native_use_enable vala) \
                $(use_with samba ntlm-auth '${EPREFIX}'/usr/bin/ntlm_auth)
 
        if multilib_is_native_abi; then

diff --git a/net-libs/libsoup/libsoup-9999.ebuild 
b/net-libs/libsoup/libsoup-9999.ebuild
index 36ee31ff..a36a0109 100644
--- a/net-libs/libsoup/libsoup-9999.ebuild
+++ b/net-libs/libsoup/libsoup-9999.ebuild
@@ -1,28 +1,29 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
-EAPI="5"
-GCONF_DEBUG="yes"
+EAPI=6
 GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+PYTHON_COMPAT=( python{2_7,3_3,3_4,3_5,3_6} )
+VALA_USE_DEPEND="vapigen"
 
-inherit gnome2 multilib-minimal python-any-r1
+inherit gnome2 multilib-minimal python-any-r1 vala
 if [[ ${PV} = 9999 ]]; then
        inherit gnome2-live
 fi
 
 DESCRIPTION="An HTTP library implementation in C"
-HOMEPAGE="https://wiki.gnome.org/LibSoup";
+HOMEPAGE="https://wiki.gnome.org/Projects/libsoup";
 
 LICENSE="LGPL-2+"
 SLOT="2.4"
-IUSE="debug +introspection samba ssl test"
+IUSE="debug gssapi +introspection samba ssl test vala"
+REQUIRED_USE="vala? ( introspection )"
+
 if [[ ${PV} = 9999 ]]; then
        KEYWORDS=""
        IUSE="${IUSE} doc"
 else
-       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh 
~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux 
~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh 
~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~x86-macos ~sparc-solaris ~x86-solaris"
 fi
 
 RDEPEND="
@@ -30,16 +31,18 @@ RDEPEND="
        >=dev-libs/libxml2-2.9.1-r4:2[${MULTILIB_USEDEP}]
        >=dev-db/sqlite-3.8.2:3[${MULTILIB_USEDEP}]
        >=net-libs/glib-networking-2.38.2[ssl?,${MULTILIB_USEDEP}]
-       introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+       gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+       introspection? ( >=dev-libs/gobject-introspection-0.9.5:= )
        samba? ( net-fs/samba )
 "
 DEPEND="${RDEPEND}
        ${PYTHON_DEPS}
        >=dev-util/intltool-0.35
-       >=dev-util/gtk-doc-am-1.10
+       >=dev-util/gtk-doc-am-1.20
        sys-devel/gettext
        >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
        test? ( >=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}] )
+       vala? ( $(vala_depend) )
 "
 
 if [[ ${PV} = 9999 ]]; then
@@ -71,6 +74,11 @@ src_prepare() {
                        || die "sed failed"
        fi
 
+       # FIXME: workaround upstream not respecting --without-apache-httpd
+       sed -e '/check: start-httpd/d' \
+               -i tests/Makefile.am tests/Makefile.in || die
+
+       vala_src_prepare
        gnome2_src_prepare
 }
 
@@ -90,7 +98,10 @@ multilib_src_configure() {
                --disable-tls-check \
                --without-gnome \
                --without-apache-httpd \
+               $(usex debug --enable-debug=yes ' ') \
+               $(multilib_native_use_with gssapi) \
                $(multilib_native_use_enable introspection) \
+               $(multilib_native_use_enable vala) \
                $(use_with samba ntlm-auth '${EPREFIX}'/usr/bin/ntlm_auth)
 
        if multilib_is_native_abi; then

diff --git a/net-libs/libsoup/metadata.xml b/net-libs/libsoup/metadata.xml
index a4047eef..b01383c3 100644
--- a/net-libs/libsoup/metadata.xml
+++ b/net-libs/libsoup/metadata.xml
@@ -6,6 +6,7 @@
                <name>Gentoo GNOME Desktop</name>
        </maintainer>
        <use>
+               <flag name="gssapi">Enable GSSAPI support</flag>
                <flag name="samba">Use <pkg>net-fs/samba</pkg> for NTLM Single
                        Sign-On</flag>
        </use>

Reply via email to