glfs/networking/netlibs/libsoup3.xml
Douglas R. Reno c5408a2d70 Add an entity for the gi-docgen URL and change several packages to use
it.

This should make the different URLs we had previously consistent with
one another, and ease maintenance burden.

This is only temporary though since eventually gi-docgen will become
part of the book, when Pierre's python-modules branch is brought into
trunk.
2022-12-16 13:18:44 -06:00

220 lines
6.6 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY libsoup3-download-http
"&gnome-download-http;/libsoup/&libsoup3-minor;/libsoup-&libsoup3-version;.tar.xz">
<!ENTITY libsoup3-download-ftp
"&gnome-download-ftp;/libsoup/&libsoup3-minor;/libsoup-&libsoup3-version;.tar.xz">
<!ENTITY libsoup3-md5sum "33902089d52f862d6b39680dd4c4e3aa">
<!ENTITY libsoup3-size "1.5 MB">
<!ENTITY libsoup3-buildsize "24 MB (with tests)">
<!ENTITY libsoup3-time "0.3 SBU (Using parallelism=4; with tests)">
]>
<sect1 id="libsoup3" xreflabel="libsoup-&libsoup3-version;">
<?dbhtml filename="libsoup3.html"?>
<title>libsoup-&libsoup3-version;</title>
<indexterm zone="libsoup3">
<primary sortas="a-libsoup3">libsoup3</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to libsoup3</title>
<para>
The <application>libsoup3</application> is a HTTP client/server library for
<application>GNOME</application>. It uses GObject and the GLib main loop
to integrate with <application>GNOME</application> applications and
it also has an asynchronous API for use in threaded applications.
</para>
&lfs112_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&libsoup3-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&libsoup3-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &libsoup3-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &libsoup3-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &libsoup3-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &libsoup3-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">libsoup3 Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="glib-networking"/>,
<xref linkend="libpsl"/>,
<xref linkend="libxml2"/>,
<xref linkend="nghttp2"/>, and
<xref linkend="sqlite"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gobject-introspection"/> and
<xref linkend="vala"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="apache"/> (required to run the test suite),
<xref linkend="brotli"/>,
<xref linkend="curl"/> (required to run the test suite),
<xref linkend="sysprof"/> (for profiling),
<xref linkend="mitkrb"/> (required to run the test suite),
<!--<xref linkend="gtk-doc"/>,-->
<!-- It seems that XMLRPC is part of PHP 5.4.10 -->
<xref linkend="php"/> compiled with XMLRPC-EPI
support (only used for the XMLRPC regression tests),
<xref linkend="samba"/> (ntlm_auth is required to run the test suite), and
<ulink url="&gi-docgen-url;">gi-docgen</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/libsoup3"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of libsoup3</title>
<para>
Install <application>libsoup3</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson --prefix=/usr \
--buildtype=release \
-Dvapi=enabled \
-Dgssapi=disabled \
-Dsysprof=disabled \
--wrap-mode=nofallback \
.. &amp;&amp;
ninja</userinput></screen>
<para>
To test the results, issue: <command>ninja test</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/meson-buildtype-release.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/meson-wrap-nofallback.xml"/>
<para>
<option>-Dvapi=disabled</option>: Use this if you have not installed
<application>Vala</application>, e.g. because you are not building
<application>GNOME</application>.
</para>
<para>
<option>-Ddocs=enabled</option>: Use this option if you want to build
the documentation. Note that you must have
<ulink url="&gi-docgen-url;">gi-docgen</ulink> installed.
</para>
<para>
<parameter>-Dgssapi=disabled</parameter>: libsoup3 defaults to building with GSSAPI support,
which requires Kerberos (as does the test suite).
</para>
<para>
<parameter>-Dsysprof=disabled</parameter>: libsoup3 will automatically download
a git version of <xref linkend="sysprof"/> if git is available or use the installed
version if available. If you need profiling, remove this option.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
None
</seg>
<seg>
libsoup-3.0.so
</seg>
<seg>
/usr/include/libsoup-3.0,
/usr/share/gtk-doc/html/libsoup-3.0 (only installed if -Ddocs=enabled is passed)
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libsoup-3">
<term><filename class="libraryfile">libsoup-3.0.so</filename></term>
<listitem>
<para>
provides functions for asynchronous HTTP connections
</para>
<indexterm zone="libsoup libsoup-3">
<primary sortas="c-libsoup-3">libsoup-3.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>