commit: 92482facf642da7ba35a1966766a048825f829b9
parent ff76a02ad2df13a6f6562286404ced33610fb0e0
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date: Tue, 7 Sep 2021 01:44:49 +0200
net-libs/libsoup: Add libsoup3 (2.99.7)
Diffstat:
4 files changed, 137 insertions(+), 0 deletions(-)
diff --git a/net-libs/libsoup/Manifest b/net-libs/libsoup/Manifest
@@ -0,0 +1 @@
+DIST libsoup-2.99.7.tar.xz 1478036 BLAKE2B 00912896a797c1ce44aaf234bb09b1d39dbbb45687d4d4f308ee50bb73622c0d174f15a86fd6a0201bb40931f3d612d5bacdc7c07f43652143444a8311e5f360 SHA512 9ddeb1dc89675bdb2fb5b2a645994034433c7df1034a89802e48e9ae20fead20c26f6e72ec2e6aa13d25b46b2019b7a91feb72555cd15bcf991556ccbc12761f
diff --git a/net-libs/libsoup/files/disable-apache-tests.patch b/net-libs/libsoup/files/disable-apache-tests.patch
@@ -0,0 +1,33 @@
+From 6c9bbf0d91688e831f8f19232e18619bfc57e12e Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Fri, 23 Aug 2019 21:11:57 +0300
+Subject: [PATCH] meson: Force disable apache/php using tests for now
+
+We had them disabled in autotools with a sed. Keep them disabled for now
+in meson port as well. Should be revisited at some point.
+---
+ meson.build | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 89837c15..f0e34cb0 100644
+--- a/meson.build
++++ b/meson.build
+@@ -162,12 +162,9 @@ endif
+ #
+ # The summary is that for the configuration parsing we will use the apachectl,
+ # but for running the tests we will use the httpd binary.
+-apachectl = find_program('apachectl', '/sbin/apachectl', '/usr/sbin/apachectl', required : false)
++apachectl = disabler()
+ # This abomination is a result of https://github.com/mesonbuild/meson/issues/1576
+-apache_httpd2 = find_program('httpd2', 'httpd', 'apache2', 'apache',
+- '/sbin/httpd2', '/sbin/httpd', '/sbin/apache2', '/sbin/apache',
+- '/usr/sbin/httpd2', '/usr/sbin/httpd', '/usr/sbin/apache2', '/usr/sbin/apache',
+- required : false)
++apache_httpd2 = disabler()
+ have_apache=false
+ apache_httpd2_version = ''
+ if apache_httpd2.found() and apachectl.found()
+--
+2.20.1
+
diff --git a/net-libs/libsoup/libsoup-2.99.7.ebuild b/net-libs/libsoup/libsoup-2.99.7.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+VALA_USE_DEPEND="vapigen"
+
+inherit gnome.org meson-multilib vala xdg
+
+DESCRIPTION="HTTP client/server library for GNOME"
+HOMEPAGE="https://wiki.gnome.org/Projects/libsoup"
+
+LICENSE="LGPL-2.1+"
+SLOT="3/3.0"
+
+# TODO: Default enable brotli at some point? But in 2.70.0 not advertised to servers yet - https://gitlab.gnome.org/GNOME/libsoup/issues/146
+IUSE="brotli gssapi gtk-doc +introspection samba ssl sysprof test +vala"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="vala? ( introspection )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+DEPEND="
+ >=dev-libs/glib-2.67:2[${MULTILIB_USEDEP}]
+ >=dev-db/sqlite-3.8.2:3[${MULTILIB_USEDEP}]
+ >=dev-libs/libxml2-2.9.1-r4:2[${MULTILIB_USEDEP}]
+ brotli? ( >=app-arch/brotli-1.0.6-r1:=[${MULTILIB_USEDEP}] )
+ >=net-libs/libpsl-0.20[${MULTILIB_USEDEP}]
+ sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] )
+ sys-libs/zlib
+ gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ introspection? ( >=dev-libs/gobject-introspection-1.54:= )
+ samba? ( net-fs/samba )
+"
+RDEPEND="${DEPEND}
+ >=net-libs/glib-networking-2.38.2[ssl?,${MULTILIB_USEDEP}]
+"
+BDEPEND="
+ dev-libs/glib
+ dev-util/glib-utils
+ gtk-doc? ( >=dev-util/gtk-doc-1.20
+ app-text/docbook-xml-dtd:4.1.2 )
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+ vala? ( $(vala_depend) )
+"
+# 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])"
+
+PATCHES=(
+ # Disable apache tests until they are usable on Gentoo, bug #326957
+ "${FILESDIR}"/disable-apache-tests.patch
+)
+
+src_prepare() {
+ use vala && vala_src_prepare
+ xdg_src_prepare
+ # https://gitlab.gnome.org/GNOME/libsoup/issues/159 - could work with libnss-myhostname
+ sed -e '/hsts/d' -i tests/meson.build || die
+}
+
+src_configure() {
+ # FIXME: we need addpredict to workaround bug #324779 until
+ # root cause (bug #249496) is solved
+ # But necessary while apache tests are disabled
+ #addpredict /usr/share/snmp/mibs/.index
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_feature gssapi)
+ -Dkrb5_config="${CHOST}-krb5-config"
+ $(meson_feature samba ntlm)
+ $(meson_feature brotli)
+ -Dntlm_auth="${EPREFIX}/usr/bin/ntlm_auth"
+ -Dtls_check=false # disables check, we still rdep on glib-networking
+ -Dgnome=false
+ $(meson_native_use_feature introspection)
+ $(meson_native_use_feature vala vapi)
+ $(meson_native_use_bool gtk-doc gtk_doc)
+ $(meson_use test tests)
+ -Dinstalled_tests=false
+ $(meson_feature sysprof)
+ )
+ meson_src_configure
+}
diff --git a/net-libs/libsoup/metadata.xml b/net-libs/libsoup/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>contact@hacktivis.me</email>
+ <name>Haelwenn (lanodan) Monnier</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>
+</pkgmetadata>