Rename the Linux Libc Headers pages

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7817 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Matthew Burgess 2006-10-04 17:15:25 +00:00
parent 93bc4a2875
commit 5bc82c5b16
3 changed files with 92 additions and 93 deletions

View File

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-tools-linux-headers" role="wrap">
<?dbhtml filename="linux-headers.html"?>
<title>Linux-Headers-&linux-version;</title>
<indexterm zone="ch-tools-linux-headers">
<primary sortas="a-Linux-Headers">Linux-Headers</primary>
<secondary>tools, headers</secondary>
</indexterm>
<sect2 role="package">
<title/>
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
href="../chapter06/linux-headers.xml"
xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem>
<seg>&linux-headers-ch5-sbu;</seg>
<seg>&linux-headers-ch5-du;</seg>
</seglistitem>
</segmentedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Linux-Headers</title>
<para>The Linux kernel needs to expose an Application Programming Interface
(API) for the system's C library (Glibc in LFS) to utilize. This is done
by way of sanitizing various C header files that are shipped in the Linux
kernel source tarball.</para>
<para>Apply the following patch to provide <command>unifdef</command>, which
the installation of the kernel headers requires:</para>
<screen><userinput>patch -Np1 -i ../linux-&linux-version;-unifdef-1.patch</userinput></screen>
<para>Install the header files:</para>
<screen><userinput>mkdir /tools/tmp
make mrproper
make headers_check
make INSTALL_HDR_PATH=/tools/tmp headers_install
cp -R /tools/tmp/include/* /tools/include
rm -r /tools/tmp</userinput></screen>
</sect2>
<sect2 role="content">
<title/>
<para>Details on this package are located in
<xref linkend="contents-linux-headers" role="."/></para>
</sect2>
</sect1>

View File

@ -1,66 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-tools-linux-libc-headers" role="wrap">
<?dbhtml filename="linux-libc-headers.html"?>
<title>Linux-Libc-Headers-&linux-libc-headers-version;</title>
<indexterm zone="ch-tools-linux-libc-headers">
<primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary>
<secondary>tools, headers</secondary>
</indexterm>
<sect2 role="package">
<title/>
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
href="../chapter06/linux-libc-headers.xml"
xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem>
<seg>&linux-libc-headers-ch5-sbu;</seg>
<seg>&linux-libc-headers-ch5-du;</seg>
</seglistitem>
</segmentedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Linux-Libc-Headers</title>
<para>For years it has been common practice to use <quote>raw</quote>
kernel headers (straight from a kernel tarball) in <filename
class="directory">/usr/include</filename>, but over the last few years,
the kernel developers have taken a strong stance that this should not
be done. This gave birth to the Linux-Libc-Headers Project, which was
designed to maintain an Application Programming Interface (API) stable
version of the Linux headers.</para>
<para>Install the header files:</para>
<screen><userinput>cp -Rv include/asm-i386 /tools/include/asm
cp -Rv include/linux /tools/include</userinput></screen>
<para>If your architecture is not i386 (compatible), adjust the first command
accordingly.</para>
</sect2>
<sect2 role="content">
<title/>
<para>Details on this package are located in
<xref linkend="contents-linux-libc-headers" role="."/></para>
</sect2>
</sect1>

View File

@ -5,54 +5,50 @@
%general-entities; %general-entities;
]> ]>
<sect1 id="ch-system-linux-libc-headers" role="wrap"> <sect1 id="ch-system-linux-headers" role="wrap">
<?dbhtml filename="linux-libc-headers.html"?> <?dbhtml filename="linux-headers.html"?>
<title>Linux-Libc-Headers-&linux-libc-headers-version;</title> <title>Linux-Headers-&linux-version;</title>
<indexterm zone="ch-system-linux-libc-headers"> <indexterm zone="ch-system-linux-headers">
<primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary> <primary sortas="a-Linux-Headers">Linux-Headers</primary>
</indexterm> </indexterm>
<sect2 role="package"> <sect2 role="package">
<title/> <title/>
<para>The Linux-Libc-Headers package contains the <para>The Linux-Headers expose the kernel's API for use by Glibc.</para>
<quote>sanitized</quote> kernel headers.</para>
<segmentedlist> <segmentedlist>
<segtitle>&buildtime;</segtitle> <segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle> <segtitle>&diskspace;</segtitle>
<seglistitem> <seglistitem>
<seg>&linux-libc-headers-ch6-sbu;</seg> <seg>&linux-headers-ch6-sbu;</seg>
<seg>&linux-libc-headers-ch6-du;</seg> <seg>&linux-headers-ch6-du;</seg>
</seglistitem> </seglistitem>
</segmentedlist> </segmentedlist>
</sect2> </sect2>
<sect2 role="installation"> <sect2 role="installation">
<title>Installation of Linux-Libc-Headers</title> <title>Installation of Linux-Headers</title>
<para>For years it has been common practice to use <quote>raw</quote> <para>The Linux kernel needs to expose an Application Programming Interface
kernel headers (straight from a kernel tarball) in <filename (API) for the system's C library (Glibc in LFS) to utilize. This is done
class="directory">/usr/include</filename>, but over the last few by way of sanitizing various C header files that are shipped in the Linux
years, the kernel developers have taken a strong stance that this kernel source tarball.</para>
should not be done. This gave birth to the Linux-Libc-Headers Project,
which was designed to maintain an API stable version of the Linux
headers.</para>
<para>Add a userspace header and syscall support for the inotify feature <para>Apply the following patch to provide <command>unifdef</command>, which
available in newer Linux kernels:</para> the installation of the kernel headers requires:</para>
<screen><userinput>patch -Np1 -i ../&linux-inotify-patch;</userinput></screen> <screen><userinput>patch -Np1 -i ../linux-&linux-version;-unifdef-1.patch</userinput></screen>
<para>Install the header files:</para> <para>Install the header files:</para>
<screen><userinput>install -dv /usr/include/asm <screen><userinput>make mrproper
cp -Rv include/asm-i386/* /usr/include/asm make headers_check
cp -Rv include/linux /usr/include</userinput></screen> make INSTALL_HDR_PATH=/usr headers_install</userinput></screen>
<para>Ensure that all the headers are owned by root:</para> <para>Ensure that all the headers are owned by root:</para>
@ -65,8 +61,8 @@ find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></scre
</sect2> </sect2>
<sect2 id="contents-linux-libc-headers" role="content"> <sect2 id="contents-linux-headers" role="content">
<title>Contents of Linux-Libc-Headers</title> <title>Contents of Linux-Headers</title>
<segmentedlist> <segmentedlist>
<segtitle>Installed headers</segtitle> <segtitle>Installed headers</segtitle>
@ -81,11 +77,11 @@ find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></scre
<?dbfo list-presentation="list"?> <?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?> <?dbhtml list-presentation="table"?>
<varlistentry id="linux-libc-headers"> <varlistentry id="linux-headers">
<term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term> <term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
<listitem> <listitem>
<para>The Linux API headers</para> <para>The Linux API headers</para>
<indexterm zone="ch-system-linux-libc-headers linux-libc-headers"> <indexterm zone="ch-system-linux-headers linux-headers">
<primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary> <primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
</indexterm> </indexterm>
</listitem> </listitem>