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;
]>
<sect1 id="ch-system-linux-libc-headers" role="wrap">
<?dbhtml filename="linux-libc-headers.html"?>
<sect1 id="ch-system-linux-headers" role="wrap">
<?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">
<primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary>
<indexterm zone="ch-system-linux-headers">
<primary sortas="a-Linux-Headers">Linux-Headers</primary>
</indexterm>
<sect2 role="package">
<title/>
<para>The Linux-Libc-Headers package contains the
<quote>sanitized</quote> kernel headers.</para>
<para>The Linux-Headers expose the kernel's API for use by Glibc.</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem>
<seg>&linux-libc-headers-ch6-sbu;</seg>
<seg>&linux-libc-headers-ch6-du;</seg>
<seg>&linux-headers-ch6-sbu;</seg>
<seg>&linux-headers-ch6-du;</seg>
</seglistitem>
</segmentedlist>
</sect2>
<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>
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 API stable version of the Linux
headers.</para>
<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>Add a userspace header and syscall support for the inotify feature
available in newer Linux kernels:</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-inotify-patch;</userinput></screen>
<screen><userinput>patch -Np1 -i ../linux-&linux-version;-unifdef-1.patch</userinput></screen>
<para>Install the header files:</para>
<screen><userinput>install -dv /usr/include/asm
cp -Rv include/asm-i386/* /usr/include/asm
cp -Rv include/linux /usr/include</userinput></screen>
<screen><userinput>make mrproper
make headers_check
make INSTALL_HDR_PATH=/usr headers_install</userinput></screen>
<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 id="contents-linux-libc-headers" role="content">
<title>Contents of Linux-Libc-Headers</title>
<sect2 id="contents-linux-headers" role="content">
<title>Contents of Linux-Headers</title>
<segmentedlist>
<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"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="linux-libc-headers">
<varlistentry id="linux-headers">
<term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
<listitem>
<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>
</indexterm>
</listitem>