glfs/archive/cogl.xml
2023-09-27 13:53:37 -05:00

266 lines
7.8 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;
<!-- Editors, update this for new releases as needed -->
<!ENTITY cogl-minor "1.22">
<!ENTITY cogl-download-http "&gnome-download-http;/cogl/&cogl-minor;/cogl-&cogl-version;.tar.xz">
<!ENTITY cogl-download-ftp "&gnome-download-ftp;/cogl/&cogl-minor;/cogl-&cogl-version;.tar.xz">
<!ENTITY cogl-md5sum "7dd8b2e24171ef7399f851cea144b569">
<!ENTITY cogl-size "1.7 MB">
<!ENTITY cogl-buildsize "69 MB (add 2 MB for tests)">
<!ENTITY cogl-time "0.3 SBU (Using parallelism=4; add 0.2 SBU for tests)">
<!-- Timing may depend on the capabilities and speed of the graphics card.
The timing for 1.22.8 was taken on an Intel-based system, with HD Graphics
530 on a Skylake i5-6600k.-->
]>
<sect1 id="cogl" xreflabel="Cogl-&cogl-version;">
<?dbhtml filename="cogl.html"?>
<title>Cogl-&cogl-version;</title>
<indexterm zone="cogl">
<primary sortas="a-Cogl">Cogl</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Cogl</title>
<para>
<application>Cogl</application> is a modern 3D graphics API with associated
utility APIs designed to expose the features of 3D graphics hardware using
a direct state access API design, as opposed to the state-machine style
of OpenGL.
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&cogl-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&cogl-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &cogl-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &cogl-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &cogl-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &cogl-time;
</para>
</listitem>
</itemizedlist>
<!-- No longer required with 1.22.8
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/cogl-&cogl-version;-mesa_20_fixes-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">Cogl Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="cairo"/>,
<xref linkend="gdk-pixbuf"/>,
<xref linkend="glu"/>,
<xref linkend="mesa"/>,
<xref linkend="pango"/>, and
<xref linkend="wayland"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gobject-introspection"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="gst10-plugins-base"/>,
<xref linkend="gtk-doc"/>, and
<xref linkend="sdl2"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Cogl</title>
<!--
<para>
First fix an issue introduced by mesa-20.x and later:
</para>
<screen><userinput>patch -Np1 -i ../cogl-&cogl-version;-mesa_20_fixes-1.patch</userinput></screen>
-->
<para>
Install <application>Cogl</application> by running the following
commands:
</para>
&parallel_issues;
<screen><userinput>./configure --prefix=/usr \
--enable-gles1 \
--enable-gles2 \
--enable-{kms,wayland,xlib}-egl-platform \
--enable-wayland-egl-server &amp;&amp;
make</userinput></screen>
<para>
All of the tests except for the ES2 and ES2-NPT tests are broken due to
slight behavior changes in Mesa. To test the results anyway, issue:
<command>make check</command>. The tests should be run from an X terminal
on a hardware accelerated Xorg Server. A few tests will use all CPUs in
parallel, regardless of parallellism settings.
<!-- I found this on my system with an NVIDIA GPU, but running the tests
on an 11.3 system with an Intel GPU provides the same results. -->
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>--enable-gles1</parameter>: This switch enables support
for OpenGL ES 1.1.
</para>
<para>
<parameter>--enable-gles2</parameter>: This switch enables support
for OpenGL ES 2.0.
</para>
<para>
<parameter>--enable-{kms,wayland,xlib}-egl-platform</parameter>:
These switches enable support for KMS, Wayland and Xlib EGL platforms.
They are required for <application>GNOME</application> Wayland support.
</para>
<para>
<parameter>--enable-wayland-egl-server</parameter>: This switch
enables <application>Cogl</application>'s Wayland Server API which is
required for <application>GNOME</application> Wayland support.
</para>
<para>
<option>--enable-cogl-gst</option>: This switch enables gstreamer support.
</para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gtk-doc-rebuild.xml"/>
</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>
libcogl-gles2.so,
libcogl-pango.so,
libcogl-path.so, and
libcogl.so, and optional libraries
libcogl-gst.so and /usr/lib/gstreamer-1.0/libgstcogl.so
</seg>
<seg>
/usr/include/cogl and
/usr/share/cogl
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libcogl-gles2">
<term><filename class="libraryfile">libcogl-gles2.so</filename></term>
<listitem>
<para>
is the OpenGL ES 2.0 integration library for
<application>Cogl</application>
</para>
<indexterm zone="cogl libcogl-gles2">
<primary sortas="c-libcogl-gles2">libcogl-gles2.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libcogl-pango">
<term><filename class="libraryfile">libcogl-pango.so</filename></term>
<listitem>
<para>
is the <application>Pango</application> integration library
for <application>Cogl</application>
</para>
<indexterm zone="cogl libcogl-pango">
<primary sortas="c-libcogl-pango">libcogl-pango.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libcogl">
<term><filename class="libraryfile">libcogl.so</filename></term>
<listitem>
<para>
is an object oriented GL/GLES Abstraction/Utility Layer library
</para>
<indexterm zone="cogl libcogl">
<primary sortas="c-libcogl">libcogl.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>