source: x/lib/libdrm.xml@ 1ef28cd2

12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 1ef28cd2 was 91318eb, checked in by Pierre Labastie <pierre.labastie@…>, 16 months ago

Add "setup" to meson commands

I've not been very consistent on typography, but it is a start

  • Property mode set to 100644
File size: 8.5 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 libdrm-download-http "https://dri.freedesktop.org/libdrm/libdrm-&libdrm-version;.tar.xz">
8 <!ENTITY libdrm-download-ftp " ">
9 <!ENTITY libdrm-md5sum "5403981a20c964f4c893ff91393652bd">
10 <!ENTITY libdrm-size "459 KB">
11 <!ENTITY libdrm-buildsize "8.6 MB (with tests)">
12 <!ENTITY libdrm-time "less than 0.1 SBU (with tests) with parallelism=4">
13 <!-- With version 2.4.102, the tests add 1 second to my build. -->
14 <!-- The 'threaded' test adds about 15 seconds if you're on an NVIDIA system
15 due to it directly interacting with the GPU. -->
16]>
17
18<sect1 id="libdrm" xreflabel="libdrm-&libdrm-version;">
19 <?dbhtml filename="libdrm.html"?>
20
21
22 <title>Libdrm-&libdrm-version;</title>
23
24 <indexterm zone="libdrm">
25 <primary sortas="a-libdrm">libdrm</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to Libdrm</title>
30
31 <para>
32 <application>Libdrm</application> provides a userspace library for
33 accessing the direct rendering manager (DRM) on operating systems that
34 support the ioctl interface. Libdrm is a low-level library, typically used
35 by graphics drivers such as the Mesa DRI drivers, the X drivers, libva and
36 similar projects.
37 </para>
38
39 &lfs113_checked;
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>
45 Download (HTTP): <ulink url="&libdrm-download-http;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download (FTP): <ulink url="&libdrm-download-ftp;"/>
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download MD5 sum: &libdrm-md5sum;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Download size: &libdrm-size;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated disk space required: &libdrm-buildsize;
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Estimated build time: &libdrm-time;
71 </para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">libdrm Dependencies</bridgehead>
76
77 <bridgehead renderas="sect4">Recommended</bridgehead>
78 <para role="recommended">
79 <xref linkend="xorg7-lib"/> (for Intel KMS API support required by Mesa)
80 </para>
81
82 <bridgehead renderas="sect4">Optional</bridgehead>
83 <para role="optional">
84 <xref linkend="cairo"/> (for tests),
85 <xref linkend="cmake"/> (could be used to find dependencies without pkgconfig files),
86 <xref linkend="DocBook"/>,
87 <xref linkend="docbook-xsl"/>,
88 <xref linkend="docutils"/>, and
89 <xref linkend="libxslt"/> (to build manual pages),
90 <xref linkend="libatomic_ops"/> (required by architectures without native atomic operations),
91 <xref linkend="valgrind"/>, and
92 <ulink url="https://cunit.sourceforge.net/">CUnit</ulink> (for AMDGPU tests)
93 </para>
94
95 <para condition="html" role="usernotes">User Notes:
96 <ulink url="&blfs-wiki;/libdrm"/>
97 </para>
98 </sect2>
99
100 <sect2 role="installation">
101 <title>Installation of Libdrm</title>
102
103 <para>
104 Install <application>libdrm</application> by running the following
105 commands:
106 </para>
107
108<screen><userinput>mkdir build &amp;&amp;
109cd build &amp;&amp;
110
111meson setup --prefix=$XORG_PREFIX \
112 --buildtype=release \
113 -Dudev=true \
114 -Dvalgrind=disabled \
115 .. &amp;&amp;
116ninja</userinput></screen>
117
118 <para>
119 To check the results, issue <command>ninja test</command>. <!--One test,
120 'threaded' in the nouveau subdirectory, is known to fail with a
121 30 second timeout.-->
122 <!-- Regarding the 'threaded' test, it's now skipped by default (2.4.102)
123 -renodr -->
124
125 <!-- Tests may hang
126 for unknown reasons. --><!-- If nouveau threaded test hangs, you can disable it
127 with
128 <command>sed -i 's/^TESTS/#&amp;/' tests/nouveau/Makefile.in</command>.
129
130 Now that tests are run with ninja, the test merely times out after 30 seconds.
131 -->
132 </para>
133
134 <para>
135 Now, as the <systemitem class="username">root</systemitem> user:
136 </para>
137
138<screen role="root"><userinput>ninja install</userinput></screen>
139
140 </sect2>
141
142 <sect2 role="commands">
143 <title>Command Explanations</title>
144
145 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
146 href="../../xincludes/meson-buildtype-release.xml"/>
147
148 <para>
149 <parameter>-Dudev=true</parameter>: This parameter enables support for using
150 <application>Udev</application> instead of <command>mknod</command>.
151 </para>
152
153 <para>
154 <parameter>-Dvalgrind=disabled</parameter>: This parameter disables
155 building libdrm with valgrind support. This fixes building sysprof and
156 other packages that use libdrm. Change this parameter to "enabled"
157 (or remove it) if you need support for valgrind.
158 </para>
159
160 </sect2>
161
162 <sect2 role="content">
163 <title>Contents</title>
164
165 <segmentedlist>
166 <segtitle>Installed Programs</segtitle>
167 <segtitle>Installed Libraries</segtitle>
168 <segtitle>Installed Directories</segtitle>
169
170 <seglistitem>
171 <seg>
172 None
173 </seg>
174 <seg>
175 libdrm_amdgpu.so, libdrm_intel.so, libdrm_nouveau.so,
176 libdrm_radeon.so, and libdrm.so<!--, and libkms.so-->
177 </seg>
178 <seg>
179 /usr/include/libdrm <!--,/usr/include/libkms,-->
180 and /usr/share/libdrm
181 </seg>
182 </seglistitem>
183 </segmentedlist>
184
185 <variablelist>
186 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
187 <?dbfo list-presentation="list"?>
188 <?dbhtml list-presentation="table"?>
189
190 <varlistentry id="libdrm_amdgpu">
191 <term><filename class="libraryfile">libdrm_amdgpu.so</filename></term>
192 <listitem>
193 <para>
194 contains the AMDGPU specific Direct Rendering Manager functions
195 </para>
196 <indexterm zone="libdrm libdrm_amdgpu">
197 <primary sortas="c-libdrm_amdgpu">libdrm_amdgpu.so</primary>
198 </indexterm>
199 </listitem>
200 </varlistentry>
201
202 <varlistentry id="libdrm_intel">
203 <term><filename class="libraryfile">libdrm_intel.so</filename></term>
204 <listitem>
205 <para>
206 contains the Intel specific Direct Rendering Manager
207 functions
208 </para>
209 <indexterm zone="libdrm libdrm_intel">
210 <primary sortas="c-libdrm_intel">libdrm_intel.so</primary>
211 </indexterm>
212 </listitem>
213 </varlistentry>
214
215 <varlistentry id="libdrm_nouveau">
216 <term><filename class="libraryfile">libdrm_nouveau.so</filename></term>
217 <listitem>
218 <para>
219 contains the open source nVidia (Nouveau) specific Direct
220 Rendering Manager functions
221 </para>
222 <indexterm zone="libdrm libdrm_nouveau">
223 <primary sortas="c-libdrm_nouveau">libdrm_nouveau.so</primary>
224 </indexterm>
225 </listitem>
226 </varlistentry>
227
228 <varlistentry id="libdrm_radeon">
229 <term><filename class="libraryfile">libdrm_radeon.so</filename></term>
230 <listitem>
231 <para>
232 contains the AMD Radeon specific Direct Rendering Manager
233 functions
234 </para>
235 <indexterm zone="libdrm libdrm_radeon">
236 <primary sortas="c-libdrm_radeon">libdrm_radeon.so</primary>
237 </indexterm>
238 </listitem>
239 </varlistentry>
240
241 <varlistentry id="libdrm-lib">
242 <term><filename class="libraryfile">libdrm.so</filename></term>
243 <listitem>
244 <para>
245 contains the Direct Rendering Manager API functions
246 </para>
247 <indexterm zone="libdrm libdrm-lib">
248 <primary sortas="c-libdrm">libdrm.so</primary>
249 </indexterm>
250 </listitem>
251 </varlistentry>
252
253 <!-- Removed in 2.4.111
254 <varlistentry id="libkms">
255 <term><filename class="libraryfile">libkms.so</filename></term>
256 <listitem>
257 <para>
258 contains API functions for kernel mode setting abstraction
259 </para>
260 <indexterm zone="libdrm libkms">
261 <primary sortas="c-libkms">libkms.so</primary>
262 </indexterm>
263 </listitem>
264 </varlistentry>
265 -->
266
267 </variablelist>
268
269 </sect2>
270
271</sect1>
Note: See TracBrowser for help on using the repository browser.