linux-headers.xml 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  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. <sect1 id="ch-system-linux-headers" role="wrap">
  8. <?dbhtml filename="linux-headers.html"?>
  9. <sect1info condition="script">
  10. <productname>linux-headers</productname>
  11. <productnumber>&linux-version;</productnumber>
  12. <address>&linux-url;</address>
  13. </sect1info>
  14. <title>Linux-&linux-version; API Headers</title>
  15. <indexterm zone="ch-system-linux-headers">
  16. <primary sortas="a-Linux">Linux</primary>
  17. <secondary>API headers</secondary>
  18. </indexterm>
  19. <sect2 role="package">
  20. <title/>
  21. <para>The Linux API Headers (in linux-&linux-version;.tar.xz) expose the
  22. kernel's API for use by Glibc.</para>
  23. <segmentedlist>
  24. <segtitle>&buildtime;</segtitle>
  25. <segtitle>&diskspace;</segtitle>
  26. <seglistitem>
  27. <seg>&linux-headers-ch6-sbu;</seg>
  28. <seg>&linux-headers-ch6-du;</seg>
  29. </seglistitem>
  30. </segmentedlist>
  31. </sect2>
  32. <sect2 role="installation">
  33. <title>Installation of Linux API Headers</title>
  34. <para>The Linux kernel needs to expose an Application Programming Interface
  35. (API) for the system's C library (Glibc in LFS) to use. This is done
  36. by way of sanitizing various C header files that are shipped in the Linux
  37. kernel source tarball.</para>
  38. <para>Make sure there are no stale files and dependencies lying around
  39. from previous activity:</para>
  40. <screen><userinput remap="pre">make mrproper</userinput></screen>
  41. <para>Now extract the user-visible kernel headers from the source.
  42. The recommended make target <quote>headers_install</quote> cannot be
  43. used, because it requires <application>rsync</application>, which is
  44. not available in <filename class="directory">/tools</filename>. The
  45. headers are first placed in <filename class="directory">./usr</filename>,
  46. then some files used by the kernel developers are removed, then
  47. the files are copied to their final location.</para>
  48. <screen><userinput remap="make">make headers
  49. find usr/include -name '.*' -delete
  50. rm usr/include/Makefile
  51. </userinput><userinput remap="install">cp -rv usr/include/* /usr/include</userinput></screen>
  52. </sect2>
  53. <sect2 id="contents-linux-headers" role="content">
  54. <title>Contents of Linux API Headers</title>
  55. <segmentedlist>
  56. <segtitle>Installed headers</segtitle>
  57. <segtitle>Installed directories</segtitle>
  58. <seglistitem>
  59. <seg>/usr/include/asm/*.h, /usr/include/asm-generic/*.h,
  60. /usr/include/drm/*.h, /usr/include/linux/*.h, /usr/include/misc/*.h,
  61. /usr/include/mtd/*.h, /usr/include/rdma/*.h, /usr/include/scsi/*.h,
  62. /usr/include/sound/*.h, /usr/include/video/*.h,
  63. and /usr/include/xen/*.h</seg>
  64. <seg>/usr/include/asm, /usr/include/asm-generic, /usr/include/drm,
  65. /usr/include/linux, /usr/include/misc, /usr/include/mtd,
  66. /usr/include/rdma, /usr/include/scsi, /usr/include/sound,
  67. /usr/include/video, and /usr/include/xen</seg>
  68. </seglistitem>
  69. </segmentedlist>
  70. <variablelist>
  71. <bridgehead renderas="sect3">Short Descriptions</bridgehead>
  72. <?dbfo list-presentation="list"?>
  73. <?dbhtml list-presentation="table"?>
  74. <varlistentry id="asm">
  75. <term><filename class="headerfile">/usr/include/asm/*.h</filename></term>
  76. <listitem>
  77. <para>The Linux API ASM Headers</para>
  78. <indexterm zone="ch-system-linux-headers asm">
  79. <primary sortas="e-/usr/include/asm/*.h">/usr/include/asm/*.h</primary>
  80. </indexterm>
  81. </listitem>
  82. </varlistentry>
  83. <varlistentry id="asm-generic">
  84. <term><filename class="headerfile">/usr/include/asm-generic/*.h</filename></term>
  85. <listitem>
  86. <para>The Linux API ASM Generic Headers</para>
  87. <indexterm zone="ch-system-linux-headers asm-generic">
  88. <primary sortas="e-/usr/include/asm-generic/*.h">/usr/include/asm-generic/*.h</primary>
  89. </indexterm>
  90. </listitem>
  91. </varlistentry>
  92. <varlistentry id="drm">
  93. <term><filename class="headerfile">/usr/include/drm/*.h</filename></term>
  94. <listitem>
  95. <para>The Linux API DRM Headers</para>
  96. <indexterm zone="ch-system-linux-headers drm">
  97. <primary sortas="e-/usr/include/drm/*.h">/usr/include/drm/*.h</primary>
  98. </indexterm>
  99. </listitem>
  100. </varlistentry>
  101. <varlistentry id="linux">
  102. <term><filename class="headerfile">/usr/include/linux/*.h</filename></term>
  103. <listitem>
  104. <para>The Linux API Linux Headers</para>
  105. <indexterm zone="ch-system-linux-headers linux">
  106. <primary sortas="e-/usr/include/linux/*.h">/usr/include/linux/*.h</primary>
  107. </indexterm>
  108. </listitem>
  109. </varlistentry>
  110. <varlistentry id="misc">
  111. <term><filename class="headerfile">/usr/include/misc/*.h</filename></term>
  112. <listitem>
  113. <para>The Linux API Miscellaneous Headers</para>
  114. <indexterm zone="ch-system-linux-headers misc">
  115. <primary sortas="e-/usr/include/misc/*.h">/usr/include/misc/*.h</primary>
  116. </indexterm>
  117. </listitem>
  118. </varlistentry>
  119. <varlistentry id="mtd">
  120. <term><filename class="headerfile">/usr/include/mtd/*.h</filename></term>
  121. <listitem>
  122. <para>The Linux API MTD Headers</para>
  123. <indexterm zone="ch-system-linux-headers mtd">
  124. <primary sortas="e-/usr/include/mtd/*.h">/usr/include/mtd/*.h</primary>
  125. </indexterm>
  126. </listitem>
  127. </varlistentry>
  128. <varlistentry id="rdma">
  129. <term><filename class="headerfile">/usr/include/rdma/*.h</filename></term>
  130. <listitem>
  131. <para>The Linux API RDMA Headers</para>
  132. <indexterm zone="ch-system-linux-headers rdma">
  133. <primary sortas="e-/usr/include/rdma/*.h">/usr/include/rdma/*.h</primary>
  134. </indexterm>
  135. </listitem>
  136. </varlistentry>
  137. <varlistentry id="scsi">
  138. <term><filename class="headerfile">/usr/include/scsi/*.h</filename></term>
  139. <listitem>
  140. <para>The Linux API SCSI Headers</para>
  141. <indexterm zone="ch-system-linux-headers scsi">
  142. <primary sortas="e-/usr/include/scsi/*.h">/usr/include/scsi/*.h</primary>
  143. </indexterm>
  144. </listitem>
  145. </varlistentry>
  146. <varlistentry id="sound">
  147. <term><filename class="headerfile">/usr/include/sound/*.h</filename></term>
  148. <listitem>
  149. <para>The Linux API Sound Headers</para>
  150. <indexterm zone="ch-system-linux-headers sound">
  151. <primary sortas="e-/usr/include/sound/*.h">/usr/include/sound/*.h</primary>
  152. </indexterm>
  153. </listitem>
  154. </varlistentry>
  155. <varlistentry id="video">
  156. <term><filename class="headerfile">/usr/include/video/*.h</filename></term>
  157. <listitem>
  158. <para>The Linux API Video Headers</para>
  159. <indexterm zone="ch-system-linux-headers video">
  160. <primary sortas="e-/usr/include/video/*.h">/usr/include/video/*.h</primary>
  161. </indexterm>
  162. </listitem>
  163. </varlistentry>
  164. <varlistentry id="xen">
  165. <term><filename class="headerfile">/usr/include/xen/*.h</filename></term>
  166. <listitem>
  167. <para>The Linux API Xen Headers</para>
  168. <indexterm zone="ch-system-linux-headers xen">
  169. <primary sortas="e-/usr/include/xen/*.h">/usr/include/xen/*.h</primary>
  170. </indexterm>
  171. </listitem>
  172. </varlistentry>
  173. </variablelist>
  174. </sect2>
  175. </sect1>