glfs/x/lib/pango.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

291 lines
9.0 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 "&gnome-download-ftp;/pango/&pango-minor;/pango-&pango-version;.tar.xz">
<!ENTITY pango-md5sum "fd4b0b23915d6a0255317f811bea4215">
<!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>
&lfs112_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"/>,
<ulink url="&gi-docgen-url;">gi-docgen</ulink>
(to generate documentation),
<ulink url="https://ftpmirror.gnu.org/gnu/help2man">help2man</ulink>, and
<ulink url="https://linux.thai.net/projects/libthai">libthai</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/pango"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Pango</title>
<para>
Install <application>Pango</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson --prefix=/usr --buildtype=release --wrap-mode=nofallback .. &amp;&amp;
ninja</userinput></screen>
<para>
To test the results, issue: <command>ninja test</command>. Two tests,
<filename>test-font</filename> and
<filename>test-layout</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"/>
<!-- gtk-doc replaced by gi-docgen
<para>
<option>-Dgtk_doc</option>: Use this switch if gtk-doc is
installed and you wish to rebuild and install the API documentation.
</para>-->
<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/gtk-doc/html/pango
this last one does not seem to be installed now (since pango-1.48.2 at least)
-->
</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>