[jhalfs] 02/10: Remove legacy: First run of CLFS removal

"Git Owner" ([email protected] via alfs-discuss Mailing List) <[email protected]>
Newsgroups gmane.linux.lfs.automated
Message-ID <[email protected]>
This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch trunk
in repository jhalfs.

commit 16cef03acf8061c3e001e432476ab82f1f4a1b6b
Author: Pierre Labastie <[email protected]>
AuthorDate: Mon Feb 28 13:38:06 2022 +0100

    Remove legacy: First run of CLFS removal
---
 CLFS/clfs.xsl                       |  441 ------------
 CLFS/master.sh                      | 1264 -----------------------------------
 CLFS2/clfs2.xsl                     |  149 -----
 CLFS2/master.sh                     |  536 ---------------
 CLFS3/clfs3.xsl                     |  154 -----
 CLFS3/master.sh                     |  586 ----------------
 custom/examples_CLFS-E/950-dropbear |   46 --
 custom/examples_CLFS-E/960-iptables |   39 --
 jhalfs                              |    3 -
 9 files changed, 3218 deletions(-)

diff --git a/CLFS/clfs.xsl b/CLFS/clfs.xsl
deleted file mode 100644
index fa43014..0000000
--- a/CLFS/clfs.xsl
+++ /dev/null
@@ -1,441 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE xsl:stylesheet [
- <!ENTITY % general-entities SYSTEM "FAKEDIR/general.ent">
-  %general-entities;
-]>
-
-<xsl:stylesheet
-    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:exsl="http://exslt.org/common"
-    extension-element-prefixes="exsl"
-    version="1.0">
-
-<!-- XSLT stylesheet to create shell scripts from CLFS books. -->
-
-  <!-- Build method used -->
-  <xsl:param name="method" select="chroot"/>
-
-  <!-- Run test suites?
-       0 = none
-       1 = only Glibc, GCC and Binutils testsuites
-       2 = all testsuites
-       3 = alias to 2
-  -->
-  <xsl:param name="testsuite" select="1"/>
-
-  <!-- Bomb on test suites failures?
-       n = no, I want to build the full system and review the logs
-       y = yes, bomb at the first test suite failure to can review the build dir
-  -->
-  <xsl:param name="bomb-testsuite" select="n"/>
-
-  <!-- Time zone -->
-  <xsl:param name="timezone" select="GMT"/>
-
-  <!-- Page size -->
-  <xsl:param name="page" select="letter"/>
-
-  <!-- Locale settings -->
-  <xsl:param name="lang" select="C"/>
-
-  <!-- Sparc64 processor type -->
-  <xsl:param name="sparc" select="none"/>
-
-  <!-- x86 32 bit target triplet -->
-  <xsl:param name="x86" select="i686-pc-linux-gnu"/>
-
-  <!-- mips target triplet -->
-  <xsl:param name="mips" select="mips-unknown-linux-gnu"/>
-
-  <xsl:template match="/">
-    <xsl:apply-templates select="//sect1"/>
-  </xsl:template>
-
-  <xsl:template match="sect1">
-    <xsl:choose>
-      <xsl:when test="../@id='chapter-partitioning' or
-                      ../@id='chapter-getting-materials'"/>
-      <xsl:when test="../@id='chapter-testsuite-tools' and $testsuite='0'"/>
-      <xsl:when test="../@id='chapter-boot' and $method='chroot'"/>
-      <xsl:when test="../@id='chapter-chroot' and $method='boot'"/>
-      <xsl:otherwise>
-        <xsl:if test="count(descendant::screen/userinput) &gt; 0 and
-                      count(descendant::screen/userinput) &gt;
-                      count(descendant::screen[@role='nodump'])">
-            <!-- The dirs names -->
-          <xsl:variable name="pi-dir" select="../processing-instruction('dbhtml')"/>
-          <xsl:variable name="pi-dir-value" select="substring-after($pi-dir,'dir=')"/>
-          <xsl:variable name="quote-dir" select="substring($pi-dir-value,1,1)"/>
-          <xsl:variable name="dirname" select="substring-before(substring($pi-dir-value,2),$quote-dir)"/>
-            <!-- The file names -->
-          <xsl:variable name="pi-file" select="processing-instruction('dbhtml')"/>
-          <xsl:variable name="pi-file-value" select="substring-after($pi-file,'filename=')"/>
-          <xsl:variable name="filename" select="substring-before(substring($pi-file-value,2),'.html')"/>
-            <!-- The build order -->
-          <xsl:variable name="position" select="position()"/>
-          <xsl:variable name="order">
-            <xsl:choose>
-              <xsl:when test="string-length($position) = 1">
-                <xsl:text>00</xsl:text>
-                <xsl:value-of select="$position"/>
-              </xsl:when>
-              <xsl:when test="string-length($position) = 2">
-                <xsl:text>0</xsl:text>
-                <xsl:value-of select="$position"/>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:value-of select="$position"/>
-              </xsl:otherwise>
-            </xsl:choose>
-          </xsl:variable>
-            <!-- Creating dirs and files -->
-          <exsl:document href="{$dirname}/{$order}-{$filename}" method="text">
-            <xsl:choose>
-              <xsl:when test="@id='ch-chroot-changingowner' or
-                        @id='ch-chroot-creatingdirs' or
-                        @id='ch-chroot-createfiles' or
-                        @id='ch-system-stripping'">
-                <xsl:text>#!/tools/bin/bash&#xA;set +h&#xA;</xsl:text>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:text>#!/bin/bash&#xA;set +h&#xA;</xsl:text>
-              </xsl:otherwise>
-            </xsl:choose>
-            <xsl:if test="not(@id='ch-system-stripping')">
-              <xsl:text>set -e</xsl:text>
-            </xsl:if>
-            <xsl:text>&#xA;</xsl:text>
-            <xsl:if test="sect2[@role='installation'] and
-                          not(@id='ch-system-multiarch-wrapper')">
-              <xsl:text>cd $PKGDIR&#xA;</xsl:text>
-            </xsl:if>
-            <xsl:apply-templates select=".//para/userinput | .//screen"/>
-            <xsl:if test="not(@id='ch-chroot-chroot')">
-              <xsl:text>echo -e "\n\nTotalseconds: $SECONDS\n"&#xA;</xsl:text>
-            </xsl:if>
-            <xsl:text>exit</xsl:text>
-          </exsl:document>
-        </xsl:if>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="screen">
-    <xsl:if test="child::* = userinput and not(@role = 'nodump')">
-      <xsl:apply-templates select="userinput" mode="screen"/>
-    </xsl:if>
-  </xsl:template>
-
-  <xsl:template match="para/userinput">
-    <xsl:if test="(contains(string(),'test') or
-            contains(string(),'check')) and
-            not($testsuite = '2' or $testsuite = '3')">
-      <xsl:text># </xsl:text>
-    </xsl:if>
-    <xsl:choose>
-      <xsl:when test="$bomb-testsuite = 'n'">
-        <xsl:value-of select="substring-before(string(),'make')"/>
-        <xsl:text>make -k</xsl:text>
-        <xsl:value-of select="substring-after(string(),'make')"/>
-        <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-      </xsl:when>
-      <xsl:otherwise>
-        <xsl:apply-templates/>
-        <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1</xsl:text>
-        <xsl:if test="contains(string(),' -k ')">
-          <xsl:text> || true</xsl:text>
-        </xsl:if>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="userinput" mode="screen">
-    <xsl:choose>
-      <!-- Estandarized package formats -->
-      <xsl:when test="contains(string(),'tar.gz')">
-        <xsl:value-of select="substring-before(string(),'tar.gz')"/>
-        <xsl:text>tar.*</xsl:text>
-        <xsl:value-of select="substring-after(string(),'tar.gz')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Setting $LANG for /etc/profile -->
-      <xsl:when test="ancestor::sect1[@id='ch-scripts-profile'] and
-                contains(string(),'export LANG=')">
-        <xsl:value-of select="substring-before(string(),'export LANG=')"/>
-        <xsl:text>export LANG=</xsl:text>
-        <xsl:value-of select="$lang"/>
-        <xsl:value-of select="substring-after(string(),'charmap]')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Compile the keymap into the kernel has been disabled for 1.0 -->
-      <xsl:when test="contains(string(),'defkeymap')"/>
-      <!-- Copying the kernel config file -->
-      <xsl:when test="string() = 'make mrproper'">
-        <xsl:text>make mrproper&#xA;</xsl:text>
-        <xsl:if test="ancestor::sect1[@id='ch-boot-kernel']">
-          <xsl:text>cp -v ../bootkernel-config .config&#xA;</xsl:text>
-        </xsl:if>
-        <xsl:if test="ancestor::sect1[@id='ch-bootable-kernel']">
-          <xsl:text>cp -v ../kernel-config .config&#xA;</xsl:text>
-        </xsl:if>
-      </xsl:when>
-      <!-- No interactive commands are needed if the .config file is the proper one -->
-      <xsl:when test="contains(string(),'menuconfig')"/>
-<!-- test instructions -->
-      <xsl:when test="@remap = 'test'">
-        <xsl:if test="not(ancestor::note[@os='a00'] and $method='chroot')">
-       <!-- Avoid executing the note before perl tests while in 'chroot' -->
-          <xsl:if test="
-              $testsuite = '0' or
-              $testsuite = '1' and
-                not(ancestor::sect1[@id='ch-system-gcc']) and
-                not(ancestor::sect1[contains(@id,'ch-system-eglibc')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-glibc')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-gmp')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-mpfr')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-mpc')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-ppl')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-isl')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-cloog')]) and
-                not(ancestor::sect1[contains(@id,'ch-system-cloog-ppl')]) and
-                not(ancestor::sect1[@id='ch-system-binutils'])">
-            <xsl:text># </xsl:text>
-          </xsl:if>
-          <xsl:choose>
-            <xsl:when test="$bomb-testsuite = 'n'">
-              <xsl:choose>
-                <!-- special case for (e)glibc -->
-                <xsl:when test="contains(string(), 'glibc-check-log')">
-                  <xsl:value-of
-                     select="substring-before(string(),'2&gt;&amp;1')"/>
-                  <xsl:text>&gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-                </xsl:when>
-                <!-- special case for procps-ng -->
-                <xsl:when test="contains(string(), 'pushd')">
-                  <xsl:text>{ </xsl:text>
-                  <xsl:apply-templates/>
-                  <xsl:text>; } &gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(string(), 'make -k')">
-                  <xsl:apply-templates/>
-                  <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(string(), 'make')">
-                  <xsl:value-of select="substring-before(string(),'make')"/>
-                  <xsl:text>make -k</xsl:text>
-                  <xsl:value-of select="substring-after(string(),'make')"/>
-                  <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-                </xsl:when>
-                <xsl:otherwise>
-                  <xsl:apply-templates/>
-                  <xsl:if test="not(contains(string(), '&gt;&gt;'))">
-                    <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1</xsl:text>
-                  </xsl:if>
-                  <xsl:text>&#xA;</xsl:text>
-                </xsl:otherwise>
-              </xsl:choose>
-            </xsl:when>
-            <xsl:otherwise>
-              <!-- bomb-testsuite != 'n'-->
-              <xsl:choose>
-                <!-- special case for (e)glibc -->
-                <xsl:when test="contains(string(), 'glibc-check-log')">
-                  <xsl:value-of
-                     select="substring-before(string(),'2&gt;&amp;1')"/>
-                  <xsl:text>&gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-                </xsl:when>
-                <!-- special case for gmp -->
-                <xsl:when test="contains(string(), 'tee gmp-check-log')">
-                  <xsl:text>(</xsl:text>
-                  <xsl:apply-templates/>
-                  <xsl:text>&gt;&gt; $TEST_LOG 2&gt;&amp;1 &amp;&amp; exit $PIPESTATUS)&#xA;</xsl:text>
-                </xsl:when>
-                <!-- special case for procps-ng -->
-                <xsl:when test="contains(string(), 'pushd')">
-                  <xsl:text>{ </xsl:text>
-                  <xsl:apply-templates/>
-                  <xsl:text>; } &gt;&gt; $TEST_LOG 2&gt;&amp;1&#xA;</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(string(), 'make -k')">
-                  <xsl:apply-templates/>
-                  <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-                </xsl:when>
-                <xsl:otherwise>
-                  <xsl:apply-templates/>
-                  <xsl:if test="not(contains(string(), '&gt;&gt;'))">
-                    <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1</xsl:text>
-                  </xsl:if>
-                  <xsl:text>&#xA;</xsl:text>
-                </xsl:otherwise>
-              </xsl:choose>
-            </xsl:otherwise>
-          </xsl:choose>
-        </xsl:if><!-- avoid executing note before perl tests -->
-      </xsl:when>
-<!-- End of test instructions -->
-
-      <!-- Fixing toolchain test suites run XXX more to fix -->
-      <xsl:when test="contains(string(),'glibc-check-log')">
-        <xsl:choose>
-          <xsl:when test="$testsuite != '0'">
-            <xsl:value-of select="substring-before(string(),'2&gt;')"/>
-            <xsl:choose>
-              <xsl:when test="$bomb-testsuite = 'n'">
-                <xsl:text>&gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:text>&gt;&gt; $TEST_LOG 2&gt;&amp;1</xsl:text>
-                <xsl:if test="contains(string(),' -k ')">
-                  <xsl:text> || true</xsl:text>
-                </xsl:if>
-                <xsl:text>&#xA;</xsl:text>
-              </xsl:otherwise>
-            </xsl:choose>
-          </xsl:when>
-        </xsl:choose>
-      </xsl:when>
-      <xsl:when test="string() = 'make check' or
-                contains(string(), 'make -k check')">
-        <xsl:choose>
-          <xsl:when test="$testsuite != '0'">
-            <xsl:choose>
-              <xsl:when test="$bomb-testsuite = 'n'">
-                <xsl:text>make -k check &gt;&gt; $TEST_LOG 2&gt;&amp;1 || true&#xA;</xsl:text>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:apply-templates/>
-                <xsl:text> &gt;&gt; $TEST_LOG 2&gt;&amp;1</xsl:text>
-                <xsl:if test="contains(string(),' -k ')">
-                  <xsl:text> || true</xsl:text>
-                </xsl:if>
-                <xsl:text>&#xA;</xsl:text>
-              </xsl:otherwise>
-            </xsl:choose>
-          </xsl:when>
-        </xsl:choose>
-      </xsl:when>
-      <xsl:when test="contains(string(),'test_summary') or
-                contains(string(),'expect -c')">
-        <xsl:choose>
-          <xsl:when test="$testsuite != '0'">
-            <xsl:apply-templates/>
-            <xsl:text> &gt;&gt; $TEST_LOG&#xA;</xsl:text>
-          </xsl:when>
-        </xsl:choose>
-      </xsl:when>
-      <!-- Don't stop on strip run -->
-      <xsl:when test="contains(string(),'strip ')">
-        <xsl:apply-templates/>
-        <xsl:text> || true&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Add -j1 to make install commands -->
-      <xsl:when test="contains(string(),'make ') and
-                      contains(string(),'install')">
-        <xsl:value-of select="substring-before(string(),'make ')"/>
-        <xsl:text>make -j1 </xsl:text>
-        <xsl:value-of select="substring-after(string(),'make ')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- The rest of commands -->
-      <xsl:otherwise>
-        <xsl:apply-templates/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="replaceable">
-    <xsl:choose>
-      <xsl:when test="ancestor::sect1[@id='ch-system-glibc']">
-        <xsl:value-of select="$timezone"/>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-system-eglibc']">
-        <xsl:value-of select="$timezone"/>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-system-groff']">
-        <xsl:value-of select="$page"/>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-cross-tools-flags']">
-        <xsl:choose>
-          <xsl:when test="contains(string(),'BUILD32')">
-            <xsl:choose>
-              <xsl:when test="$sparc = '1' or $sparc = '2'">
-                <xsl:text>-m32 -mcpu=ultrasparc -mtune=ultrasparc</xsl:text>
-              </xsl:when>
-              <xsl:when test="$sparc = '3'">
-                <xsl:text>-m32 -mcpu=ultrasparc3 -mtune=ultrasparc3</xsl:text>
-              </xsl:when>
-            </xsl:choose>
-          </xsl:when>
-          <xsl:when test="contains(string(),'BUILD64')">
-            <xsl:choose>
-              <xsl:when test="$sparc = '1' or $sparc = '2'">
-                <xsl:text>-m64 -mcpu=ultrasparc -mtune=ultrasparc</xsl:text>
-              </xsl:when>
-              <xsl:when test="$sparc = '3'">
-                <xsl:text>-m64 -mcpu=ultrasparc3 -mtune=ultrasparc3</xsl:text>
-              </xsl:when>
-            </xsl:choose>
-          </xsl:when>
-          <xsl:when test="contains(string(),'GCCTARGET')">
-            <xsl:choose>
-              <xsl:when test="$sparc = '1' or $sparc = '2'">
-                <xsl:text>-mcpu=ultrasparc -mtune=ultrasparc</xsl:text>
-              </xsl:when>
-              <xsl:when test="$sparc = '3'">
-                <xsl:text>-mcpu=ultrasparc3 -mtune=ultrasparc3</xsl:text>
-              </xsl:when>
-            </xsl:choose>
-          </xsl:when>
-        </xsl:choose>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-final-preps-variables']">
-        <xsl:choose>
-          <xsl:when test="contains(string(),'target triplet')">
-            <xsl:value-of select="$x86"/>
-          </xsl:when>
-          <xsl:when test="contains(string(),'mips')">
-            <xsl:value-of select="$mips"/>
-          </xsl:when>
-          <xsl:when test="contains(string(),'BUILD32')">
-            <xsl:choose>
-              <xsl:when test="$sparc = '1' or $sparc = '2'">
-                <xsl:text>-m32 -mcpu=ultrasparc -mtune=ultrasparc</xsl:text>
-              </xsl:when>
-              <xsl:when test="$sparc = '3'">
-                <xsl:text>-m32 -mcpu=ultrasparc3 -mtune=ultrasparc3</xsl:text>
-              </xsl:when>
-            </xsl:choose>
-          </xsl:when>
-          <xsl:when test="contains(string(),'BUILD64')">
-            <xsl:choose>
-              <xsl:when test="$sparc = '1' or $sparc = '2'">
-                <xsl:text>-m64 -mcpu=ultrasparc -mtune=ultrasparc</xsl:text>
-              </xsl:when>
-              <xsl:when test="$sparc = '3'">
-                <xsl:text>-m64 -mcpu=ultrasparc3 -mtune=ultrasparc3</xsl:text>
-              </xsl:when>
-            </xsl:choose>
-          </xsl:when>
-          <xsl:when test="contains(string(),'GCCTARGET')">
-            <xsl:choose>
-              <xsl:when test="$sparc = '1' or $sparc = '2'">
-                <xsl:text>-mcpu=ultrasparc -mtune=ultrasparc</xsl:text>
-              </xsl:when>
-              <xsl:when test="$sparc = '3'">
-                <xsl:text>-mcpu=ultrasparc3 -mtune=ultrasparc3</xsl:text>
-              </xsl:when>
-            </xsl:choose>
-          </xsl:when>
-        </xsl:choose>
-      </xsl:when>
-      <xsl:otherwise>
-        <xsl:text>**EDITME</xsl:text>
-        <xsl:apply-templates/>
-        <xsl:text>EDITME**</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-</xsl:stylesheet>
diff --git a/CLFS/master.sh b/CLFS/master.sh
deleted file mode 100644
index 5914ae1..0000000
--- a/CLFS/master.sh
+++ /dev/null
@@ -1,1264 +0,0 @@
-#!/bin/bash
-
-orphan_scripts="" # 2 scripts do not fit BOOT_Makefiles LUSER environment
-
-
-#--------------------------------------#
-host_prep_Makefiles() {                #
-#--------------------------------------#
-  local   CLFS_HOST
-
-  echo "${tab_}${GREEN}Processing... ${L_arrow}host prep files  ( SETUP ) ${R_arrow}"
-
-  # defined here, only for ease of reading
-  CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")"
-(
-cat << EOF
-023-creatingtoolsdir:
-	@\$(call echo_message, Building)
-	@install -dv \$(MOUNT_PT)/tools && \\
-	rm -f /tools && \\
-	ln -s \$(MOUNT_PT)/tools /
-	@\$(call housekeeping)
-
-024-creatingcrossdir: 023-creatingtoolsdir
-	@\$(call echo_message, Building)
-	@install -dv \$(MOUNT_PT)/cross-tools && \\
-	rm -f /cross-tools && \\
-	ln -s \$(MOUNT_PT)/cross-tools /
-	@\$(call housekeeping)
-
-025-addinguser:  024-creatingcrossdir
-	@\$(call echo_message, Building)
-	@if [ ! -d \$(LUSER_HOME) ]; then \\
-	    groupadd \$(LGROUP); \\
-	    useradd -s /bin/bash -g \$(LGROUP) -d \$(LUSER_HOME) \$(LUSER); \\
-	    mkdir -pv \$(LUSER_HOME); \\
-	    chown -v \$(LUSER):\$(LGROUP) \$(LUSER_HOME); \\
-	else \\
-	    touch luser-exist; \\
-	fi
-	@chown -v \$(LUSER) \$(MOUNT_PT)/tools && \\
-	chown -v \$(LUSER) \$(MOUNT_PT)/cross-tools && \\
-	chmod -R a+wt \$(MOUNT_PT)/\$(SCRIPT_ROOT) && \\
-	chmod a+wt \$(SRCSDIR)
-	@\$(call housekeeping)
-
-026-settingenvironment:  025-addinguser
-	@\$(call echo_message, Building)
-	@if [ -f \$(LUSER_HOME)/.bashrc -a ! -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bashrc \$(LUSER_HOME)/.bashrc.XXX; \\
-	fi
-	@if [ -f \$(LUSER_HOME)/.bash_profile  -a ! -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bash_profile \$(LUSER_HOME)/.bash_profile.XXX; \\
-	fi;
-	@echo "set +h" > \$(LUSER_HOME)/.bashrc && \\
-	echo "umask 022" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "CLFS=\$(MOUNT_PT)" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "LC_ALL=POSIX" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "PATH=/cross-tools/bin:/bin:/usr/bin" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS LC_ALL PATH" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset CFLAGS" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset CXXFLAGS" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset PKG_CONFIG_PATH" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "" >> \$(LUSER_HOME)/.bashrc && \\
-EOF
-) >> $MKFILE.tmp
-if ! [ -e final-preps/*variables ]; then
-  (
-  cat << EOF
-	echo "export CLFS_HOST=\"${CLFS_HOST}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_TARGET=\"${TARGET}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_TARGET32=\"${TARGET32}\"" >> \$(LUSER_HOME)/.bashrc && \\
-EOF
-  ) >> $MKFILE.tmp
-fi
-(
-cat << EOF
-	echo "source $JHALFSDIR/envars" >> \$(LUSER_HOME)/.bashrc
-	@chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bashrc && \\
-	chmod a+wt \$(MOUNT_PT) && \\
-	if [ -d \$(MOUNT_PT)/var ]; then \\
-	  chown -R \$(LUSER) \$(MOUNT_PT)/var; \\
-	fi && \\
-	touch envars && \\
-	chown \$(LUSER):\$(LGROUP) envars
-	@\$(call housekeeping)
-EOF
-) >> $MKFILE.tmp
-  host_prep=" 023-creatingtoolsdir 024-creatingcrossdir 026-settingenvironment"
-
-}
-
-#--------------------------------------#
-final_preps_Makefiles() {
-#--------------------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}variables  ( LUSER ) ${R_arrow}"
-  for file in final-preps/* ; do
-    this_script=`basename $file`
-    case $this_script in
-      *variables )
-         ;;
-      *) continue; ;;
-    esac
-    # Set the dependency for the first target.
-    if [ -z $PREV ] ; then PREV=026-settingenvironment ; fi
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    final_preps="$final_preps $this_script"
-
-    # No need to grab the package name
-
-    LUSER_wrt_target "${this_script}" "$PREV"
-    LUSER_wrt_RunAsUser "${file}"
-    wrt_touch
-    PREV=$this_script
-  done # for file in ....
-}
-
-#--------------------------------------#
-cross_tools_Makefiles() {              #
-#--------------------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}cross tools  ( LUSER ) ${R_arrow}"
-
-  for file in cross-tools/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-    #
-    # Skip this script...
-    case $this_script in
-      *cflags* | *variables* )  # work done in host_prep_Makefiles
-         continue; ;;
-      *) ;;
-    esac
-    #
-    # Set the dependency for the first target.
-    if [ -z $PREV ] ; then PREV=026-settingenvironment ; fi
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    cross_tools="$cross_tools $this_script"
-
-    # Grab the name of the target (minus the -headers or -cross in the case of gcc
-    # and binutils in chapter 5)
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \
-                                  -e 's@-static@@' \
-                                  -e 's@-final@@' \
-                                  -e 's@-64@@' \
-                                  -e 's@-n32@@' \
-                                  -e 's@-pass1@@'`
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_wrt_unpack "$pkg_tarball"
-    [[ "$pkg_tarball" != "" ]] && [[ "$OPTIMIZE" = 3 ]] && wrt_makeflags "${name}"
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done # for file in ....
-}
-
-#--------------------------------------#
-temptools_Makefiles() {                #
-#--------------------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}temp system  ( LUSER ) ${R_arrow}"
-
-  for file in temp-system/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-    #
-    #  Deal with any odd scripts..
-    case $this_script in
-      *choose) # The choose script will fail if you cannot enter the new environment
-               # If the 'boot' build method was chosen don't run the script
-         [[ $METHOD = "boot" ]] && continue; ;;
-      *) ;;
-    esac
-
-    #
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    temptools="$temptools $this_script"
-
-    #
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'`
-    #
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    # Insert instructions for unpacking the package and to set the PKGDIR variable.
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_wrt_unpack "$pkg_tarball"
-    [[ "$pkg_tarball" != "" ]] && [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-  done # for file in ....
-}
-
-
-#--------------------------------------#
-chroot_Makefiles() {                   #
-#--------------------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}tmptools CHROOT        ( CHROOT ) ${R_arrow}"
-
-  for file in chroot/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-    #
-    # Skipping scripts is done now and not included in the build tree.
-    case $this_script in
-      *chroot*) continue ;;
-    esac
-
-    #
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    case "${this_script}" in
-      *kernfs)     orphan_scripts="${orphan_scripts} ${this_script}"  ;;
-      *)           chroottools="$chroottools $this_script"            ;;
-    esac
-
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'`
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    # This is very ugly:: util-linux is in /chroot but must be run under LUSER
-    # Same for e2fsprogs (in CLFS 1.1.0)
-    # .. Customized makefile entry
-    case "${this_script}" in
-      *util-linux)
-         LUSER_wrt_target "${this_script}" "$PREV"
-         LUSER_wrt_unpack "$pkg_tarball"
-         [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-         LUSER_wrt_RunAsUser "${file}"
-         LUSER_RemoveBuildDirs "${name}"
-         wrt_touch
-         temptools="$temptools $this_script"
-         continue ;;
-      *util-linux-ng)
-         LUSER_wrt_target "${this_script}" "$PREV"
-         LUSER_wrt_unpack "$pkg_tarball"
-         [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-         LUSER_wrt_RunAsUser "${file}"
-         LUSER_RemoveBuildDirs "${name}"
-         wrt_touch
-         temptools="$temptools $this_script"
-         continue ;;
-      *util-linux-libs)
-         LUSER_wrt_target "${this_script}" "$PREV"
-         LUSER_wrt_unpack "$pkg_tarball"
-         [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-         LUSER_wrt_RunAsUser "${file}"
-         LUSER_RemoveBuildDirs "${name}"
-         wrt_touch
-         temptools="$temptools $this_script"
-         continue ;;
-      *e2fsprogs)
-         LUSER_wrt_target "${this_script}" "$PREV"
-         LUSER_wrt_unpack "$pkg_tarball"
-         [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-         LUSER_wrt_RunAsUser "${file}"
-         LUSER_RemoveBuildDirs "${name}"
-         wrt_touch
-         temptools="$temptools $this_script"
-         continue ;;
-      *e2fsprogs-libs)
-         LUSER_wrt_target "${this_script}" "$PREV"
-         LUSER_wrt_unpack "$pkg_tarball"
-         [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-         LUSER_wrt_RunAsUser "${file}"
-         LUSER_RemoveBuildDirs "${name}"
-         wrt_touch
-         temptools="$temptools $this_script"
-         continue ;;
-     esac
-
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    CHROOT_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    # Insert instructions for unpacking the package and changing directories
-    #
-    if [ "$pkg_tarball" != "" ] ; then
-      CHROOT_Unpack "$pkg_tarball"
-      [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    fi
-    #
-    # Select a script execution method
-    case $this_script in
-      *kernfs)      wrt_RunAsRoot         "${file}"  ;;
-      *)            CHROOT_wrt_RunAsRoot  "${file}"  ;;
-    esac
-    #
-    # Housekeeping...remove the build directory(ies), except if the package build fails.
-    [[ "$pkg_tarball" != "" ]] && CHROOT_wrt_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done # for file in...
-}
-
-
-#--------------------------------------#
-boot_Makefiles() {                     #
-#--------------------------------------#
-
-  echo "${tab_}${GREEN}Processing... ${L_arrow}tmptools BOOT  ( LUSER ) ${R_arrow}"
-  #
-  # Create a target bootable partition containing a compile environment. Later
-  #  on we boot into this environment and contine the build.
-  #
-  for file in boot/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # A little housekeeping on the scripts
-    case $this_script in
-      *grub | *aboot | *colo | *silo | *arcload | *lilo | *introduction ) continue ;;
-      *how-to-view*) continue  ;;
-      *whatnext*) continue     ;;
-      *fstab)   [[ -z "${FSTAB}" ]] ||
-                [[ ${FSTAB} == $BUILDDIR/sources/fstab ]] ||
-                cp ${FSTAB} $BUILDDIR/sources/fstab ;;
-      *kernel)  # if there is no kernel config file do not build the kernel
-                [[ -z $BOOT_CONFIG ]] && continue
-                  # Copy the config file to /sources with a standardized name
-                [[ ${BOOT_CONFIG} == $BUILDDIR/sources/bootkernel-config ]] ||
-                cp $BOOT_CONFIG $BUILDDIR/sources/bootkernel-config
-          ;;
-    esac
-    #
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile). Those names differ depending
-    # on the version of the book. What makes the difference between those
-    # versions is the presence of "how-to-view" in the boot chapter.
-    if [ -f boot/*how-to-view ]; then
-      case "${this_script}" in
-        *changingowner)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *creatingdirs)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *createfiles)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *devices)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *flags)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *fstab)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *pwdgroup)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *settingenvironment)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *)
-           boottools="$boottools $this_script"
-           ;;
-      esac
-    else
-      case "${this_script}" in
-        *changingowner)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *devices)
-           orphan_scripts="${orphan_scripts} ${this_script}"
-           ;;
-        *)
-           boottools="$boottools $this_script"
-           ;;
-      esac
-    fi
-    #
-    # Grab the name of the target, strip id number and misc words.
-    case $this_script in
-      *kernel)        name=linux                    ;;
-      *bootscripts)   name="bootscripts-cross-lfs"  ;;
-      *boot-scripts)  name="boot-scripts-cross-lfs" ;;
-      *udev-rules)    name="udev-cross-lfs"         ;;
-      *grub-build)    name=grub                     ;;
-      *-aboot-build)  name=aboot                    ;;
-      *yaboot-build)  name=yaboot                   ;;
-      *colo-build)    name=colo                     ;;
-      *silo-build)    name=silo                     ;;
-      *arcload-build) name=arcload                  ;;
-      *lilo-build)    name=lilo                     ;;
-      *)              name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' ` ;;
-    esac
-      # Identify the unique version naming scheme for the clfs bootscripts..(bad boys)
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    # Insert instructions for unpacking the package and changing directories
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_wrt_unpack "$pkg_tarball"
-    [[ "$pkg_tarball" != "" ]] && [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    #
-    # Select a script execution method
-    if [ -f boot/*how-to-view ]; then
-      case $this_script in
-        # The following 8 scripts are defined in the /boot directory but need
-        # to be run as a root user. Set them up here but run them in another
-        # phase
-        *changingowner)      wrt_RunAsRoot "${file}"    ;;
-        *creatingdirs)       wrt_RunAsRoot "${file}"    ;;
-        *createfiles)        wrt_RunAsRoot "${file}"    ;;
-        *devices)            wrt_RunAsRoot "${file}"    ;;
-        *flags)              wrt_RunAsRoot "${file}"    ;;
-        *fstab)
-           if [[ -n "$FSTAB" ]]; then
-               LUSER_wrt_CopyFstab
-           else
-               wrt_RunAsRoot  "${file}"
-           fi
-           ;;
-        *pwdgroup)           wrt_RunAsRoot "${file}"    ;;
-        *settingenvironment) wrt_RunAsRoot "${file}"    ;;
-        *)               LUSER_wrt_RunAsUser  "${file}" ;;
-      esac
-    else
-      case $this_script in
-        # The following 2 scripts are defined in the /boot directory but need
-        # to be run as a root user. Set them up here but run them in another
-        # phase
-        *changingowner)   wrt_RunAsRoot "${file}"    ;;
-        *devices)         wrt_RunAsRoot "${file}"    ;;
-        *fstab)
-           if [[ -n "${FSTAB}" ]]; then
-               LUSER_wrt_CopyFstab
-           else
-               LUSER_wrt_RunAsUser  "${file}"
-           fi
-           ;;
-        *)            LUSER_wrt_RunAsUser  "${file}" ;;
-      esac
-    fi
-    #
-    # Housekeeping...remove any build directory(ies) except if the package build fails.
-    [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done
-}
-
-
-#--------------------------------------#
-testsuite_tools_Makefiles() {          #
-#--------------------------------------#
-
-  if [[ "${METHOD}" = "chroot" ]]; then
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) testsuite tools  ( CHROOT ) ${R_arrow}"
-  else
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) testsuite tools ( ROOT ) ${R_arrow}"
-    PREV=""
-  fi
-
-  for file in testsuite-tools/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    testsuitetools="$testsuitetools $this_script"
-
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'\
-                                  -e 's@-64bit@@' \
-                                  -e 's@-64@@' \
-                                  -e 's@64@@' \
-                                  -e 's@n32@@'`
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    CHROOT_wrt_target "${this_script}" "$PREV"
-    #
-    CHROOT_Unpack "$pkg_tarball"
-    [[ "$OPTIMIZE" -ge "2" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    #
-    CHROOT_wrt_RunAsRoot "${file}"
-    #
-    CHROOT_wrt_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done
-}
-
-
-#--------------------------------------#
-final_system_Makefiles() {             #
-#--------------------------------------#
-  # Set envars and scripts for iteration targets
-  if [[ -z "$1" ]] ; then
-    local N=""
-    # In boot method the makesys phase was initiated in testsuite_tools_makefile
-    [[ "${METHOD}" = "boot" ]] && [[ "$TEST" = 0 ]] && PREV=""
-  else
-    local N=-build_$1
-    local basicsystem=""
-    mkdir final-system$N
-    cp final-system/* final-system$N
-    for script in final-system$N/* ; do
-      # Overwrite existing symlinks, files, and dirs
-      sed -e 's/ln -sv/&f/g' \
-          -e 's/mv -v/&f/g' \
-          -e 's/mkdir -v/&p/g' -i ${script}
-      # Rename the scripts
-      mv ${script} ${script}$N
-    done
-    # Remove Bzip2 binaries before make install (CLFS-1.0 compatibility)
-    sed -e 's@make install@rm -vf /usr/bin/bz*\n&@' -i final-system$N/*-bzip2$N
-    # Delete *old Readline libraries just after make install
-    sed -e 's@make install@&\nrm -v /lib/lib{history,readline}*old@' -i final-system$N/*-readline$N
-  fi
-
-  if [[ "${METHOD}" = "chroot" ]]; then
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) final system$N ( CHROOT ) ${R_arrow}"
-  else
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) final system$N  ( ROOT ) ${R_arrow}"
-  fi
-
-  for file in final-system$N/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # Test if the stripping phase must be skipped.
-    # Skip also temp-perl for iterative runs
-    case $this_script in
-      *stripping*) [[ "$STRIP" = "n" ]] && continue ;;
-      *temp-perl*) [[ -n "$N" ]] && continue ;;
-    esac
-
-    # Grab the name of the target, strip id number, XXX-script.
-    # name1 is partially stripped and should be used for logging files.
-    # name is completely stripped and is used for grabbing
-    # the package name.
-    name1=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \
-                                   -e 's,'$N',,'`
-    name=`echo $name1 | sed -e 's@temp-@@' \
-                            -e 's@-64bit@@' \
-                            -e 's@-64@@' \
-                            -e 's@64@@' \
-                            -e 's@n32@@'`
-
-    # Find the version of the command files, if it corresponds with the building of
-    # a specific package. We need this here to can skip scripts not needed for
-    # iterations rebuilds
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    if [[ "$pkg_tarball" = "" ]] && [[ -n "$N" ]] ; then
-      case "${this_script}" in
-        *stripping*) ;;
-        *)  continue ;;
-      esac
-    fi
-
-    # Append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    basicsystem="$basicsystem ${this_script}"
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    CHROOT_wrt_target "${this_script}" "$PREV"
-
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      # Touch timestamp file if installed files logs will be created.
-      # But only for the firt build when running iterative builds.
-      if [ "${INSTALL_LOG}" = "y" ] && [ "x${N}" = "x" ] ; then
-        CHROOT_wrt_TouchTimestamp
-      fi
-      CHROOT_Unpack "$pkg_tarball"
-      # If the testsuites must be run, initialize the log file
-      case $name in
-        binutils | gcc | glibc | eglibc | gmp | mpfr | mpc | isl | cloog )
-          [[ "$TEST" != "0" ]] && CHROOT_wrt_test_log "${this_script}"
-          ;;
-        * )
-          [[ "$TEST" = "2" ]] || [[ "$TEST" = "3" ]] && CHROOT_wrt_test_log "${this_script}"
-          ;;
-      esac
-      # If using optimizations, write the instructions
-      [[ "$OPTIMIZE" != "0" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    fi
-    #
-    CHROOT_wrt_RunAsRoot  "${file}"
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      CHROOT_wrt_RemoveBuildDirs "$name"
-      if [ "${INSTALL_LOG}" = "y" ] && [ "x${N}" = "x" ] ; then
-        CHROOT_wrt_LogNewFiles "$name1"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check
-    # if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=${this_script}
-    # Set system_build envar for iteration targets
-    system_build=$basicsystem
-  done  # for file in final-system/* ...
-}
-
-#--------------------------------------#
-bootscripts_Makefiles() {              #
-#--------------------------------------#
-
-# New versions of the book do not have bootscripts anymore
-# (use systemd configuration files)
-# Define a variable to be used for the right script directory to parse
-  if [ -d bootscripts ]; then
-    config="bootscripts"
-  else
-    config="system-config"
-  fi
-
-  if [[ "${METHOD}" = "chroot" ]]; then
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) $config   ( CHROOT ) ${R_arrow}"
-  else
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) $config     ( ROOT ) ${R_arrow}"
-  fi
-
-  for file in $config/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    case $this_script in
-      *udev)     continue ;; # This is not a script but a comment, we want udev-rules
-      *console*) continue ;; # Use the files that came with the bootscripts
-# fstab is now here (for 3.x.y)
-      *fstab)  [[ -z "${FSTAB}" ]] ||
-               [[ ${FSTAB} == $BUILDDIR/sources/fstab ]] ||
-               cp ${FSTAB} $BUILDDIR/sources/fstab ;;
-      *)  ;;
-    esac
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    bootscripttools="$bootscripttools $this_script"
-
-    # Grab the name of the target, strip id number, XXX-script.
-    # name1 is partially stripped and should be used for logging files.
-    # name is completely stripped and is used for grabbing
-    # the package name.
-    name1=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'`
-    name=`echo $name1 | sed -e 's@-64bit@@' \
-                            -e 's@-64@@' \
-                            -e 's@64@@' \
-                            -e 's@n32@@'`
-    case $name in
-      *bootscripts*) name=bootscripts-cross-lfs ;;
-      *udev-rules)   name=udev-cross-lfs ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    CHROOT_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    #
-    if [ "$pkg_tarball" != "" ] ; then
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        CHROOT_wrt_TouchTimestamp
-      fi
-      CHROOT_Unpack "$pkg_tarball"
-    fi
-    #
-    case $this_script in
-      *fstab*)   if [[ -n "$FSTAB" ]]; then
-                   CHROOT_wrt_CopyFstab
-                 else
-                   CHROOT_wrt_RunAsRoot  "${file}"
-                 fi
-        ;;
-      *) CHROOT_wrt_RunAsRoot "${file}"
-        ;;
-    esac
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      CHROOT_wrt_RemoveBuildDirs "$name"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        CHROOT_wrt_LogNewFiles "$name1"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done  # for file in bootscripts/* ...
-}
-
-#--------------------------------------#
-network_Makefiles() {                  #
-#--------------------------------------#
-
-  if [[ "${METHOD}" = "chroot" ]]; then
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) network   ( CHROOT ) ${R_arrow}"
-  else
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) network     ( ROOT ) ${R_arrow}"
-  fi
-
-  for file in network/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    case $this_script in
-      *choose)   continue ;; # This is not a script but a commentary.
-      *dhcp)    continue ;; # Assume static networking.
-      *dhcpcd)    continue ;; # Assume static networking.
-      *)  ;;
-    esac
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    networktools="$networktools $this_script"
-
-    # Grab the name of the target, strip id number, XXX-script
-    # name1 is partially stripped and should be used for logging files.
-    # name is completely stripped and is used for grabbing
-    # the package name.
-    name1=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'`
-    name=`echo $name1 | sed -e 's@-64bit@@' \
-                            -e 's@-64@@' \
-                            -e 's@64@@' \
-                            -e 's@n32@@'`
-    case $name in
-      network-scripts) name=clfs-network-scripts ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    CHROOT_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    #
-    if [ "$pkg_tarball" != "" ] ; then
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        CHROOT_wrt_TouchTimestamp
-      fi
-      CHROOT_Unpack "$pkg_tarball"
-    fi
-    #
-    CHROOT_wrt_RunAsRoot "${file}"
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      CHROOT_wrt_RemoveBuildDirs "$name"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        CHROOT_wrt_LogNewFiles "$name1"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done  # for file in network/* ...
-}
-
-#--------------------------------------#
-bootable_Makefiles() {                 #
-#--------------------------------------#
-
-  if [[ "${METHOD}" = "chroot" ]]; then
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) make bootable ( CHROOT ) ${R_arrow}"
-  else
-    echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) make bootable   ( ROOT ) ${R_arrow}"
-  fi
-
-
-  for file in bootable/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # A little housekeeping on the scripts
-    case $this_script in
-      *grub | *aboot | *colo | *silo | *arcload | *lilo | *reboot* )  continue ;;
-      *fstab)  [[ -z "${FSTAB}" ]] ||
-               [[ ${FSTAB} == $BUILDDIR/sources/fstab ]] ||
-               cp ${FSTAB} $BUILDDIR/sources/fstab ;;
-      *kernel) # if there is no kernel config file do not build the kernel
-               [[ -z $CONFIG ]] && continue
-                 # Copy the config file to /sources with a standardized name
-               [[ $CONFIG == $BUILDDIR/sources/kernel-config ]] ||
-               cp $CONFIG $BUILDDIR/sources/kernel-config
-        ;;
-    esac
-    #
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    bootabletools="$bootabletools $this_script"
-    #
-    # Grab the name of the target, strip id number and misc words.
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' `
-    case $this_script in
-      *kernel*) name=linux
-       ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    CHROOT_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    # Insert instructions for unpacking the package and changing directories
-    #
-    if [ "$pkg_tarball" != "" ] ; then
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        CHROOT_wrt_TouchTimestamp
-      fi
-      CHROOT_Unpack "$pkg_tarball"
-    fi
-    #
-    # Select a script execution method
-    case $this_script in
-      *fstab*)   if [[ -n "$FSTAB" ]]; then
-                   CHROOT_wrt_CopyFstab
-                 else
-                   CHROOT_wrt_RunAsRoot  "${file}"
-                 fi
-        ;;
-      *)  CHROOT_wrt_RunAsRoot  "${file}"
-        ;;
-    esac
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      CHROOT_wrt_RemoveBuildDirs "$name"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        CHROOT_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done
-
-}
-
-
-#--------------------------------------#
-build_Makefile() {                     # Construct a Makefile from the book scripts
-#--------------------------------------#
-
-  echo "...Creating Makefile... ${BOLD}START${OFF}"
-
-  cd $JHALFSDIR/${PROGNAME}-commands
-  # Start with clean files
-  >$MKFILE
-  >$MKFILE.tmp
-
-  method_cmds=${METHOD}_Makefiles
-
-  host_prep_Makefiles        # mk_SETUP      (SETUP)  $host_prep
-  final_preps_Makefiles      # mk_F_PREPS    (LUSER)  $final_preps
-  cross_tools_Makefiles      # mk_CROSS      (LUSER)  $cross_tools
-  temptools_Makefiles        # mk_TEMP       (LUSER)  $temptools
-  $method_cmds               # mk_SYSTOOLS   (CHROOT) $chroottools/$boottools
-  if [[ ! $TEST = "0" ]]; then
-    testsuite_tools_Makefiles    # mk_SYSTOOLS   (CHROOT) $testsuitetools
-  fi
-  final_system_Makefiles         # mk_FINAL      (CHROOT) $basicsystem
-    # Add the iterations targets, if needed
-  [[ "$COMPARE" = "y" ]] && wrt_compare_targets
-  bootscripts_Makefiles          # mk_BOOTSCRIPT (CHROOT) $bootscripttools
-  if [ -d network ]; then
-     network_Makefiles           # If present, process network setup.
-  fi
-  bootable_Makefiles             # mk_BOOTABLE   (CHROOT) $bootabletools
-
-  # Add the CUSTOM_TOOLS targets, if needed
-  [[ "$CUSTOM_TOOLS" = "y" ]] && wrt_CustomTools_target
-
-  # Add a header, some variables and include the function file
-  # to the top of the real Makefile.
-  wrt_Makefile_header
-
-  # Add chroot commands
-  if [ "$METHOD" = "chroot" ] ; then
-    CHROOT_LOC="`whereis -b chroot | cut -d " " -f2`"
-    chroot=`cat chroot/???-chroot | \
-            sed  -e "s@chroot@$CHROOT_LOC@" \
-                 -e '/#!\/bin\/bash/d' \
-                 -e '/^export/d' \
-                 -e '/^logout/d' \
-                 -e 's@ \\\@ @g' | \
-            tr -d '\n' |  \
-            sed -e 's/  */ /g' \
-                -e 's|\\$|&&|g' \
-                -e 's|exit||g' \
-                -e 's|$| -c|' \
-                -e 's|"$${CLFS}"|$(MOUNT_PT)|'\
-                -e 's|set -e||' \
-                -e 's|set +h||'`
-    echo -e "CHROOT1= $chroot\n" >> $MKFILE
-  fi
-
-################## CHROOT ####################
-
-if [[ "${METHOD}" = "chroot" ]]; then
-(
-cat << EOF
-
-all: ck_UID mk_SETUP mk_F_PREPS mk_SUDO mk_SYSTOOLS create-sbu_du-report mk_CUSTOM_TOOLS mk_BLFS_TOOL
-	@sudo make do-housekeeping
-	@echo "$VERSION - jhalfs build" > clfs-release && \\
-	sudo mv clfs-release \$(MOUNT_PT)/etc && \\
-	sudo chown root:root \$(MOUNT_PT)/etc/clfs-release
-	@\$(call echo_finished,$VERSION)
-
-ck_UID:
-	@if [ \`id -u\` = "0" ]; then \\
-	  echo "+--------------------------------------------------+"; \\
-	  echo "|You cannot run this makefile from the root account|"; \\
-	  echo "+--------------------------------------------------+"; \\
-	  exit 1; \\
-	fi
-
-#---------------AS ROOT
-mk_SETUP:
-	@\$(call echo_SU_request)
-	@sudo make BREAKPOINT=\$(BREAKPOINT) SETUP
-	@touch \$@
-
-#---------------AS LUSER
-mk_F_PREPS: mk_SETUP
-	@\$(call echo_PHASE,Final Preparations Cross and Temporary Tools)
-	@( \$(SU_LUSER) "make -C \$(MOUNT_PT)/\$(SCRIPT_ROOT) BREAKPOINT=\$(BREAKPOINT) AS_LUSER" )
-	@sudo make restore-luser-env
-	@touch \$@
-
-mk_SUDO: mk_F_PREPS
-	@sudo make BREAKPOINT=\$(BREAKPOINT) SUDO
-	@touch \$@
-
-#---------------CHROOT JAIL
-mk_SYSTOOLS: mk_SUDO
-	@\$(call echo_CHROOT_request)
-	@\$(call echo_PHASE, CHROOT JAIL )
-	@( sudo \$(CHROOT1) "cd \$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) PREP_CHROOT_JAIL")
-	@( sudo \$(CHROOT1) "cd \$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CHROOT_JAIL")
-	@touch \$@
-
-mk_BLFS_TOOL: create-sbu_du-report
-	@if [ "\$(ADD_BLFS_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building BLFS_TOOL); \\
-	  (sudo \$(CHROOT1) "make -C $BLFS_ROOT/work"); \\
-	fi;
-	@touch \$@
-
-mk_CUSTOM_TOOLS: mk_BLFS_TOOL
-	@if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\
-	  sudo mkdir -p ${BUILDDIR}${TRACKING_DIR}; \\
-	  (sudo \$(CHROOT1) "cd \$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS"); \\
-	fi;
-	@touch \$@
-
-SETUP:            $host_prep
-AS_LUSER:         $final_preps $cross_tools $temptools
-SUDO:	          $orphan_scripts
-PREP_CHROOT_JAIL:  SHELL=/tools/bin/bash
-PREP_CHROOT_JAIL: ${chroottools}
-CHROOT_JAIL:       SHELL=/tools/bin/bash
-CHROOT_JAIL:      $testsuitetools $basicsystem  $bootscripttools  $bootabletools
-CUSTOM_TOOLS:     $custom_list
-
-
-create-sbu_du-report:  mk_SYSTOOLS
-	@\$(call echo_message, Building)
-	@if [ "\$(ADD_REPORT)" = "y" ]; then \\
-	  ./create-sbu_du-report.sh logs $VERSION $(date --iso-8601); \\
-	  \$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report); \\
-	fi;
-	@touch  \$@
-
-do-housekeeping:
-	@-umount \$(MOUNT_PT)/sys
-	@-umount \$(MOUNT_PT)/proc
-	@-if mountpoint -q \$(MOUNT_PT)/run; then \\
-	  umount \$(MOUNT_PT)/run; \\
-	elif [ -h \$(MOUNT_PT)/dev/shm ]; then \\
-	  link=\$\$(readlink \$(MOUNT_PT)/dev/shm); \\
-	  umount \$(MOUNT_PT)/\$\$link; \\
-	  unset link; \\
-	else \\
-	  umount \$(MOUNT_PT)/dev/shm; \\
-	fi
-	@-umount \$(MOUNT_PT)/dev/pts
-	@-umount \$(MOUNT_PT)/dev
-	@-rm /tools /cross-tools
-	@-if [ ! -f luser-exist ]; then \\
-		userdel \$(LUSER); \\
-		rm -rf \$(LUSER_HOME); \\
-	fi;
-EOF
-) >> $MKFILE
-
-fi
-
-################### BOOT #####################
-
-if [[ "${METHOD}" = "boot" ]]; then
-(
-cat << EOF
-
-all:	ck_UID mk_SETUP mk_F_PREPS mk_SUDO
-	@sudo make restore-luser-env
-	@sudo make do-housekeeping
-	@\$(call echo_boot_finished,$VERSION)
-
-makesys: mk_FINAL mk_CUSTOM_TOOLS mk_BLFS_TOOL
-	@echo "$VERSION - jhalfs build" > /etc/clfs-release
-	@\$(call echo_finished,$VERSION)
-
-
-ck_UID:
-	@if [ \`id -u\` = "0" ]; then \\
-	  echo "+--------------------------------------------------+"; \\
-	  echo "|You cannot run this makefile from the root account|"; \\
-	  echo "|However, if this is the boot environment          |"; \\
-	  echo "| the command you are looking for is               |"; \\
-	  echo "|   make makesys                                   |"; \\
-	  echo "| to complete the build                            |"; \\
-	  echo "+--------------------------------------------------+"; \\
-	  exit 1; \\
-	fi
-
-#---------------AS ROOT
-
-mk_SETUP:
-	@\$(call echo_SU_request)
-	@sudo make BREAKPOINT=\$(BREAKPOINT) SETUP
-	@touch \$@
-
-#---------------AS LUSER
-
-mk_F_PREPS: mk_SETUP
-	@\$(call echo_PHASE,Final Preparations and Cross Tools)
-	@( \$(SU_LUSER) "make -C \$(MOUNT_PT)/\$(SCRIPT_ROOT) BREAKPOINT=\$(BREAKPOINT) AS_LUSER" )
-	@touch \$@
-
-mk_SUDO: mk_F_PREPS
-	@sudo make BREAKPOINT=\$(BREAKPOINT) SUDO
-	@touch \$@
-
-#---------------AS ROOT
-
-mk_FINAL:
-	@\$(call echo_PHASE,Final System)
-	@( source /root/.bash_profile && make BREAKPOINT=\$(BREAKPOINT) AS_ROOT )
-	@touch \$@
-
-mk_BLFS_TOOL: mk_FINAL
-	@if [ "\$(ADD_BLFS_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building BLFS_TOOL); \\
-	  ( make -C $BLFS_ROOT/work ); \\
-	fi;
-	@touch \$@
-
-mk_CUSTOM_TOOLS: mk_BLFS_TOOL
-	@if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\
-	  mkdir -p ${TRACKING_DIR}; \\
-	  ( source /root/.bash_profile && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS ); \\
-	fi;
-	@touch \$@
-
-SETUP:        $host_prep
-AS_LUSER:     $final_preps $cross_tools $temptools ${boottools}
-SUDO:	      $orphan_scripts
-AS_ROOT:      SHELL=/tools/bin/bash
-AS_ROOT:      $testsuitetools $basicsystem $bootscripttools $bootabletools
-CUSTOM_TOOLS: $custom_list
-
-do-housekeeping:
-	@-rm /tools /cross-tools
-	@-if [ ! -f luser-exist ]; then \\
-		userdel \$(LUSER); \\
-		rm -rf \$(LUSER_HOME); \\
-	fi;
-
-EOF
-) >> $MKFILE
-fi
-
-(
- cat << EOF
-
-restore-luser-env:
-	@\$(call echo_message, Building)
-	@if [ -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\
-		mv -f \$(LUSER_HOME)/.bashrc.XXX \$(LUSER_HOME)/.bashrc; \\
-	fi;
-	@if [ -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bash_profile.XXX \$(LUSER_HOME)/.bash_profile; \\
-	fi;
-	@chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bash* && \\
-	touch \$@ && \\
-	echo " "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\
-	echo --------------------------------------------------------------------------------\$(WHITE)
-
-########################################################
-
-
-EOF
-) >> $MKFILE
-
-  # Bring over the items from the Makefile.tmp
-  cat $MKFILE.tmp >> $MKFILE
-  rm $MKFILE.tmp
-
-  echo "Creating Makefile... ${BOLD}DONE${OFF}"
-}
diff --git a/CLFS2/clfs2.xsl b/CLFS2/clfs2.xsl
deleted file mode 100644
index 4f54f86..0000000
--- a/CLFS2/clfs2.xsl
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE xsl:stylesheet [
- <!ENTITY % general-entities SYSTEM "FAKEDIR/general.ent">
-  %general-entities;
-]>
-
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:exsl="http://exslt.org/common"
-    extension-element-prefixes="exsl"
-    version="1.0">
-
-<!-- XSLT stylesheet to create shell scripts from CLFS2 books. -->
-
-  <!-- Time zone -->
-  <xsl:param name="timezone" select="GMT"/>
-
-  <!-- Page size -->
-  <xsl:param name="page" select="letter"/>
-
-  <!-- Locale settings -->
-  <xsl:param name="lang" select="C"/>
-
-  <xsl:template match="/">
-    <xsl:apply-templates select="//sect1"/>
-  </xsl:template>
-
-  <xsl:template match="sect1">
-    <xsl:choose>
-      <xsl:when test="../@id='chapter-partitioning' or
-                      ../@id='chapter-getting-materials' or
-                      ../@id='chapter-final-preps'"/>
-      <xsl:otherwise>
-        <xsl:if test="count(descendant::screen/userinput) &gt; 0 and
-                      count(descendant::screen/userinput) &gt;
-                      count(descendant::screen[@role='nodump'])">
-            <!-- The dirs names -->
-          <xsl:variable name="pi-dir" select="../processing-instruction('dbhtml')"/>
-          <xsl:variable name="pi-dir-value" select="substring-after($pi-dir,'dir=')"/>
-          <xsl:variable name="quote-dir" select="substring($pi-dir-value,1,1)"/>
-          <xsl:variable name="dirname" select="substring-before(substring($pi-dir-value,2),$quote-dir)"/>
-            <!-- The file names -->
-          <xsl:variable name="pi-file" select="processing-instruction('dbhtml')"/>
-          <xsl:variable name="pi-file-value" select="substring-after($pi-file,'filename=')"/>
-          <xsl:variable name="filename" select="substring-before(substring($pi-file-value,2),'.html')"/>
-            <!-- The build order -->
-          <xsl:variable name="position" select="position()"/>
-          <xsl:variable name="order">
-            <xsl:choose>
-              <xsl:when test="string-length($position) = 1">
-                <xsl:text>00</xsl:text>
-                <xsl:value-of select="$position"/>
-              </xsl:when>
-              <xsl:when test="string-length($position) = 2">
-                <xsl:text>0</xsl:text>
-                <xsl:value-of select="$position"/>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:value-of select="$position"/>
-              </xsl:otherwise>
-            </xsl:choose>
-          </xsl:variable>
-            <!-- Creating dirs and files -->
-          <exsl:document href="{$dirname}/{$order}-{$filename}" method="text">
-            <xsl:text>#!/bin/bash&#xA;set +h&#xA;</xsl:text>
-            <xsl:if test="not(@id='ch-system-stripping')">
-              <xsl:text>set -e&#xA;</xsl:text>
-            </xsl:if>
-            <xsl:text>&#xA;</xsl:text>
-            <xsl:if test="sect2[@role='installation'] and
-                          not(@id='ch-cross-tools-sysroot-wrapper')">
-              <xsl:text>cd $PKGDIR&#xA;</xsl:text>
-            </xsl:if>
-            <xsl:apply-templates select=".//para/userinput | .//screen"/>
-            <xsl:text>exit</xsl:text>
-          </exsl:document>
-        </xsl:if>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="screen">
-    <xsl:if test="child::* = userinput and not(@role = 'nodump')">
-      <xsl:apply-templates select="userinput" mode="screen"/>
-    </xsl:if>
-  </xsl:template>
-
-  <xsl:template match="para/userinput"/>
-
-  <xsl:template match="userinput" mode="screen">
-    <xsl:choose>
-      <!-- Estandarized package formats -->
-      <xsl:when test="contains(string(),'tar.gz')">
-        <xsl:value-of select="substring-before(string(),'tar.gz')"/>
-        <xsl:text>tar.*</xsl:text>
-        <xsl:value-of select="substring-after(string(),'tar.gz')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Setting $LANG for /etc/profile -->
-      <xsl:when test="ancestor::sect1[@id='ch-scripts-profile'] and
-                contains(string(),'export LANG=')">
-        <xsl:value-of select="substring-before(string(),'export LANG=')"/>
-        <xsl:text>export LANG=</xsl:text>
-        <xsl:value-of select="$lang"/>
-        <xsl:value-of select="substring-after(string(),'charmap]')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Compile the keymap into the kernel has been disabled -->
-      <xsl:when test="contains(string(),'defkeymap')"/>
-      <!-- Copying the kernel config file -->
-      <xsl:when test="string() = 'make mrproper'">
-        <xsl:text>make mrproper&#xA;</xsl:text>
-        <xsl:text>cp -v ../kernel-config .config&#xA;</xsl:text>
-      </xsl:when>
-      <!-- No interactive commands are needed if the .config file is the proper one -->
-      <xsl:when test="contains(string(),'menuconfig')"/>
-      <!-- Don't stop on strip run -->
-      <xsl:when test="contains(string(),'strip ')">
-        <xsl:apply-templates/>
-        <xsl:text> || true&#xA;</xsl:text>
-      </xsl:when>
-      <!-- The rest of commands -->
-      <xsl:otherwise>
-        <xsl:apply-templates/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="replaceable">
-    <xsl:choose>
-      <xsl:when test="ancestor::sect1[@id='ch-cross-tools-glibc']">
-        <xsl:value-of select="$timezone"/>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-cross-tools-eglibc']">
-        <xsl:value-of select="$timezone"/>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-cross-tools-groff'] or
-                      ancestor::sect1[@id='ch-system-groff']">
-        <xsl:value-of select="$page"/>
-      </xsl:when>
-      <xsl:otherwise>
-        <xsl:text>**EDITME</xsl:text>
-        <xsl:apply-templates/>
-        <xsl:text>EDITME**</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-</xsl:stylesheet>
diff --git a/CLFS2/master.sh b/CLFS2/master.sh
deleted file mode 100644
index 32cb018..0000000
--- a/CLFS2/master.sh
+++ /dev/null
@@ -1,536 +0,0 @@
-#!/bin/bash
-
-###################################
-###          FUNCTIONS          ###
-###################################
-
-
-#----------------------------#
-host_prep_Makefiles() {      # Initialization of the system
-#----------------------------#
-  local   CLFS_HOST
-
-  echo "${tab_}${GREEN}Processing... ${L_arrow}host prep files ( SETUP ) ${R_arrow}"
-
-  # defined here, only for ease of reading
-  CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")"
-(
-cat << EOF
-
-025-addinguser:
-	@\$(call echo_message, Building)
-	@if [ ! -d \$(LUSER_HOME) ]; then \\
-		groupadd \$(LGROUP); \\
-		useradd -s /bin/bash -g \$(LGROUP) -m -k /dev/null \$(LUSER); \\
-	else \\
-		touch luser-exist; \\
-	fi;
-	@\$(call housekeeping)
-
-026-settingenvironment:  025-addinguser
-	@\$(call echo_message, Building)
-	@if [ -f \$(LUSER_HOME)/.bashrc -a ! -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bashrc \$(LUSER_HOME)/.bashrc.XXX; \\
-	fi;
-	@if [ -f \$(LUSER_HOME)/.bash_profile  -a ! -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bash_profile \$(LUSER_HOME)/.bash_profile.XXX; \\
-	fi;
-	@echo "set +h" > \$(LUSER_HOME)/.bashrc && \\
-	echo "umask 022" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "CLFS=\$(MOUNT_PT)" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "LC_ALL=POSIX" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "PATH=\$(MOUNT_PT)/cross-tools/bin:/bin:/usr/bin" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS LC_ALL PATH" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset CFLAGS" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset CXXFLAGS" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset PKG_CONFIG_PATH" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_HOST=\"${CLFS_HOST}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_TARGET=\"${TARGET}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "source $JHALFSDIR/envars" >> \$(LUSER_HOME)/.bashrc
-	@chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bashrc && \\
-	touch envars && \\
-	chown \$(LUSER):\$(LGROUP) envars
-	@\$(call housekeeping)
-
-027-create-directories: 026-settingenvironment
-	@\$(call echo_message, Building)
-
-	@mkdir -p \$(MOUNT_PT)/{bin,boot,dev,{etc/,}opt,home,lib,mnt}
-	@mkdir -p \$(MOUNT_PT)/{proc,media/{floppy,cdrom},sbin,srv,sys}
-	@mkdir -p \$(MOUNT_PT)/var/{lock,log,mail,run,spool}
-	@mkdir -p \$(MOUNT_PT)/var/{opt,cache,lib/{misc,locate},local}
-	@install -d -m 0750 \$(MOUNT_PT)/root
-	@install -d -m 1777 \$(MOUNT_PT){/var,}/tmp
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}{bin,include,lib,sbin,src}
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{doc,info,locale,man}
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{misc,terminfo,zoneinfo}
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}share/man/man{1,2,3,4,5,6,7,8}
-	@for dir in \$(MOUNT_PT)/usr{,/local}; do \\
-	  ln -s share/{man,doc,info} \$\$dir ; \\
-	done
-	@\$(call housekeeping)
-
-028-creating-sysfile: 027-create-directories
-	@\$(call echo_message, Building)
-
-	@touch \$(MOUNT_PT)/etc/mtab
-	@echo "root::0:0:root:/root:/bin/bash" >> \$(MOUNT_PT)/etc/passwd
-	@echo "root:x:0:" >> \$(MOUNT_PT)/etc/group
-	@echo "bin:x:1:"  >> \$(MOUNT_PT)/etc/group
-	@echo "sys:x:2:"  >> \$(MOUNT_PT)/etc/group
-	@echo "kmem:x:3"  >> \$(MOUNT_PT)/etc/group
-	@echo "tty:x:4:"  >> \$(MOUNT_PT)/etc/group
-	@echo "tape:x:5:"   >> \$(MOUNT_PT)/etc/group
-	@echo "daemon:x:6:" >> \$(MOUNT_PT)/etc/group
-	@echo "floppy:x:7:" >> \$(MOUNT_PT)/etc/group
-	@echo "disk:x:8:"   >> \$(MOUNT_PT)/etc/group
-	@echo "lp:x:9:"     >> \$(MOUNT_PT)/etc/group
-	@echo "dialout:x:10:" >> \$(MOUNT_PT)/etc/group
-	@echo "audio:x:11:"   >> \$(MOUNT_PT)/etc/group
-	@echo "video:x:12:"   >> \$(MOUNT_PT)/etc/group
-	@echo "utmp:x:13:"    >> \$(MOUNT_PT)/etc/group
-	@echo "usb:x:14:"     >> \$(MOUNT_PT)/etc/group
-	@echo "cdrom:x:15:"   >> \$(MOUNT_PT)/etc/group
-
-	@touch \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/{btmp,lastlog,wtmp}
-	@chmod 664 \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/lastlog
-	@chown -R \$(LUSER) \$(MOUNT_PT) && \\
-	chmod -R a+w \$(MOUNT_PT)/\$(SCRIPT_ROOT) && \\
-	chmod -R a+w \$(SRCSDIR)
-	@\$(call housekeeping)
-
-EOF
-) >> $MKFILE.tmp
-
-  host_prep=" 025-addinguser 026-settingenvironment 027-create-directories 028-creating-sysfile"
-}
-
-
-#-----------------------------#
-cross_tools_Makefiles() {     #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}cross tools     ( LUSER ) ${R_arrow}"
-
-  for file in cross-tools/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-    #
-    # Skip this script...
-    case $this_script in
-      *cflags* | *variables* )  # work done in host_prep_Makefiles
-              continue ;;
-      *) ;;
-    esac
-
-    #
-    # Set the dependency for the first target.
-    if [ -z $PREV ] ; then PREV=028-creating-sysfile ; fi
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    cross_tools="$cross_tools $this_script"
-
-    # Grab the name of the target (minus the -headers or -cross in the case of gcc
-    # and binutils in chapter 5)
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \
-                                  -e 's@-static@@' \
-                                  -e 's@-final@@' \
-				  -e 's@-64@@' \
-                                  -e 's@-n32@@'`
-    case $name in
-      glibc-headers) name="glibc" ;;
-    esac
-    pkg_tarball=$(get_package_tarball_name $name)
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-       LUSER_wrt_unpack "$pkg_tarball"
-       # If using optimizations, write the instructions
-       [[ "$OPTIMIZE" != "0" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done # for file in ....
-}
-
-
-
-#-----------------------------#
-final_system_Makefiles() {    #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}final system    ( LUSER ) ${R_arrow}"
-
-  for file in final-system/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # Test if the stripping phase must be skipped.
-    # Skip alsp temp-perl for iterative runs
-    case $this_script in
-      *stripping*) [[ "$STRIP" = "n" ]] && continue ;;
-    esac
-
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \
-                                  -e 's@temp-@@' \
-                                  -e 's@-64bit@@' \
-                                  -e 's@-64@@' \
-                                  -e 's@64@@' \
-                                  -e 's@n32@@'`
-
-    # Find the version of the command files, if it corresponds with the building of
-    # a specific package.
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    # Append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    basicsystem="$basicsystem ${this_script}"
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      # Touch timestamp file if installed files logs will be created.
-      # But only for the firt build when running iterative builds.
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-      LUSER_wrt_unpack "$pkg_tarball"
-      # If using optimizations, write the instructions
-      [[ "$OPTIMIZE" != "0" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=${this_script}
-  done  # for file in final-system/* ...
-}
-
-
-
-#-----------------------------#
-bootscripts_Makefiles() {     #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}bootscripts     ( LUSER ) ${R_arrow}"
-
-  for file in bootscripts/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    case $this_script in
-      *udev)     continue ;; # This is not a script but a commentary, we want udev-rules
-      *console*) continue ;; # Use the files that came with the bootscripts
-      *network*) continue ;; # Manually create these files
-      *)  ;;
-    esac
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    bootscripttools="$bootscripttools $this_script"
-
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'\
-                                  -e 's@-64bit@@' \
-                                  -e 's@-64@@' \
-                                  -e 's@64@@' \
-                                  -e 's@n32@@'`
-    case $name in
-      *bootscripts*) name=bootscripts-cross-lfs ;;
-      *udev-rules)   name=udev-cross-lfs ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_wrt_unpack "$pkg_tarball"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done  # for file in bootscripts/* ...
-
-}
-
-
-#-----------------------------#
-bootable_Makefiles() {        #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}make bootable   ( LUSER ) ${R_arrow}"
-
-  for file in bootable/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # A little housekeeping on the scripts
-    case $this_script in
-      *grub | *aboot | *colo | *silo | *arcload | *lilo | *reboot* )  continue ;;
-      *fstab)  [[ ! -z ${FSTAB} ]] && cp ${FSTAB} $BUILDDIR/sources/fstab ;;
-      *kernel) # if there is no kernel config file do not build the kernel
-               [[ -z $CONFIG ]] && continue
-                 # Copy the config file to /sources with a standardized name
-               cp $CONFIG $BUILDDIR/sources/kernel-config
-        ;;
-    esac
-    #
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    # NOTE: new makfile format forces the last script, *chowning, into a separate
-    #  phase.
-    case ${this_script} in
-      *chowning) chowning=" ${this_script}"   ;;
-              *) bootable="$bootable $this_script"  ;;
-    esac
-    #
-    # Grab the name of the target, strip id number and misc words.
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' `
-    case $this_script in
-      *kernel*) name=linux
-       ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_wrt_unpack "$pkg_tarball"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-    fi
-    #
-    # Select a script execution method
-    case $this_script in
-      *fstab*)  if [[ -n "$FSTAB" ]]; then
-                  LUSER_wrt_CopyFstab
-                else
-                  LUSER_wrt_RunAsUser "${file}"
-                fi
-          ;;
-      *chowning)  wrt_RunAsRoot "${file}"
-          ;;
-              *)  LUSER_wrt_RunAsUser "${file}"
-          ;;
-    esac
-    #
-    # Housekeeping...remove any build directory(ies) except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done
-
-}
-
-
-#-----------------------------#
-build_Makefile() {            # Construct a Makefile from the book scripts
-#-----------------------------#
-  echo "Creating Makefile... ${BOLD}START${OFF}"
-
-  cd $JHALFSDIR/${PROGNAME}-commands
-  # Start with a clean Makefile.tmp file
-  >$MKFILE.tmp
-
-  host_prep_Makefiles
-  cross_tools_Makefiles            # $cross_tools
-  final_system_Makefiles           # $basicsystem
-  bootscripts_Makefiles            # $bootscripttools
-  bootable_Makefiles               # $bootable
-  # Add the CUSTOM_TOOLS targets, if needed
-  [[ "$CUSTOM_TOOLS" = "y" ]] && wrt_CustomTools_target
-  # Add the BLFS_TOOL targets, if needed.
-  [[ "$BLFS_TOOL" = "y" ]] && wrt_blfs_tool_targets
-
-  # Add a header, some variables and include the function file
-  # to the top of the real Makefile.
-  wrt_Makefile_header
-
-  # Drop in the main target 'all:' and the chapter targets with each sub-target
-  # as a dependency.
-(
-cat << EOF
-
-all:	ck_UID mk_SETUP mk_LUSER create-sbu_du-report mk_CUSTOM_TOOLS mk_BLFS_TOOL mk_ROOT
-	@sudo make restore-luser-env
-	@sudo make do-housekeeping
-	@\$(call echo_finished,$VERSION)
-
-ck_UID:
-	@if [ \`id -u\` = "0" ]; then \\
-	  echo "--------------------------------------------------"; \\
-	  echo "You cannot run this makefile from the root account"; \\
-	  echo "--------------------------------------------------"; \\
-	  exit 1; \\
-	fi
-
-mk_SETUP:
-	@\$(call echo_SU_request)
-	@sudo make BREAKPOINT=\$(BREAKPOINT) SETUP
-	@touch \$@
-
-mk_LUSER: mk_SETUP
-	@\$(call echo_SULUSER_request)
-	@(sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) LUSER" )
-	@touch \$@
-
-mk_CUSTOM_TOOLS: create-sbu_du-report
-	@if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\
-	  (sudo \$(SU_LUSER) "mkdir -p $BUILDDIR$TRACKING_DIR"); \\
-	  (sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS"); \\
-	fi;
-	@touch \$@
-
-mk_BLFS_TOOL: mk_CUSTOM_TOOLS
-	@if [ "\$(ADD_BLFS_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building BLFS_TOOL); \\
-	  (sudo \$(SU_LUSER) "mkdir -p $BUILDDIR$TRACKING_DIR"); \\
-	  (sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) BLFS_TOOL"); \\
-	fi;
-	@touch \$@
-
-mk_ROOT: create-sbu_du-report
-	@\$(call echo_SU_request)
-	@echo "$VERSION-sysroot - jhalfs build" > clfs-release && \\
-	sudo mv clfs-release \$(MOUNT_PT)/etc
-	@sudo make BREAKPOINT=\$(BREAKPOINT) ROOT
-	@touch \$@
-
-SETUP:        $host_prep
-LUSER:        $cross_tools $basicsystem $bootscripttools $bootable
-CUSTOM_TOOLS: $custom_list
-BLFS_TOOL:    $blfs_tool
-ROOT:         $chowning
-
-
-create-sbu_du-report: mk_LUSER
-	@\$(call echo_message, Building)
-	@if [ "\$(ADD_REPORT)" = "y" ]; then \\
-	  ./create-sbu_du-report.sh logs $VERSION $(date --iso-8601); \\
-	  \$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report); \\
-	fi;
-	@touch  \$@
-
-restore-luser-env:
-	@\$(call echo_message, Building)
-	@if [ -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\
-		mv -f \$(LUSER_HOME)/.bashrc.XXX \$(LUSER_HOME)/.bashrc; \\
-	fi;
-	@if [ -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bash_profile.XXX \$(LUSER_HOME)/.bash_profile; \\
-	fi;
-	@chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bash* && \\
-	touch \$@ && \\
-	echo " "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\
-	echo --------------------------------------------------------------------------------\$(WHITE)
-
-do-housekeeping:
-	@-if [ ! -f luser-exist ]; then \\
-		userdel \$(LUSER); \\
-		rm -rf \$(LUSER_HOME); \\
-	fi;
-
-EOF
-) >> $MKFILE
-
-  # Bring over the items from the Makefile.tmp
-  cat $MKFILE.tmp >> $MKFILE
-  rm $MKFILE.tmp
-  echo "Creating Makefile... ${BOLD}DONE${OFF}"
-
-}
diff --git a/CLFS3/clfs3.xsl b/CLFS3/clfs3.xsl
deleted file mode 100644
index 04381f5..0000000
--- a/CLFS3/clfs3.xsl
+++ /dev/null
@@ -1,154 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE xsl:stylesheet [
- <!ENTITY % general-entities SYSTEM "FAKEDIR/general.ent">
-  %general-entities;
-]>
-
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:exsl="http://exslt.org/common"
-    extension-element-prefixes="exsl"
-    version="1.0">
-
-<!-- XSLT stylesheet to create shell scripts from CLFS2 books. -->
-
-  <!-- Endian level -->
-  <xsl:param name="endian" select="xbig"/>
-
-  <!-- Time zone -->
-  <xsl:param name="timezone" select="GMT"/>
-
-  <!-- Page size -->
-  <xsl:param name="page" select="letter"/>
-
-  <!-- Locale settings -->
-  <xsl:param name="lang" select="C"/>
-
-  <xsl:template match="/">
-    <xsl:apply-templates select="//sect1"/>
-  </xsl:template>
-
-  <xsl:template match="sect1">
-    <xsl:choose>
-      <xsl:when test="../@id='chapter-partitioning' or
-                      ../@id='chapter-getting-materials' or
-                      ../@id='chapter-final-preps'"/>
-      <xsl:otherwise>
-        <xsl:if test="count(descendant::screen/userinput) &gt; 0 and
-                      count(descendant::screen/userinput) &gt;
-                      count(descendant::screen[@role='nodump'])">
-            <!-- The dirs names -->
-          <xsl:variable name="pi-dir" select="../processing-instruction('dbhtml')"/>
-          <xsl:variable name="pi-dir-value" select="substring-after($pi-dir,'dir=')"/>
-          <xsl:variable name="quote-dir" select="substring($pi-dir-value,1,1)"/>
-          <xsl:variable name="dirname" select="substring-before(substring($pi-dir-value,2),$quote-dir)"/>
-            <!-- The file names -->
-          <xsl:variable name="pi-file" select="processing-instruction('dbhtml')"/>
-          <xsl:variable name="pi-file-value" select="substring-after($pi-file,'filename=')"/>
-          <xsl:variable name="filename" select="substring-before(substring($pi-file-value,2),'.html')"/>
-            <!-- The build order -->
-          <xsl:variable name="position" select="position()"/>
-          <xsl:variable name="order">
-            <xsl:choose>
-              <xsl:when test="string-length($position) = 1">
-                <xsl:text>00</xsl:text>
-                <xsl:value-of select="$position"/>
-              </xsl:when>
-              <xsl:when test="string-length($position) = 2">
-                <xsl:text>0</xsl:text>
-                <xsl:value-of select="$position"/>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:value-of select="$position"/>
-              </xsl:otherwise>
-            </xsl:choose>
-          </xsl:variable>
-            <!-- Creating dirs and files -->
-          <exsl:document href="{$dirname}/{$order}-{$filename}" method="text">
-            <xsl:text>#!/bin/bash&#xA;set +h&#xA;set -e&#xA;&#xA;</xsl:text>
-            <!-- Set envars needed by uClibc -->
-            <xsl:if test="@id='ch-cross-tools-uclibc'">
-              <xsl:copy-of select="//sect1[@id='ch-cross-tools-toolchain']/screen"/>
-              <xsl:text>&#xA;&#xA;</xsl:text>
-            </xsl:if>
-            <xsl:if test="sect2[@role='installation']">
-              <xsl:text>cd $PKGDIR&#xA;</xsl:text>
-            </xsl:if>
-            <xsl:apply-templates select=".//para/userinput | .//screen"/>
-            <xsl:text>exit</xsl:text>
-          </exsl:document>
-        </xsl:if>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="screen">
-    <xsl:if test="child::* = userinput and not(@role = 'nodump')">
-      <xsl:apply-templates select="userinput" mode="screen"/>
-    </xsl:if>
-  </xsl:template>
-
-  <xsl:template match="para/userinput"/>
-
-  <xsl:template match="userinput" mode="screen">
-    <xsl:choose>
-      <!-- Estandarized package formats -->
-      <xsl:when test="contains(string(),'tar.gz')">
-        <xsl:value-of select="substring-before(string(),'tar.gz')"/>
-        <xsl:text>tar.*</xsl:text>
-        <xsl:value-of select="substring-after(string(),'tar.gz')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Select Endian level for uClibc -->
-<!--
-      <xsl:when test="$endian='xbig' and contains(string(),'LITTLE_ENDIAN')"/>
-      <xsl:when test="$endian='xlittle' and contains(string(),'BIG_ENDIAN')"/>
--->
-      <!-- Setting $LANG for /etc/profile -->
-      <xsl:when test="ancestor::sect1[@id='ch-scripts-profile'] and
-                contains(string(),'export LANG=')">
-        <xsl:value-of select="substring-before(string(),'export LANG=')"/>
-        <xsl:text>export LANG=</xsl:text>
-        <xsl:value-of select="$lang"/>
-        <xsl:value-of select="substring-after(string(),'charmap]')"/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:when>
-      <!-- Compile the keymap into the kernel has been disabled -->
-      <xsl:when test="contains(string(),'defkeymap')"/>
-      <!-- Copying the kernel config file -->
-      <xsl:when test="string() = 'make mrproper'">
-        <xsl:text>make mrproper&#xA;</xsl:text>
-        <xsl:text>cp -v ../kernel-config .config&#xA;</xsl:text>
-      </xsl:when>
-      <!-- No interactive commands are needed if the .config file is the proper one -->
-      <xsl:when test="contains(string(),'menuconfig')"/>
-      <!-- Don't stop on strip run -->
-      <xsl:when test="contains(string(),'strip ')">
-        <xsl:apply-templates/>
-        <xsl:text> || true&#xA;</xsl:text>
-      </xsl:when>
-      <!-- The rest of commands -->
-      <xsl:otherwise>
-        <xsl:apply-templates/>
-        <xsl:text>&#xA;</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template match="replaceable">
-    <xsl:choose>
-      <xsl:when test="ancestor::sect1[@id='ch-cross-tools-glibc']">
-        <xsl:value-of select="$timezone"/>
-      </xsl:when>
-      <xsl:when test="ancestor::sect1[@id='ch-cross-tools-groff'] or
-                      ancestor::sect1[@id='ch-system-groff']">
-        <xsl:value-of select="$page"/>
-      </xsl:when>
-      <xsl:otherwise>
-        <xsl:text>**EDITME</xsl:text>
-        <xsl:apply-templates/>
-        <xsl:text>EDITME**</xsl:text>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-</xsl:stylesheet>
diff --git a/CLFS3/master.sh b/CLFS3/master.sh
deleted file mode 100644
index d7851a0..0000000
--- a/CLFS3/master.sh
+++ /dev/null
@@ -1,586 +0,0 @@
-#!/bin/bash
-
-###################################
-###          FUNCTIONS          ###
-###################################
-
-
-#----------------------------#
-host_prep_Makefiles() {      # Initialization of the system
-#----------------------------#
-  local   CLFS_HOST
-
-  echo "${tab_}${GREEN}Processing... ${L_arrow}host prep files ( SETUP ) ${R_arrow}"
-
-  # defined here, only for ease of reading
-  CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")"
-(
-cat << EOF
-
-025-addinguser:
-	@\$(call echo_message, Building)
-	@if [ ! -d \$(LUSER_HOME) ]; then \\
-		groupadd \$(LGROUP); \\
-		useradd -s /bin/bash -g \$(LGROUP) -m -k /dev/null \$(LUSER); \\
-	else \\
-		touch luser-exist; \\
-	fi;
-	@\$(call housekeeping)
-
-026-settingenvironment:  025-addinguser
-	@\$(call echo_message, Building)
-	@if [ -f \$(LUSER_HOME)/.bashrc -a ! -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bashrc \$(LUSER_HOME)/.bashrc.XXX; \\
-	fi;
-	@if [ -f \$(LUSER_HOME)/.bash_profile  -a ! -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bash_profile \$(LUSER_HOME)/.bash_profile.XXX; \\
-	fi;
-	@echo "set +h" > \$(LUSER_HOME)/.bashrc && \\
-	echo "umask 022" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "CLFS=\$(MOUNT_PT)" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "LC_ALL=POSIX" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "PATH=\$(MOUNT_PT)/cross-tools/bin:/bin:/usr/bin" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS LC_ALL PATH" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset CFLAGS" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset CXXFLAGS" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "unset PKG_CONFIG_PATH" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_HOST=\"${CLFS_HOST}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_TARGET=\"${TARGET}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export CLFS_MIPS_LEVEL=\"${MIPS_LEVEL}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "export BUILD=\"${ABI}\"" >> \$(LUSER_HOME)/.bashrc && \\
-	echo "source $JHALFSDIR/envars" >> \$(LUSER_HOME)/.bashrc
-	@chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bashrc && \\
-	touch envars && \\
-	chown \$(LUSER):\$(LGROUP) envars
-	@\$(call housekeeping)
-
-027-create-directories: 026-settingenvironment
-	@\$(call echo_message, Building)
-
-	@mkdir -p \$(MOUNT_PT)/{bin,boot,dev,{etc/,}opt,home,lib,mnt}
-	@mkdir -p \$(MOUNT_PT)/{proc,media/{floppy,cdrom},sbin,srv,sys}
-	@mkdir -p \$(MOUNT_PT)/var/{lock,log,mail,run,spool}
-	@mkdir -p \$(MOUNT_PT)/var/{opt,cache,lib/{misc,locate},local}
-	@install -d -m 0750 \$(MOUNT_PT)/root
-	@install -d -m 1777 \$(MOUNT_PT){/var,}/tmp
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}{bin,include,lib,sbin,src}
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{doc,info,locale,man}
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{misc,terminfo,zoneinfo}
-	@mkdir -p \$(MOUNT_PT)/usr/{,local/}share/man/man{1,2,3,4,5,6,7,8}
-	@for dir in \$(MOUNT_PT)/usr{,/local}; do \\
-	  ln -s share/{man,doc,info} \$\$dir ; \\
-	done
-	@\$(call housekeeping)
-
-028-creating-sysfile: 027-create-directories
-	@\$(call echo_message, Building)
-
-	@touch \$(MOUNT_PT)/etc/mtab
-	@echo "root::0:0:root:/root:/bin/ash" >> \$(MOUNT_PT)/etc/passwd
-	@echo "root:x:0:" >> \$(MOUNT_PT)/etc/group
-	@echo "bin:x:1:"  >> \$(MOUNT_PT)/etc/group
-	@echo "sys:x:2:"  >> \$(MOUNT_PT)/etc/group
-	@echo "kmem:x:3"  >> \$(MOUNT_PT)/etc/group
-	@echo "tty:x:4:"  >> \$(MOUNT_PT)/etc/group
-	@echo "tape:x:5:"   >> \$(MOUNT_PT)/etc/group
-	@echo "daemon:x:6:" >> \$(MOUNT_PT)/etc/group
-	@echo "floppy:x:7:" >> \$(MOUNT_PT)/etc/group
-	@echo "disk:x:8:"   >> \$(MOUNT_PT)/etc/group
-	@echo "lp:x:9:"     >> \$(MOUNT_PT)/etc/group
-	@echo "dialout:x:10:" >> \$(MOUNT_PT)/etc/group
-	@echo "audio:x:11:"   >> \$(MOUNT_PT)/etc/group
-	@echo "video:x:12:"   >> \$(MOUNT_PT)/etc/group
-	@echo "utmp:x:13:"    >> \$(MOUNT_PT)/etc/group
-	@echo "usb:x:14:"     >> \$(MOUNT_PT)/etc/group
-	@echo "cdrom:x:15:"   >> \$(MOUNT_PT)/etc/group
-
-	@touch \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/{btmp,lastlog,wtmp}
-	@chmod 664 \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/lastlog
-	@chown -R \$(LUSER) \$(MOUNT_PT) && \\
-	chmod -R a+w \$(MOUNT_PT)/\$(SCRIPT_ROOT) && \\
-	chmod -R a+w \$(SRCSDIR)
-	@\$(call housekeeping)
-
-EOF
-) >> $MKFILE.tmp
-
-  host_prep=" 025-addinguser 026-settingenvironment 027-create-directories 028-creating-sysfile"
-}
-
-#-----------------------------#
-systemprep_Makefiles() {      #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}system prep tools     ( LUSER ) ${R_arrow}"
-
-  for file in systemprep/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # Set the dependency for the first target.
-    if [ -z $PREV ] ; then PREV=028-creating-sysfile ; fi
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile)
-    cross_tools="$cross_tools $this_script"
-
-    # Grab the name of the target (minus the -headers or -cross in the case of gcc
-    # and binutils in chapter 5)
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'`
-
-    pkg_tarball=$(get_package_tarball_name $name)
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-       LUSER_wrt_unpack "$pkg_tarball"
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}"
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done # for file in ....
-}
-
-
-#-----------------------------#
-cross_tools_Makefiles() {     #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}cross tools     ( LUSER ) ${R_arrow}"
-
-  for file in cross-tools/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-    #
-    # Skip this script...
-    # NOTE.. the book indicated you only needed to install groff or file if the host
-    #   had older versions. The packages would be installed in the target directory
-    #   and not the host.
-    case $this_script in
-      *cflags* | *variables* | *abi | *toolchain*)  # work done in host_prep_Makefiles
-              continue ;;
-      *) ;;
-    esac
-
-    #
-    # Set the dependency for the first target.
-    if [ -z $PREV ] ; then PREV=028-creating-sysfile ; fi
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile)
-    cross_tools="$cross_tools $this_script"
-
-    # Grab the name of the target (minus the -headers or -cross in the case of gcc
-    # and binutils in chapter 5)
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \
-                                  -e 's@-static@@' \
-                                  -e 's@-final@@' \
-				  -e 's@-64@@' \
-                                  -e 's@-n32@@'`
-    case $name in
-      uclibc*) name="uClibc" ;;
-    esac
-    pkg_tarball=$(get_package_tarball_name $name)
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-       LUSER_wrt_unpack "$pkg_tarball"
-      # Touch timestamp file if installed files logs will be created.
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-       # If using optimizations, write the instructions
-       [[ "$OPTIMIZE" != "0" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done # for file in ....
-}
-
-
-
-#-----------------------------#
-final_system_Makefiles() {    #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}final system    ( LUSER ) ${R_arrow}"
-
-  for file in final-system/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \
-                                  -e 's@temp-@@' \
-                                  -e 's@-64bit@@' \
-                                  -e 's@-64@@' \
-                                  -e 's@64@@' \
-                                  -e 's@n32@@'`
-
-    # Find the version of the command files, if it corresponds with the building of
-    # a specific package.
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    # Append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    basicsystem="$basicsystem ${this_script}"
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      # Touch timestamp file if installed files logs will be created.
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-      LUSER_wrt_unpack "$pkg_tarball"
-      # If using optimizations, write the instructions
-      [[ "$OPTIMIZE" != "0" ]] &&  wrt_optimize "$name" && wrt_makeflags "$name"
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    # Write installed files log and remove the build directory(ies)
-    # except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=${this_script}
-  done  # for file in final-system/* ...
-}
-
-
-
-#-----------------------------#
-bootscripts_Makefiles() {     #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}bootscripts     ( LUSER ) ${R_arrow}"
-
-  for file in bootscripts/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    case $this_script in
-      *console*) continue ;; # Use the files that came with the bootscripts
-      *network*) continue ;; # Manually create these files
-      *)  ;;
-    esac
-
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    bootscripttools="$bootscripttools $this_script"
-
-    # Grab the name of the target, strip id number, XXX-script
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'\
-                                  -e 's@-64bit@@' \
-                                  -e 's@-64@@' \
-                                  -e 's@64@@' \
-                                  -e 's@n32@@'`
-    case $name in
-      *bootscripts*) name=clfs-embedded-bootscripts ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_wrt_unpack "$pkg_tarball"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-    fi
-    #
-    LUSER_wrt_RunAsUser "${file}"
-    #
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done  # for file in bootscripts/* ...
-
-}
-
-
-#-----------------------------#
-bootable_Makefiles() {        #
-#-----------------------------#
-  echo "${tab_}${GREEN}Processing... ${L_arrow}make bootable   ( LUSER ) ${R_arrow}"
-
-  for file in bootable/* ; do
-    # Keep the script file name
-    this_script=`basename $file`
-
-    # A little housekeeping on the scripts
-    case $this_script in
-      *grub | *aboot | *colo | *silo | *arcload | *lilo | *reboot* )  continue ;;
-      *fstab)  [[ ! -z ${FSTAB} ]] && cp ${FSTAB} $BUILDDIR/sources/fstab ;;
-      *kernel) # if there is no kernel config file do not build the kernel
-               [[ -z $CONFIG ]] && continue
-                 # Copy the config file to /sources with a standardized name
-               cp $CONFIG $BUILDDIR/sources/kernel-config
-        ;;
-    esac
-    #
-    # First append each name of the script files to a list (this will become
-    # the names of the targets in the Makefile
-    # NOTE: new makfile format forces the last script, *chowning, into a separate
-    #  phase.
-    case ${this_script} in
-      *chowning) chowning=${this_script}   ;;
-              *) bootable="$bootable $this_script"  ;;
-    esac
-    #
-    # Grab the name of the target, strip id number and misc words.
-    name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' `
-    case $this_script in
-      *kernel*) name=linux
-       ;;
-    esac
-
-    pkg_tarball=$(get_package_tarball_name $name)
-
-    #--------------------------------------------------------------------#
-    #         >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<<          #
-    #--------------------------------------------------------------------#
-    #
-    # Drop in the name of the target on a new line, and the previous target
-    # as a dependency. Also call the echo_message function.
-    LUSER_wrt_target "${this_script}" "$PREV"
-    #
-    # If $pkg_tarball isn't empty, we've got a package...
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_wrt_unpack "$pkg_tarball"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_TouchTimestamp
-      fi
-    fi
-    #
-    # Select a script execution method
-    case $this_script in
-      *fstab*)  if [[ -n "$FSTAB" ]]; then
-                  LUSER_wrt_CopyFstab
-                else
-                  LUSER_wrt_RunAsUser "${file}"
-                fi
-          ;;
-      *chowning)  wrt_RunAsRoot "${file}"
-          ;;
-              *)  LUSER_wrt_RunAsUser "${file}"
-          ;;
-    esac
-    #
-    # Housekeeping...remove any build directory(ies) except if the package build fails.
-    if [ "$pkg_tarball" != "" ] ; then
-      LUSER_RemoveBuildDirs "${name}"
-      if [ "${INSTALL_LOG}" = "y" ] ; then
-        LUSER_wrt_LogNewFiles "$name"
-      fi
-    fi
-    #
-    # Include a touch of the target name so make can check if it's already been made.
-    wrt_touch
-    #
-    #--------------------------------------------------------------------#
-    #              >>>>>>>> END OF Makefile ENTRY <<<<<<<<               #
-    #--------------------------------------------------------------------#
-    #
-    # Keep the script file name for Makefile dependencies.
-    PREV=$this_script
-
-  done
-
-}
-
-
-#-----------------------------#
-build_Makefile() {            # Construct a Makefile from the book scripts
-#-----------------------------#
-  echo "Creating Makefile... ${BOLD}START${OFF}"
-
-  cd $JHALFSDIR/${PROGNAME}-commands
-  # Start with a clean Makefile.tmp file
-  >$MKFILE.tmp
-
-  host_prep_Makefiles
-  [[ "${PLATFORM% -*}" = "WRT" ]] && systemprep_Makefiles # $cross_tools
-  cross_tools_Makefiles            # $cross_tools
-  final_system_Makefiles           # $basicsystem
-  bootscripts_Makefiles            # $bootscripttools
-  bootable_Makefiles               # $bootable
-  # Add the CUSTOM_TOOLS targets, if needed
-  [[ "$CUSTOM_TOOLS" = "y" ]] && wrt_CustomTools_target
-
-  # Add a header, some variables and include the function file
-  # to the top of the real Makefile.
-  wrt_Makefile_header
-
-  # Drop in the main target 'all:' and the chapter targets with each sub-target
-  # as a dependency.
-(
-cat << EOF
-
-all:	ck_UID mk_SETUP mk_LUSER create-sbu_du-report mk_CUSTOM_TOOLS mk_ROOT
-	@sudo make restore-luser-env
-	@sudo make do-housekeeping
-	@\$(call echo_finished,$VERSION)
-
-ck_UID:
-	@if [ \`id -u\` = "0" ]; then \\
-	  echo "--------------------------------------------------"; \\
-	  echo "You cannot run this makefile from the root account"; \\
-	  echo "--------------------------------------------------"; \\
-	  exit 1; \\
-	fi
-
-mk_SETUP:
-	@\$(call echo_SU_request)
-	@sudo make BREAKPOINT=\$(BREAKPOINT) SETUP
-	@touch \$@
-
-mk_LUSER: mk_SETUP
-	@\$(call echo_SULUSER_request)
-	@(sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) LUSER" )
-	@touch \$@
-
-mk_CUSTOM_TOOLS: create-sbu_du-report
-	@if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\
-	  \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\
-	  (sudo \$(SU_LUSER) "mkdir -p $BUILDDIR$TRACKING_DIR"); \\
-	  (sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS"); \\
-	fi;
-	@touch \$@
-
-mk_ROOT:
-	@\$(call echo_SU_request)
-	@echo "$VERSION-embedded - jhalfs build" > clfs-release && \\
-	sudo mv clfs-release \$(MOUNT_PT)/etc
-	@sudo make BREAKPOINT=\$(BREAKPOINT) ROOT
-	@touch \$@
-
-
-SETUP:        $host_prep
-LUSER:	      $cross_tools $basicsystem $bootscripttools $bootable
-CUSTOM_TOOLS: $custom_list
-ROOT:	      $chowning
-
-
-create-sbu_du-report:  mk_LUSER
-	@\$(call echo_message, Building)
-	@if [ "\$(ADD_REPORT)" = "y" ]; then \\
-	  ./create-sbu_du-report.sh logs $VERSION $(date --iso-8601); \\
-	  \$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report); \\
-	fi;
-	@touch  \$@
-
-restore-luser-env:
-	@\$(call echo_message, Building)
-	@if [ -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\
-		mv -f \$(LUSER_HOME)/.bashrc.XXX \$(LUSER_HOME)/.bashrc; \\
-	fi;
-	@if [ -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\
-		mv \$(LUSER_HOME)/.bash_profile.XXX \$(LUSER_HOME)/.bash_profile; \\
-	fi;
-	@chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bash* && \\
-	touch \$@ && \\
-	echo " "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\
-	echo --------------------------------------------------------------------------------\$(WHITE)
-
-do-housekeeping:
-	@-if [ ! -f luser-exist ]; then \\
-		userdel \$(LUSER); \\
-		rm -rf \$(LUSER_HOME); \\
-	fi;
-
-EOF
-) >> $MKFILE
-
-  # Bring over the items from the Makefile.tmp
-  cat $MKFILE.tmp >> $MKFILE
-  rm $MKFILE.tmp
-  echo "Creating Makefile... ${BOLD}DONE${OFF}"
-
-}
-
diff --git a/custom/examples_CLFS-E/950-dropbear b/custom/examples_CLFS-E/950-dropbear
deleted file mode 100644
index 8d5769b..0000000
--- a/custom/examples_CLFS-E/950-dropbear
+++ /dev/null
@@ -1,46 +0,0 @@
-# Code taken from CLFS-Embedded
-# Chapter 12 Beyond CLFS Embedded
-#
-# Dropbear is a relatively small SSH 2 server and client.
-# Dropbear has a small memory footprint suitable for memory-constrained
-# environments, while still having the same features as OpenSSH. It
-# does not depend on OpenSSL and it has a MIT style license. Optionally
-# it can even be made smaller.
-#
-
-PKG="DROPBEAR"
-PKG_VERSION="0.48.1"
-PKG_FILE="${PKG}-${PKG_VERSION}.tar.gz"
-URL="http://matt.ucc.asn.au/dropbear/releases/${PKG_FILE}"
-MD5="ca8e53a766faec831882831364568421"
-for i in PATCH{1..10}; do
-   unset $i
-done
-PATCH1="http://svn.cross-lfs.org/svn/repos/cross-lfs/branches/clfs-embedded/patches/dropbear-0.48.1-autotool-1.patch"
-
-( cat << "xEOFx"
-
-patch -Np1 -i ../dropbear-0.48.1-autotool-1.patch
-
-cp Makefile.in{,.orig}
-sed -e s/@LD@/@CC@/ Makefile.in.orig > Makefile.in
-
-CC="${CC} ${BUILD}" ./configure --prefix=/usr --host=${CLFS_TARGET}
-
-cp -v options.h options.h.backup
-sed -e "s@/dev/random@/dev/urandom@" options.h.backup > options.h
-
-make MULTI=1 PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp"
-
-make MULTI=1 PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" install DESTDIR=${CLFS}
-ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/sbin/dropbear
-ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/dbclient
-ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/dropbearkey
-ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/dropbearconvert
-ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/scp
-
-install -dv ${CLFS}/etc/ssh
-
-
-xEOFx
-) > tmp
diff --git a/custom/examples_CLFS-E/960-iptables b/custom/examples_CLFS-E/960-iptables
deleted file mode 100644
index 0371b33..0000000
--- a/custom/examples_CLFS-E/960-iptables
+++ /dev/null
@@ -1,39 +0,0 @@
-# Code taken from CLFS-Embedded
-# Chapter 12 Beyond CLFS Embedded
-#
-# iptables is the userspace command line program
-# used to configure the Linux firewall.
-#
-
-PKG="iptables"
-PKG_VERSION="1.3.7"
-PKG_FILE="${PKG}-${PKG_VERSION}.tar.bz2"
-URL=" http://www.netfilter.org/projects/iptables/files/iptables-1.3.7.tar.bz2"
-MD5="077e886a9c90a11bb47f3d7a4fc4a689"
-for i in PATCH{1..10}; do
-   unset $i
-done
-PATCH1="http://svn.cross-lfs.org/svn/repos/cross-lfs/branches/clfs-embedded/patches/iptables-1.3.7-do_multi-1.patch"
-
-( cat << "xEOFx"
-
-patch -Np1 -i ../iptables-1.3.7-do_multi-1.patch
-
-make CC="${CC} ${BUILD}" \
-     COPT_FLAGS="-Os" \
-     LD=${LD} DO_MULTI=1 \
-     PREFIX=/usr \
-     KERNEL_DIR=${CLFS}/lib/modules/2.6.19.2/build \
-     LIBDIR=/lib \
-     BINDIR=/sbin
-
-make CC="${CC} ${BUILD}" \
-     COPT_FLAGS="-Os" \
-     LD=${LD} DO_MULTI=1 \
-     PREFIX=/usr \
-     KERNEL_DIR=${CLFS}/lib/modules/2.6.19.2/build \
-     LIBDIR=/lib BINDIR=/sbin \
-     DESTDIR=${CLFS} install
-
-xEOFx
-) > tmp
diff --git a/jhalfs b/jhalfs
index 56b1231..484789d 100755
--- a/jhalfs
+++ b/jhalfs
@@ -247,9 +247,6 @@ case $PROGNAME in
 esac
 
 declare -r LOG=000-masterscript.log
-# Needed for fetching BLFS book sources when building CLFS
-# shellcheck disable=SC2034
-# declare -r GIT="git://git.linuxfromscratch.org"
 
 # Set true internal variables
 COMMON_DIR="common"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

-- 
http://lists.linuxfromscratch.org/sympa/info/alfs-discuss
Unsubscribe: See the above information page
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.