glfs/x/lib/pango.xml
Pierre Labastie e1e58be454 Remove all ftp urls
neither firefox nor epiphany can download them, and they are not
well maintained, because rarely tested.
This is WIP because the "(HTTP)" part of "Download (HTTP)" will
need to be removed too.
But let's see what users think first...
2023-10-15 21:43:08 +02:00

300 lines
9.4 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 pango-download-http "&gnome-download-http;/pango/&pango-minor;/pango-&pango-version;.tar.xz">
<!ENTITY pango-download-ftp " ">
<!ENTITY pango-md5sum "baa2a0a67c71935165a205a76da25954">
<!ENTITY pango-size "4.1 MB">
<!ENTITY pango-buildsize "47 MB (with tests)">
<!ENTITY pango-time "0.1 SBU (Using parallelism=4; with tests)">
]>
<sect1 id="pango" xreflabel="Pango-&pango-version;">
<?dbhtml filename="pango.html" ?>
<title>Pango-&pango-version;</title>
<indexterm zone="pango">
<primary sortas="a-Pango">Pango</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Pango</title>
<para>
<application>Pango</application> is a library for laying out and rendering
text, with an emphasis on internationalization. It can be used anywhere
that text layout is needed, though most of the work on
<application>Pango</application> so far has been done in the context of
the <application>GTK+</application> widget toolkit.
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&pango-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&pango-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &pango-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &pango-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &pango-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &pango-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Pango Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="fontconfig"/> (must be built with
<xref linkend="freetype2"/> using <xref linkend="harfbuzz"/>),
<xref linkend="fribidi"/>, and
<xref linkend="glib2"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="cairo"/>,
<xref linkend="gobject-introspection"/> (Required if building GNOME), and
<xref linkend="xorg7-lib"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="cantarell-fonts"/> (for tests),
<!--<xref linkend="gtk-doc"/>,-->
<!--<xref linkend="sysprof"/>,-->
<xref linkend="gi-docgen"/> (to generate documentation),
<ulink url="https://ftpmirror.gnu.org/gnu/help2man">help2man</ulink>,
<ulink url="https://linux.thai.net/projects/libthai">libthai</ulink>, and
<ulink url="&sysprof-url;">sysprof</ulink>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Pango</title>
<para>
First work around a bug in gcc-13 which triggers a false warning
that breaks a release build:
</para>
<screen><userinput>sed -i '/array-bounds/d' meson.build</userinput></screen>
<para>
Install <application>Pango</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nofallback \
.. &amp;&amp;
ninja</userinput></screen>
<para>
If you have <xref linkend='gi-docgen'/> installed and wish to build
the API documentation for this package, issue:
</para>
<screen remap='doc'><userinput>sed "/docs_dir =/s@\$@ / 'pango-&pango-version;'@" -i ../docs/meson.build &amp;&amp;
meson configure -Dgtk_doc=true &amp;&amp;
ninja</userinput></screen>
<para>
To test the results, issue: <command>ninja test</command>. One test,
<filename>test-font</filename> is known to fail. Some tests may
fail if no Opentype or Truetype fonts are installed in
<filename class='directory'>/usr/share/fonts</filename>.
<!--<filename>test-itemize</filename>, are are known to fail. if
<xref linkend="cantarell-fonts"/> are not installed.-->
<!-- the other problematic tests get skipped now -->
<!-- Even with cantarell-fonts, pango-1.50.9 test-font fails again. -->
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
<!--
This requires the external help2man program to generate pango-view.1. The version
from lsb_release is insufficient. I'm not sure if the command below is needed
or not if the newer help2man is present. - Bruce
install -vm 644 ../utils/pango-view.1.in /usr/share/man/man1/pango-view.1</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"/>
<para>
<option>-Dintrospection=disabled</option>: Use this switch if you do not
want to use <xref linkend="gobject-introspection"/>.
</para>
<!-- gi-docgen can get installed without this, if deps exist -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/meson-wrap-nofallback.xml"/>
</sect2>
<sect2 role="configuration">
<title>Configuring Pango</title>
<sect3 id="pango-config">
<title>Config Files</title>
<para>
<filename>/etc/pango/pangorc</filename>, <filename>~/.pangorc</filename>
and the file specified in the environment variable
<envar>PANGO_RC_FILE</envar>
</para>
<indexterm zone="pango pango-config">
<primary sortas="e-etc-pango-pangorc">/etc/pango/pangorc</primary>
</indexterm>
<indexterm zone="pango pango-config">
<primary sortas="e-AA.pangorc">~/.pangorc</primary>
</indexterm>
</sect3>
<!--
<sect3>
<title>Configuration Information</title>
<para>
The <application>Pango</application> module path is specified by the key
<userinput><parameter>Pango/ModulesPath</parameter></userinput> in the
<application>Pango</application> config database, which is read from the
config files listed above.
</para>
</sect3>-->
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
pango-list, pango-segmentation, and pango-view
</seg>
<seg>
libpango-1.0.so, libpangocairo-1.0.so, libpangoft2-1.0.so,
and libpangoxft-1.0.so
</seg>
<seg>
/usr/include/pango-1.0 and
/usr/share/doc/pango-&pango-version; (if gi-docgen is available)
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="pango-list">
<term><command>pango-list</command></term>
<listitem>
<para>
displays a list of fonts that <application>Pango</application>
can use that are currently installed on the system
</para>
<indexterm zone="pango pango-list">
<primary sortas="b-pango-list">pango-list</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="pango-segmentation">
<term><command>pango-segmentation</command></term>
<listitem>
<para>
shows text segmentation as determined by Pango.
</para>
<indexterm zone="pango pango-segmentation">
<primary sortas="b-pango-segmentation">pango-segmentation</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="pango-view">
<term><command>pango-view</command></term>
<listitem>
<para>
renders a given text file through <application>Pango</application>
for viewing purposes
</para>
<indexterm zone="pango pango-view">
<primary sortas="b-pango-view">pango-view</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libpango-1">
<term><filename class="libraryfile">libpango-1.0.so</filename></term>
<listitem>
<para>
contains low level layout rendering routines, a high level driver for
laying out entire blocks of text, and routines to assist in editing
internationalized text
</para>
<indexterm zone="pango libpango-1">
<primary sortas="c-libpango-1">libpango-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>