glfs/multimedia/libdriv/sdl.xml
2024-02-16 19:51:24 -06:00

203 lines
5.6 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 sdl-download-http "https://github.com/libsdl-org/sdl12-compat/archive/refs/tags/release-&sdl-version;/sdl12-compat-release-&sdl-version;.tar.gz">
<!ENTITY sdl-download-ftp " ">
<!ENTITY sdl-md5sum "04ed17494dad2131b37e0300f8af31ec">
<!ENTITY sdl-size "452 KB">
<!ENTITY sdl-buildsize "7.1 MB">
<!ENTITY sdl-time "less than 0.1 SBU">
]>
<sect1 id="sdl" xreflabel="sdl12-compat-&sdl-version;">
<?dbhtml filename="sdl.html"?>
<title>sdl12-compat-&sdl-version;</title>
<indexterm zone="sdl">
<primary sortas="a-SDL">SDL</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to sdl12-compat</title>
<para>
The Simple DirectMedia Layer (<application>SDL</application>
for short) is a cross-platform library designed to make it easy to write
multimedia software, such as games and emulators. This code is a
compatibility layer; it provides a binary and source compatible API
for programs written against SDL 1.2, but it uses SDL 2.0 behind the scenes.
</para>
&lfs121_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&sdl-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&sdl-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &sdl-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &sdl-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &sdl-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &sdl-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">SDL Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="cmake"/>,
<xref linkend="glu"/>, and
<xref linkend="sdl2"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of sdl12-compat</title>
<para>
Install <application>sdl12-compat</application> by running the
following commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=RELEASE \
.. &amp;&amp;
make</userinput></screen>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install &amp;&amp;
rm -vf /usr/lib/libSDLmain.a</userinput></screen>
</sect2>
<sect2 role="testing">
<title>Testing SDL</title>
<para>
If you wish, test the <application>sdlcompat</application> package
using the included test programs. It is not required to install any of
the resulting binaries to validate the installation.
</para>
<para>
You'll need to manually run all the test programs (they are listed in
the <filename>README</filename> file in this directory). Many of them
will need to be manually killed, and you'll need to turn your speakers
on with the volume at a suitable level.
</para>
</sect2>
<!--
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<option>- -disable-x11-shared</option>: This switch disables
dynamically loading X11 shared libraries.
</para>
</sect2>
-->
<!--
<sect2 role="configuration">
<title>Configuring SDL</title>
<sect3>
<title>Configuration Information</title>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/lib-config.xml"/>
</sect3>
</sect2>
-->
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>sdl-config</seg>
<seg>libSDL.so</seg>
<seg>/usr/include/SDL</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="sdl-config">
<term><command>sdl-config</command></term>
<listitem>
<para>
determines the compile and linker flags that should be used to
compile and link programs that use
<filename class="libraryfile">libSDL</filename>
</para>
<indexterm zone="sdl sdl-config">
<primary sortas="b-sdl-config">sdl-config</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libsdl">
<term><filename class="libraryfile">libSDL.so</filename></term>
<listitem>
<para>
contains functions that provide compatibility links to SDL2
low level functions for audio,
keyboard, mouse, joystick, 3D hardware via OpenGL, and
2D frame buffer across multiple platforms
</para>
<indexterm zone="sdl libsdl">
<primary sortas="c-libsdl">libSDL.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>