1SUMMARY = "An HTTP library implementation in C"
2DESCRIPTION = "libsoup is an HTTP client/server library for GNOME. It uses GObjects \
3and the glib main loop, to integrate well with GNOME applications."
4HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup"
5BUGTRACKER = "https://bugzilla.gnome.org/"
6SECTION = "x11/gnome/libs"
7LICENSE = "LGPL-2.0-only"
8LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
9
10DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 libpsl nghttp2"
11
12SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
13
14SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz"
15SRC_URI[sha256sum] = "291c67725f36ed90ea43efff25064b69c5a2d1981488477c05c481a3b4b0c5aa"
16
17PROVIDES = "libsoup-3.0"
18CVE_PRODUCT = "libsoup"
19
20S = "${WORKDIR}/libsoup-${PV}"
21
22inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gi-docgen
23
24GIR_MESON_ENABLE_FLAG = 'enabled'
25GIR_MESON_DISABLE_FLAG = 'disabled'
26
27PACKAGECONFIG ??= ""
28PACKAGECONFIG[brotli] = "-Dbrotli=enabled,-Dbrotli=disabled,brotli"
29PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5"
30PACKAGECONFIG[ntlm] = "-Dntlm=enabled,-Dntlm=disabled"
31PACKAGECONFIG[sysprof] = "-Dsysprof=enabled,-Dsysprof=disabled,sysprof"
32
33# Tell libsoup where the target ntlm_auth is installed
34do_write_config:append:class-target() {
35    cat >${WORKDIR}/soup.cross <<EOF
36[binaries]
37ntlm_auth = '${bindir}/ntlm_auth'
38EOF
39}
40EXTRA_OEMESON:append:class-target = " --cross-file ${WORKDIR}/soup.cross"
41
42EXTRA_OEMESON += "-Dvapi=disabled -Dtls_check=false"
43# Disable the test suites
44EXTRA_OEMESON += "-Dtests=false -Dautobahn=disabled -Dpkcs11_tests=disabled"
45
46GIDOCGEN_MESON_OPTION = 'docs'
47GIDOCGEN_MESON_ENABLE_FLAG = 'enabled'
48GIDOCGEN_MESON_DISABLE_FLAG = 'disabled'
49
50# When built without gnome support, libsoup will contain only one shared lib
51# and will therefore become subject to renaming by debian.bbclass. Prevent
52# renaming in order to keep the package name consistent regardless of whether
53# gnome support is enabled or disabled.
54DEBIAN_NOAUTONAME:${PN} = "1"
55
56# glib-networking is needed for SSL, proxies, etc.
57RRECOMMENDS:${PN} = "glib-networking"
58
59BBCLASSEXTEND = "native nativesdk"
60