logo

overlay

My own overlay for experimentations, use with caution, no support is provided git clone https://hacktivis.me/git/overlay.git
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:

Anet-libs/libsoup/Manifest1+
Anet-libs/libsoup/files/disable-apache-tests.patch33+++++++++++++++++++++++++++++++++
Anet-libs/libsoup/libsoup-2.99.7.ebuild91+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Anet-libs/libsoup/metadata.xml12++++++++++++
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>