gnome-base/gnome-vfs: Fixed build with openssl-1.1
authorLars Wendler <polynomial-c@gentoo.org>
Wed, 24 Oct 2018 13:07:38 +0000 (15:07 +0200)
committerLars Wendler <polynomial-c@gentoo.org>
Wed, 24 Oct 2018 13:08:25 +0000 (15:08 +0200)
Closes: https://bugs.gentoo.org/592540
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11

gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-openssl-1.1.patch [new file with mode: 0644]
gnome-base/gnome-vfs/gnome-vfs-2.24.4-r5.ebuild

diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-openssl-1.1.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-openssl-1.1.patch
new file mode 100644 (file)
index 0000000..14207f2
--- /dev/null
@@ -0,0 +1,26 @@
+$NetBSD: patch-libgnomevfs_gnome-vfs-ssl.c,v 1.1 2018/02/16 13:18:26 wiz Exp $
+
+struct SSL is opaque in openssl-1.1; and the SSL_free() man page
+says that one should not free members of it manually (in both
+the openssl-1.0 and openssl-1.1 man pages).
+
+--- libgnomevfs/gnome-vfs-ssl.c.orig   2010-02-09 12:16:14.000000000 +0000
++++ libgnomevfs/gnome-vfs-ssl.c
+@@ -400,9 +400,6 @@ gnome_vfs_ssl_create_from_fd (GnomeVFSSS
+                       }
+               }
+ 
+-                if (ssl->private->ssl->ctx)
+-                        SSL_CTX_free (ssl->private->ssl->ctx);
+-
+                 SSL_free (ssl->private->ssl);
+               g_free (ssl->private);
+               g_free (ssl);
+@@ -705,7 +702,6 @@ gnome_vfs_ssl_destroy (GnomeVFSSSL *ssl,
+               }
+       }
+       
+-      SSL_CTX_free (ssl->private->ssl->ctx);
+       SSL_free (ssl->private->ssl);
+       close (ssl->private->sockfd);
+       if (ssl->private->timeout)
index 7b788c1a09d7d1cc32a90b0b0549ea1565a44c1f..ad3dca34e334e10049536d2dac05e32ad399bec1 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -47,43 +47,50 @@ DEPEND="${RDEPEND}
        >=dev-util/gtk-doc-am-1.13
 "
 
-src_prepare() {
+PATCHES=(
        # Allow the Trash on afs filesystems (#106118)
-       epatch "${FILESDIR}"/${PN}-2.12.0-afs.patch
+       "${FILESDIR}"/${PN}-2.12.0-afs.patch
 
        # Fix compiling with headers missing
-       epatch "${FILESDIR}"/${PN}-2.15.2-headers-define.patch
+       "${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
+       "${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
+       "${FILESDIR}"/${PN}-2.20.0-automagic-deps.patch
+       "${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
+       "${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
+       "${FILESDIR}"/${PN}-2.24.4-gnutls27.patch
 
        # Prevent duplicated volumes, bug #193083
-       epatch "${FILESDIR}"/${PN}-2.24.0-uuid-mount.patch
+       "${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
+       "${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
+       "${FILESDIR}"/${PN}-2.24.4-disable-test-async-cancel.patch
 
        # Fix for automake-1.13 compatibility, #466944
-       epatch "${FILESDIR}"/${P}-automake-1.13.patch
+       "${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
+       "${FILESDIR}"/${P}-gnutls34.patch
+
+       # Fix build with openssl-1.1 #592540
+       "${FILESDIR}"/${PN}-2.24.4-openssl-1.1.patch
+)
+
+src_prepare() {
+       epatch "${PATCHES[@]}"
 
        sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.in || die