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">
8 <sect1 id="ch-tools-linux-headers" role="wrap">
9 <?dbhtml filename="linux-headers.html"?>
11 <sect1info condition="script">
12 <productname>linux-headers</productname>
13 <productnumber>&linux-version;</productnumber>
14 <address>&linux-url;</address>
17 <title>Linux-&linux-version; API Headers</title>
19 <indexterm zone="ch-tools-linux-headers">
20 <primary sortas="a-Linux">Linux</primary>
21 <secondary>tools, API headers</secondary>
24 <sect2 role="package">
27 <para>The Linux API Headers (in linux-&linux-version;.tar.xz) expose the
28 kernel's API for use by Glibc.</para>
31 <segtitle>&buildtime;</segtitle>
32 <segtitle>&diskspace;</segtitle>
35 <seg>&linux-headers-tmp-sbu;</seg>
36 <seg>&linux-headers-tmp-du;</seg>
42 <sect2 role="installation">
43 <title>Installation of Linux API Headers</title>
45 <para>The Linux kernel needs to expose an Application Programming Interface
46 (API) for the system's C library (Glibc in LFS) to use. This is done
47 by way of sanitizing various C header files that are shipped in the Linux
48 kernel source tarball.</para>
50 <para>Make sure there are no stale files embedded in the package:</para>
52 <screen><userinput remap="pre">make mrproper</userinput></screen>
54 <para>Now extract the user-visible kernel headers from the source.
55 The recommended make target <quote>headers_install</quote> cannot be
56 used, because it requires <application>rsync</application>, which may not
57 be available. The headers are first placed in
58 <filename class="directory">./usr</filename>, then copied to the needed
61 <screen><userinput remap="make">make headers
62 find usr/include -name '.*' -delete
63 rm usr/include/Makefile
64 </userinput><userinput remap="install">cp -rv usr/include $LFS/usr</userinput></screen>
68 <sect2 id="contents-linux-headers" role="content">
69 <title>Contents of Linux API Headers</title>
72 <segtitle>Installed headers</segtitle>
73 <segtitle>Installed directories</segtitle>
76 <seg>/usr/include/asm/*.h, /usr/include/asm-generic/*.h,
77 /usr/include/drm/*.h, /usr/include/linux/*.h, /usr/include/misc/*.h,
78 /usr/include/mtd/*.h, /usr/include/rdma/*.h, /usr/include/scsi/*.h,
79 /usr/include/sound/*.h, /usr/include/video/*.h,
80 and /usr/include/xen/*.h</seg>
81 <seg>/usr/include/asm, /usr/include/asm-generic, /usr/include/drm,
82 /usr/include/linux, /usr/include/misc, /usr/include/mtd,
83 /usr/include/rdma, /usr/include/scsi, /usr/include/sound,
84 /usr/include/video, and /usr/include/xen</seg>
89 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
90 <?dbfo list-presentation="list"?>
91 <?dbhtml list-presentation="table"?>
93 <varlistentry id="asm">
94 <term><filename class="headerfile">/usr/include/asm/*.h</filename></term>
96 <para>The Linux API ASM Headers</para>
97 <indexterm zone="ch-tools-linux-headers asm">
98 <primary sortas="e-/usr/include/asm/*.h">/usr/include/asm/*.h</primary>
103 <varlistentry id="asm-generic">
104 <term><filename class="headerfile">/usr/include/asm-generic/*.h</filename></term>
106 <para>The Linux API ASM Generic Headers</para>
107 <indexterm zone="ch-tools-linux-headers asm-generic">
108 <primary sortas="e-/usr/include/asm-generic/*.h">/usr/include/asm-generic/*.h</primary>
113 <varlistentry id="drm">
114 <term><filename class="headerfile">/usr/include/drm/*.h</filename></term>
116 <para>The Linux API DRM Headers</para>
117 <indexterm zone="ch-tools-linux-headers drm">
118 <primary sortas="e-/usr/include/drm/*.h">/usr/include/drm/*.h</primary>
123 <varlistentry id="linux">
124 <term><filename class="headerfile">/usr/include/linux/*.h</filename></term>
126 <para>The Linux API Linux Headers</para>
127 <indexterm zone="ch-tools-linux-headers linux">
128 <primary sortas="e-/usr/include/linux/*.h">/usr/include/linux/*.h</primary>
133 <varlistentry id="misc">
134 <term><filename class="headerfile">/usr/include/misc/*.h</filename></term>
136 <para>The Linux API Miscellaneous Headers</para>
137 <indexterm zone="ch-tools-linux-headers misc">
138 <primary sortas="e-/usr/include/misc/*.h">/usr/include/misc/*.h</primary>
143 <varlistentry id="mtd">
144 <term><filename class="headerfile">/usr/include/mtd/*.h</filename></term>
146 <para>The Linux API MTD Headers</para>
147 <indexterm zone="ch-tools-linux-headers mtd">
148 <primary sortas="e-/usr/include/mtd/*.h">/usr/include/mtd/*.h</primary>
153 <varlistentry id="rdma">
154 <term><filename class="headerfile">/usr/include/rdma/*.h</filename></term>
156 <para>The Linux API RDMA Headers</para>
157 <indexterm zone="ch-tools-linux-headers rdma">
158 <primary sortas="e-/usr/include/rdma/*.h">/usr/include/rdma/*.h</primary>
163 <varlistentry id="scsi">
164 <term><filename class="headerfile">/usr/include/scsi/*.h</filename></term>
166 <para>The Linux API SCSI Headers</para>
167 <indexterm zone="ch-tools-linux-headers scsi">
168 <primary sortas="e-/usr/include/scsi/*.h">/usr/include/scsi/*.h</primary>
173 <varlistentry id="sound">
174 <term><filename class="headerfile">/usr/include/sound/*.h</filename></term>
176 <para>The Linux API Sound Headers</para>
177 <indexterm zone="ch-tools-linux-headers sound">
178 <primary sortas="e-/usr/include/sound/*.h">/usr/include/sound/*.h</primary>
183 <varlistentry id="video">
184 <term><filename class="headerfile">/usr/include/video/*.h</filename></term>
186 <para>The Linux API Video Headers</para>
187 <indexterm zone="ch-tools-linux-headers video">
188 <primary sortas="e-/usr/include/video/*.h">/usr/include/video/*.h</primary>
193 <varlistentry id="xen">
194 <term><filename class="headerfile">/usr/include/xen/*.h</filename></term>
196 <para>The Linux API Xen Headers</para>
197 <indexterm zone="ch-tools-linux-headers xen">
198 <primary sortas="e-/usr/include/xen/*.h">/usr/include/xen/*.h</primary>