commit:     3ed0516c7dc1c1162f1924e00965d4f3f931f021
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 11 20:16:00 2016 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Jun 11 20:22:40 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ed0516c

gnome-base/gnome-vfs: Fix gnutls-3.4+ compatibility, #560084

 .../files/gnome-vfs-2.24.4-gnutls34.patch          |  38 ++++++
 gnome-base/gnome-vfs/gnome-vfs-2.24.4-r5.ebuild    | 151 +++++++++++++++++++++
 2 files changed, 189 insertions(+)

diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls34.patch 
b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls34.patch
new file mode 100644
index 0000000..78942f0
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls34.patch
@@ -0,0 +1,38 @@
+diff -uprw gnome-vfs-2.24.4.orig/libgnomevfs/gnome-vfs-ssl.c 
gnome-vfs-2.24.4/libgnomevfs/gnome-vfs-ssl.c
+--- gnome-vfs-2.24.4.orig/libgnomevfs/gnome-vfs-ssl.c  2010-02-09 
14:16:14.000000000 +0200
++++ gnome-vfs-2.24.4/libgnomevfs/gnome-vfs-ssl.c       2015-04-14 
00:01:51.272451668 +0300
+@@ -314,21 +314,6 @@ gnome_vfs_ssl_create (GnomeVFSSSL **hand
+ #endif
+ }
+ 
+-#ifdef HAVE_GNUTLS
+-static const int protocol_priority[] = {GNUTLS_TLS1, GNUTLS_SSL3, 0};
+-static const int cipher_priority[] = 
+-      {GNUTLS_CIPHER_RIJNDAEL_128_CBC, GNUTLS_CIPHER_3DES_CBC,
+-       GNUTLS_CIPHER_RIJNDAEL_256_CBC, GNUTLS_CIPHER_ARCFOUR, 0};
+-static const int comp_priority[] =
+-      {GNUTLS_COMP_ZLIB, GNUTLS_COMP_NULL, 0};
+-static const int kx_priority[] =
+-      {GNUTLS_KX_DHE_RSA, GNUTLS_KX_RSA, GNUTLS_KX_DHE_DSS, 0};
+-static const int mac_priority[] =
+-      {GNUTLS_MAC_SHA, GNUTLS_MAC_MD5, 0};
+-
+-#endif
+-
+-
+ /**
+  * gnome_vfs_ssl_create_from_fd:
+  * @handle_return: pointer to a #GnomeVFSSSL struct, which will
+@@ -437,11 +422,7 @@ gnome_vfs_ssl_create_from_fd (GnomeVFSSS
+       gnutls_transport_set_ptr (ssl->private->tlsstate, 
+                                 GINT_TO_POINTER (fd));
+ 
+-      gnutls_protocol_set_priority (ssl->private->tlsstate, 
protocol_priority);
+-      gnutls_cipher_set_priority (ssl->private->tlsstate, cipher_priority);
+-      gnutls_compression_set_priority (ssl->private->tlsstate, comp_priority);
+-      gnutls_kx_set_priority (ssl->private->tlsstate, kx_priority);
+-      gnutls_mac_set_priority (ssl->private->tlsstate, mac_priority);
++      gnutls_set_default_priority (ssl->private->tlsstate);
+ 
+       gnutls_cred_set (ssl->private->tlsstate, GNUTLS_CRD_CERTIFICATE,
+                        ssl->private->xcred);

diff --git a/gnome-base/gnome-vfs/gnome-vfs-2.24.4-r5.ebuild 
b/gnome-base/gnome-vfs/gnome-vfs-2.24.4-r5.ebuild
new file mode 100644
index 0000000..177eff7
--- /dev/null
+++ b/gnome-base/gnome-vfs/gnome-vfs-2.24.4-r5.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+GCONF_DEBUG="no"
+GNOME_TARBALL_SUFFIX="bz2"
+GNOME2_LA_PUNT="yes"
+
+inherit autotools eutils gnome2 multilib-minimal virtualx
+
+DESCRIPTION="Gnome Virtual Filesystem"
+HOMEPAGE="https://www.gnome.org/";
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 
~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos 
~sparc-solaris ~x86-solaris"
+IUSE="acl gnutls ipv6 kerberos libressl samba ssl zeroconf"
+
+RDEPEND="
+       >=gnome-base/gconf-2.32.4-r1[${MULTILIB_USEDEP}]
+       >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}]
+       >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}]
+       >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}]
+       gnome-base/gnome-mime-data
+       >=x11-misc/shared-mime-info-0.14
+       >=dev-libs/dbus-glib-0.100.2[${MULTILIB_USEDEP}]
+       acl? (
+               >=sys-apps/acl-2.2.52-r1[${MULTILIB_USEDEP}]
+               >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] )
+       kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+       samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
+       ssl? (
+               gnutls? (
+                       >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+                       !gnome-extra/gnome-vfs-sftp )
+               !gnutls? (
+                       !libressl? ( 
>=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
+                       libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] )
+                       !gnome-extra/gnome-vfs-sftp ) )
+       zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+       abi_x86_32? (
+               !<=app-emulation/emul-linux-x86-gtklibs-20140508-r1
+               !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+       )
+"
+DEPEND="${RDEPEND}
+       sys-devel/gettext
+       gnome-base/gnome-common
+       >=dev-util/intltool-0.40
+       >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+       >=dev-util/gtk-doc-am-1.13
+"
+
+src_prepare() {
+       # Allow the Trash on afs filesystems (#106118)
+       epatch "${FILESDIR}"/${PN}-2.12.0-afs.patch
+
+       # Fix compiling with headers missing
+       epatch "${FILESDIR}"/${PN}-2.15.2-headers-define.patch
+
+       # Fix for crashes running programs via sudo
+       epatch "${FILESDIR}"/${PN}-2.16.0-no-dbus-crash.patch
+
+       # Fix automagic dependencies, upstream bug #493475
+       epatch "${FILESDIR}"/${PN}-2.20.0-automagic-deps.patch
+       epatch "${FILESDIR}"/${PN}-2.20.1-automagic-deps.patch
+
+       # Fix to identify ${HOME} (#200897)
+       # thanks to debian folks
+       epatch "${FILESDIR}"/${PN}-2.24.4-home_dir_fakeroot.patch
+
+       # Configure with gnutls-2.7, bug #253729
+       # Fix building with gnutls-2.12, bug #388895
+       epatch "${FILESDIR}"/${PN}-2.24.4-gnutls27.patch
+
+       # Prevent duplicated volumes, bug #193083
+       epatch "${FILESDIR}"/${PN}-2.24.0-uuid-mount.patch
+
+       # Do not build tests with FEATURES="-test", bug #226221
+       epatch "${FILESDIR}"/${PN}-2.24.4-build-tests-asneeded.patch
+
+       # Disable broken test, bug #285706
+       epatch "${FILESDIR}"/${PN}-2.24.4-disable-test-async-cancel.patch
+
+       # Fix for automake-1.13 compatibility, #466944
+       epatch "${FILESDIR}"/${P}-automake-1.13.patch
+
+       # Fix gnutls-3.4+ compatibility, #560084
+       # always use system defaults (patch from Arch Linux)
+       epatch "${FILESDIR}"/${P}-gnutls34.patch
+
+       sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.in || die
+
+       eautoreconf
+       gnome2_src_prepare
+}
+
+multilib_src_configure() {
+       local myconf=(
+               --disable-schemas-install
+               --disable-static
+               --disable-cdda
+               --disable-fam
+               --disable-hal
+               --disable-howl
+               $(use_enable acl)
+               $(use_enable gnutls)
+               $(use_enable ipv6)
+               $(use_enable kerberos krb5)
+               $(use_enable samba)
+               $(use_enable ssl openssl)
+               $(use_enable zeroconf avahi)
+               # Useless ? --enable-http-neon
+
+               # fix path to krb5-config
+               KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
+       )
+
+       # this works because of the order of configure parsing
+       # so should always be behind the use_enable options
+       # foser <[email protected] 19 Apr 2004
+       use gnutls && use ssl && myconf+=( --disable-openssl )
+
+       #bug #519060
+       #configure script is so messed up on res_init on Darwin
+       [[ ${CHOST} == *-darwin* ]] && export LIBS="${LIBS} -lresolv"
+
+       ECONF_SOURCE=${S} \
+       gnome2_src_configure "${myconf[@]}"
+
+       if multilib_is_native_abi; then
+               ln -s "${S}"/doc/html doc/html || die
+       fi
+}
+
+multilib_src_test() {
+       unset DISPLAY
+       # Fix bug #285706
+       unset XAUTHORITY
+       Xemake check
+}
+
+multilib_src_install() {
+       gnome2_src_install
+}
+
+multilib_src_install_all() {
+       DOCS="AUTHORS ChangeLog HACKING NEWS README TODO"
+       einstalldocs
+}

Reply via email to