Author: matthew Date: 2006-10-04 11:15:25 -0600 (Wed, 04 Oct 2006) New Revision: 7817
Added: trunk/BOOK/chapter05/linux-headers.xml trunk/BOOK/chapter06/linux-headers.xml Removed: trunk/BOOK/chapter05/linux-libc-headers.xml trunk/BOOK/chapter06/linux-libc-headers.xml Log: Rename the Linux Libc Headers pages Added: trunk/BOOK/chapter05/linux-headers.xml =================================================================== --- trunk/BOOK/chapter05/linux-headers.xml (rev 0) +++ trunk/BOOK/chapter05/linux-headers.xml 2006-10-04 17:15:25 UTC (rev 7817) @@ -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> Deleted: trunk/BOOK/chapter05/linux-libc-headers.xml =================================================================== --- trunk/BOOK/chapter05/linux-libc-headers.xml 2006-10-04 17:08:23 UTC (rev 7816) +++ trunk/BOOK/chapter05/linux-libc-headers.xml 2006-10-04 17:15:25 UTC (rev 7817) @@ -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> Added: trunk/BOOK/chapter06/linux-headers.xml =================================================================== --- trunk/BOOK/chapter06/linux-headers.xml (rev 0) +++ trunk/BOOK/chapter06/linux-headers.xml 2006-10-04 17:15:25 UTC (rev 7817) @@ -0,0 +1,94 @@ +<?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-system-linux-headers" role="wrap"> + <?dbhtml filename="linux-headers.html"?> + + <title>Linux-Headers-&linux-version;</title> + + <indexterm zone="ch-system-linux-headers"> + <primary sortas="a-Linux-Headers">Linux-Headers</primary> + </indexterm> + + <sect2 role="package"> + <title/> + + <para>The Linux-Headers expose the kernel's API for use by Glibc.</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&linux-headers-ch6-sbu;</seg> + <seg>&linux-headers-ch6-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>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> + +<screen><userinput>chown -Rv root:root /usr/include/{asm,linux}</userinput></screen> + + <para>Make sure the users can read the headers:</para> + +<screen><userinput>find /usr/include/{asm,linux} -type d -exec chmod -v 755 {} \; +find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></screen> + + </sect2> + + <sect2 id="contents-linux-headers" role="content"> + <title>Contents of Linux-Headers</title> + + <segmentedlist> + <segtitle>Installed headers</segtitle> + + <seglistitem> + <seg>/usr/include/{asm,linux}/*.h</seg> + </seglistitem> + </segmentedlist> + + <variablelist> + <bridgehead renderas="sect3">Short Descriptions</bridgehead> + <?dbfo list-presentation="list"?> + <?dbhtml list-presentation="table"?> + + <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-headers linux-headers"> + <primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary> + </indexterm> + </listitem> + </varlistentry> + + </variablelist> + + </sect2> + +</sect1> Deleted: trunk/BOOK/chapter06/linux-libc-headers.xml =================================================================== --- trunk/BOOK/chapter06/linux-libc-headers.xml 2006-10-04 17:08:23 UTC (rev 7816) +++ trunk/BOOK/chapter06/linux-libc-headers.xml 2006-10-04 17:15:25 UTC (rev 7817) @@ -1,98 +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-system-linux-libc-headers" role="wrap"> - <?dbhtml filename="linux-libc-headers.html"?> - - <title>Linux-Libc-Headers-&linux-libc-headers-version;</title> - - <indexterm zone="ch-system-linux-libc-headers"> - <primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary> - </indexterm> - - <sect2 role="package"> - <title/> - - <para>The Linux-Libc-Headers package contains the - <quote>sanitized</quote> kernel headers.</para> - - <segmentedlist> - <segtitle>&buildtime;</segtitle> - <segtitle>&diskspace;</segtitle> - - <seglistitem> - <seg>&linux-libc-headers-ch6-sbu;</seg> - <seg>&linux-libc-headers-ch6-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 API stable version of the Linux - headers.</para> - - <para>Add a userspace header and syscall support for the inotify feature - available in newer Linux kernels:</para> - -<screen><userinput>patch -Np1 -i ../&linux-inotify-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> - - <para>Ensure that all the headers are owned by root:</para> - -<screen><userinput>chown -Rv root:root /usr/include/{asm,linux}</userinput></screen> - - <para>Make sure the users can read the headers:</para> - -<screen><userinput>find /usr/include/{asm,linux} -type d -exec chmod -v 755 {} \; -find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></screen> - - </sect2> - - <sect2 id="contents-linux-libc-headers" role="content"> - <title>Contents of Linux-Libc-Headers</title> - - <segmentedlist> - <segtitle>Installed headers</segtitle> - - <seglistitem> - <seg>/usr/include/{asm,linux}/*.h</seg> - </seglistitem> - </segmentedlist> - - <variablelist> - <bridgehead renderas="sect3">Short Descriptions</bridgehead> - <?dbfo list-presentation="list"?> - <?dbhtml list-presentation="table"?> - - <varlistentry id="linux-libc-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"> - <primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary> - </indexterm> - </listitem> - </varlistentry> - - </variablelist> - - </sect2> - -</sect1> -- http://linuxfromscratch.org/mailman/listinfo/lfs-book FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page
