source: multimedia/libdriv/sdl2.xml@ b4cbfb4e

11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since b4cbfb4e was b4cbfb4e, checked in by Pierre Labastie <pierre.labastie@…>, 2 years ago

SDL2: patch for missing symbol in wayland-1.20.0

Report by "Berzerkula" on #lfs-support.
Bug: https://github.com/libsdl-org/SDL/issues/5088
Patch: https://github.com/libsdl-org/SDL/commit/e2ade2bfc46d915cd306c63c830b81d800b2575f

  • Property mode set to 100644
File size: 8.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY sdl2-download-http "https://www.libsdl.org/release/SDL2-&sdl2-version;.tar.gz">
8 <!ENTITY sdl2-download-ftp " ">
9 <!ENTITY sdl2-md5sum "c1dd33299db5b7091f37d989c68d5212">
10 <!ENTITY sdl2-size "7.0 MB">
11 <!ENTITY sdl2-buildsize "134 MB (with docs)">
12 <!ENTITY sdl2-time "0.4 SBU (using parallelism=4; with docs)">
13]>
14
15<sect1 id="sdl2" xreflabel="SDL2-&sdl2-version;">
16 <?dbhtml filename="sdl2.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>SDL2-&sdl2-version;</title>
23
24 <indexterm zone="sdl2">
25 <primary sortas="a-SDL2">SDL2</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to SDL2</title>
30
31 <para>
32 The Simple DirectMedia Layer Version 2 (<application>SDL2</application>
33 for short) is a cross-platform library designed to make it easy to write
34 multimedia software, such as games and emulators.
35 </para>
36
37 &lfs110a_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&sdl2-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&sdl2-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &sdl2-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &sdl2-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &sdl2-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &sdl2-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
74 <itemizedlist spacing="compact">
75<!-- should be fixed in sdl-2.0.19 -->
76 <listitem>
77 <para>
78 Required patch for wayland-1.20.0:
79 <ulink url="&patch-root;/SDL2-&sdl2-version;-wayland_1_20_fix-1.patch"/>
80 </para>
81 </listitem>
82 <listitem>
83 <para>
84 Required patch (for i686 systems):
85 <ulink url="&patch-root;/SDL2-&sdl2-version;-opengl_include_fix-1.patch"/>
86 </para>
87 </listitem>
88 </itemizedlist>
89
90 <bridgehead renderas="sect3">SDL2 Dependencies</bridgehead>
91
92 <bridgehead renderas="sect4">Recommended</bridgehead>
93 <para role="recommended">
94 <xref linkend="libxkbcommon"/>,
95 <xref linkend="wayland-protocols"/>, and
96 <xref linkend="xorg7-lib"/> (if those are not present, the corresponding modules are not built)
97 </para>
98
99 <bridgehead renderas="sect4">Optional</bridgehead>
100 <para role="optional">
101 <xref linkend="alsa"/>,
102 <xref linkend="doxygen"/> (to create documentation),
103 <xref linkend="ibus"/>,
104 <xref linkend="nasm"/>,
105 <xref linkend="pulseaudio"/>,
106 <xref linkend="libsamplerate"/>,
107 <xref linkend="x-window-system"/>,
108 <ulink url="http://pkgs.fedoraproject.org/repo/pkgs/directfb/">DirectFB</ulink>, and
109 <ulink url="https://fcitx-im.org/">fcitx</ulink>
110 </para>
111
112 <para condition="html" role="usernotes">User Notes:
113 <ulink url="&blfs-wiki;/sdl"/></para>
114
115 </sect2>
116
117 <sect2 role="installation">
118 <title>Installation of SDL2</title>
119
120 <para>
121 First, if you are building on a 32-bit i686 system, apply a patch
122 containing a fix for the OpenGL headers and their data types:
123 </para>
124
125<screen><userinput remap="pre">case $(uname -m) in
126 i?86) patch -Np1 -i ../SDL2-&sdl2-version;-opengl_include_fix-1.patch ;;
127esac</userinput></screen>
128
129 <para>
130 Apply a patch to fix building with <xref linkend="wayland"/>:
131 </para>
132
133<screen><userinput>patch -Np1 -i SDL2-&sdl2-version;-wayland_1_20_fix-1.patch</userinput></screen>
134
135 <para>
136 Install <application>SDL2</application> by running the
137 following commands:
138 </para>
139
140<screen><userinput>./configure --prefix=/usr &amp;&amp;
141make</userinput></screen>
142
143 <para>
144 If you have <xref linkend="doxygen"/> installed and want to build the
145 html documentation, run the following commands:
146 </para>
147
148<screen remap="doc"><userinput>pushd docs &amp;&amp;
149 doxygen &amp;&amp;
150popd</userinput></screen>
151
152 <note>
153 <para>
154 If you wish to build and run the package regression
155 tests, do not delete the static libraries below until after
156 the tests are built.
157 </para>
158 </note>
159
160 <para>
161 Now, as the <systemitem class="username">root</systemitem> user:
162 </para>
163
164<screen role="root"><userinput>make install &amp;&amp;
165rm -v /usr/lib/libSDL2*.a</userinput></screen>
166
167 <para>
168 If you built the documentation, install it as the <systemitem
169 class="username">root</systemitem> user:
170 </para>
171
172<screen role="root"
173 remap="doc"><userinput>install -v -m755 -d /usr/share/doc/SDL2-&sdl2-version;/html &amp;&amp;
174cp -Rv docs/output/html/* /usr/share/doc/SDL2-&sdl2-version;/html</userinput></screen>
175
176 </sect2>
177<!--
178 The tests are broken for version 2.0.10. It cannot find libSDL2_test*.
179
180 <sect2 role="testing">
181 <title>Testing SDL2</title>
182
183 <para>
184 If you wish to, test the installation of <application>SDL2</application>
185 using the included test programs. None of the resulting binaries need
186 to be installed. Issue the following commands to build the test
187 programs:
188 </para>
189
190<screen><userinput>cd test &amp;&amp;
191./configure &amp;&amp;
192make</userinput></screen>
193
194 <para>
195 Each of the test programs (they are listed in the
196 <filename>README</filename> file in this directory) will need to be run
197 individually. Many of them will need to be manually killed. Additionally,
198 speakers need to be on with the volume at a suitable level.
199 </para>
200
201 </sect2>
202-->
203 <sect2 role="commands">
204 <title>Command Explanations</title>
205
206 <para>
207 <command>rm -v /usr/lib/libSDL2*.a</command>: Normally
208 static libraries can be disabled with a <option>--disable-static</option>
209 option to configure, but that breaks the build in this package.
210 </para>
211
212 <para>
213 <option>--disable-alsa-shared</option>: This switch disables
214 dynamically loading ALSA shared libraries.
215 </para>
216
217 <para>
218 <option>--disable-sdl-dlopen</option>: This switch disables using
219 dlopen for shared object loading. Loading image backend libraries like
220 libpng dynamically on the fly does not work.
221 </para>
222
223 <para>
224 <option>--disable-x11-shared</option>: This switch disables
225 dynamically loading X11 shared libraries.
226 </para>
227
228 </sect2>
229
230 <sect2 role="configuration">
231 <title>Configuring SDL2</title>
232
233 <sect3>
234 <title>Configuration Information</title>
235
236 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
237 href="../../xincludes/lib-config.xml"/>
238
239 </sect3>
240
241 </sect2>
242
243 <sect2 role="content">
244 <title>Contents</title>
245
246 <segmentedlist>
247 <segtitle>Installed Program</segtitle>
248 <segtitle>Installed Libraries</segtitle>
249 <segtitle>Installed Directories</segtitle>
250
251 <seglistitem>
252 <seg>sdl2-config</seg>
253 <seg>libSDL2.so</seg>
254 <seg>/usr/include/SDL2 and
255 /usr/share/doc/SDL-&sdl2-version;</seg>
256 </seglistitem>
257 </segmentedlist>
258
259 <variablelist>
260 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
261 <?dbfo list-presentation="list"?>
262 <?dbhtml list-presentation="table"?>
263
264 <varlistentry id="sdl2-config">
265 <term><command>sdl2-config</command></term>
266 <listitem>
267 <para>
268 determines the compile and linker flags that should be used to
269 compile and link programs that use
270 <filename class="libraryfile">libSDL2</filename>
271 </para>
272 <indexterm zone="sdl2 sdl2-config">
273 <primary sortas="b-sdl2-config">sdl2-config</primary>
274 </indexterm>
275 </listitem>
276 </varlistentry>
277
278 <varlistentry id="libsdl2">
279 <term><filename class="libraryfile">libSDL2.so</filename></term>
280 <listitem>
281 <para>
282 contains functions that provide low level access to audio,
283 keyboard, mouse, joystick, 3D hardware via OpenGL, and
284 2D frame buffer across multiple platforms
285 </para>
286 <indexterm zone="sdl2 libsdl2">
287 <primary sortas="c-libsdl2">libSDL2.so</primary>
288 </indexterm>
289 </listitem>
290 </varlistentry>
291
292 </variablelist>
293
294 </sect2>
295
296</sect1>
Note: See TracBrowser for help on using the repository browser.