glfs/general/genlib/wayland.xml
Bruce Dubbs b9874725d3 Many tags.
Mostly Programming and Xorg sections and dependencies.
2024-02-15 19:26:48 -06:00

233 lines
6.9 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!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 wayland-download-http "https://gitlab.freedesktop.org/wayland/wayland/-/releases/&wayland-version;/downloads/wayland-&wayland-version;.tar.xz">
<!ENTITY wayland-download-ftp " ">
<!ENTITY wayland-md5sum "7410ab549e3928fce9381455b17b0803">
<!ENTITY wayland-size "228 KB">
<!ENTITY wayland-buildsize "7.4 MB (with tests)">
<!ENTITY wayland-time "0.1 SBU (with tests)">
]>
<sect1 id="wayland" xreflabel="Wayland-&wayland-version;">
<?dbhtml filename="wayland.html"?>
<title>Wayland-&wayland-version;</title>
<indexterm zone="wayland">
<primary sortas="a-Wayland">Wayland</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Wayland</title>
<para>
<application>Wayland</application> is a project to define a protocol
for a compositor to talk to its clients as well as a library
implementation of the protocol.
</para>
&lfs121_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&wayland-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&wayland-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &wayland-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &wayland-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &wayland-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &wayland-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Wayland Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="libxml2"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="doxygen"/>,
<xref linkend="graphviz"/> and
<xref linkend="xmlto"/> (to build the API documentation) and
<xref linkend="DocBook"/>,
<xref linkend="docbook-xsl"/> and
<xref linkend="libxslt"/> (to build the manual pages)
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Wayland</title>
<para>
Install <application>Wayland</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson setup .. \
--prefix=/usr \
--buildtype=release \
-Ddocumentation=false &amp;&amp;
ninja</userinput></screen>
<para>
<!-- If XDG_RUNTIME_DIR is set but the value is a non-exist path,
19 tests will fail. Unfortunately BLFS /etc/profile sets
XDG_RUNTIME_DIR but does not create it. For now simply unset
the variable. -->
To test the results, issue:
<command>env -u XDG_RUNTIME_DIR 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>
<para>
<parameter>-Ddocumentation=false</parameter>: This switch is used to
disable building of the API documentation. Remove it if you have
installed optional dependencies.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
wayland-scanner
</seg>
<seg>
libwayland-client.so,
libwayland-cursor.so,
libwayland-egl.so,
and libwayland-server.so
</seg>
<seg>
/usr/share/wayland
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="wayland-scanner">
<term><command>wayland-scanner</command></term>
<listitem>
<para>
is a tool to generate proxy methods in wayland-client-protocol.h
and wayland-server-protocol.h
</para>
<indexterm zone="wayland wayland-scanner">
<primary sortas="b-wayland-scanner">wayland-scanner</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwayland-client">
<term><filename class="libraryfile">libwayland-client.so</filename></term>
<listitem>
<para>
contains API functions for writing <application>Wayland</application>
applications
</para>
<indexterm zone="wayland libwayland-client">
<primary sortas="c-libwayland-client">libwayland-client.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwayland-cursor">
<term><filename class="libraryfile">libwayland-cursor.so</filename></term>
<listitem>
<para>
contains API functions for managing cursors in <application>Wayland</application>
applications
</para>
<indexterm zone="wayland libwayland-cursor">
<primary sortas="c-libwayland-cursor">libwayland-cursor.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwayland-egl">
<term><filename class="libraryfile">libwayland-egl.so</filename></term>
<listitem>
<para>
contains API functions for handling OpenGL calls in
<application>Wayland</application> applications
</para>
<indexterm zone="wayland libwayland-egl">
<primary sortas="c-libwayland-egl">libwayland-egl.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libwayland-server">
<term><filename class="libraryfile">libwayland-server.so</filename></term>
<listitem>
<para>
contains API functions for writing <application>Wayland</application>
compositors
</para>
<indexterm zone="wayland libwayland-server">
<primary sortas="c-libwayland-server">libwayland-server.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>