浏览代码

Merge changes from trunk to multilib

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/multilib@12118 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Thomas Trepl 4 年之前
父节点
当前提交
632597707f

+ 3 - 0
bootscripts/ChangeLog

@@ -1,3 +1,6 @@
+2021-02-01 Bruce Dubbs <bdubbs@linuxfromscratch.org>
+   * Tweak mountfs to properly exit when an error is found.
+
 2021-01-13 Xi Ruoyao <xry111@mengyan1223.wang>
    * Use /run instead of deprecated /var/run
 

+ 2 - 1
bootscripts/lfs/init.d/mountfs

@@ -46,7 +46,8 @@ case "${1}" in
       # their option list.  _netdev denotes a network filesystem.
 
       log_info_msg "Mounting remaining file systems..."
-      mount --all --test-opts no_netdev >/dev/null
+      failed=0
+      mount --all --test-opts no_netdev >/dev/null || failed=1
       evaluate_retval
       exit $failed
       ;;

+ 33 - 0
chapter01/changelog.xml

@@ -44,6 +44,39 @@
     <listitem revision="sysv"> or <listitem revision="systemd"> as
     appropriate for the entry or if needed the entire day's listitem.
     -->
+    <listitem>
+      <itemizedlist>
+      <para>2021-02-02</para>
+        <listitem>
+          <para>[pierre] - Move tcl, expect, and dejagnu just before binutils
+          in chapter 8: this allows to build them against chapter 8
+          glibc.</para>
+        </listitem>
+        <listitem>
+          <para>[pierre] - To allow building with newer version of glibc
+          than the host distribution, build a "file" executable for the
+          host before cross-compiling it.</para>
+        </listitem>
+        <listitem>
+          <para>[pierre] - Replace the relinked libctf (which may incorrectly
+          link against libz from the host distribution) with the one that
+          was linked during "make" in binutils-pass2.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to bc-3.2.6. Fixes
+          <ulink url="&lfs-ticket-root;4800">#4800</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to glibc-2.33. Fixes
+          <ulink url="&lfs-ticket-root;4799">#4799</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Minor change to mountfs boot script. Fixes
+          <ulink url="&lfs-ticket-root;4798">#4798</ulink>.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
     <listitem>
       <itemizedlist>
       <para>2021-02-01</para>

+ 2 - 2
chapter01/whatsnew.xml

@@ -105,9 +105,9 @@
     <!--<listitem>
       <para>Gettext-&gettext-version;</para>
     </listitem>-->
-    <!--<listitem>
+    <listitem>
       <para>Glibc-&glibc-version;</para>
-    </listitem>-->
+    </listitem>
     <listitem>
       <para>GMP-&gmp-version;</para>
     </listitem>

+ 14 - 2
chapter06/binutils-pass2.xml

@@ -101,9 +101,21 @@ cd       build</userinput></screen>
 
 <screen><userinput remap="make">make</userinput></screen>
 
-    <para>Install the package:</para>
+    <para>Install the package, and
+    workaround an issue causing
+    <filename class="libraryfile">libctf.so</filename>
+    to link against zlib from the host distribution:</para>
 
-<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
+<screen><userinput remap="install">make DESTDIR=$LFS install
+install -vm755 libctf/.libs/libctf.so.0.0.0 $LFS/usr/lib</userinput></screen>
+
+    <para>
+      Workaround an issue causing
+      <filename class="libraryfile">libctf.so</filename>
+      to link against zlib from the host distribution:
+    </para>
+
+<screen><userinput remap="install">install -vm755 libctf/.libs/libctf.so.0.0.0 $LFS/usr/lib</userinput></screen>
 
   </sect2>
 

+ 1 - 1
chapter06/chapter06.xml

@@ -22,7 +22,7 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gawk.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="grep.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gzip.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zlib.xml"/>
+  <!--xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zlib.xml"/-->
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="make.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="patch.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="sed.xml"/>

+ 14 - 2
chapter06/file.xml

@@ -43,9 +43,21 @@
   <sect2 role="installation">
     <title>Installation of File</title>
 
+    <para>
+       The <command>file</command> command on the build host needs 
+       to be same version as the one we are building in order to 
+       create the signature file. Run the following commands to build it:
+    </para>
+
+<screen><userinput remap="pre">mkdir build
+pushd build
+  ../configure
+  make
+popd</userinput></screen>
+
     <para>Prepare File for compilation:</para>
 
-<screen><userinput remap="configure">./configure --prefix=/usr --host=$LFS_TGT</userinput></screen>
+<screen><userinput remap="configure">./configure --prefix=/usr --host=$LFS_TGT --build=$(./config.guess)</userinput></screen>
 
 <!-- devs: if using - -build here, the build system wants to compile
      the signature file with "file" on the build system, but stops if it is not
@@ -54,7 +66,7 @@
      cross-compiling, and use the just built "file". -->
     <para>Compile the package:</para>
 
-<screen><userinput remap="make">make</userinput></screen>
+<screen><userinput remap="make">make FILE_COMPILE=$(pwd)/build/src/file</userinput></screen>
 
     <para>Install the package:</para>
 

+ 2 - 0
chapter06/ncurses.xml

@@ -177,6 +177,7 @@ echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so</userinput></screen>
 CXX="$LFS_TGT-g++ -m32"             \
 ./configure --prefix=/usr           \
             --host=$LFS_TGT32       \
+            --build=$(./config.guess)    \
             --libdir=&usr-lib-m32;     \
             --mandir=/usr/share/man \
             --with-shared           \
@@ -216,6 +217,7 @@ rm -rf DESTDIR</userinput></screen>
 CXX="$LFS_TGT-g++ -mx32"            \
 ./configure --prefix=/usr           \
             --host=$LFS_TGTX32      \
+            --build=$(./config.guess)    \
             --libdir=&usr-lib-mx32;    \
             --mandir=/usr/share/man \
             --with-shared           \

+ 0 - 122
chapter06/zlib.xml

@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="ch-tools-zlib" role="wrap">
-  <?dbhtml filename="zlib.html"?>
-
-  <sect1info condition="script">
-    <productname>zlib</productname>
-    <productnumber>&zlib-version;</productnumber>
-    <address>&zlib-url;</address>
-  </sect1info>
-
-  <title>Zlib-&zlib-version;</title>
-
-  <indexterm zone="ch-tools-zlib">
-    <primary sortas="a-Zlib">Zlib</primary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title/>
-
-    <para>The Zlib package contains compression and decompression routines used by
-    some programs.</para>
-
-    <segmentedlist>
-      <segtitle>&buildtime;</segtitle>
-      <segtitle>&diskspace;</segtitle>
-
-      <seglistitem>
-        <seg>&zlib-fin-sbu;</seg>
-        <seg>&zlib-fin-du;</seg>
-      </seglistitem>
-    </segmentedlist>
-
-  </sect2>
-
-  <sect2 role="installation">
-    <title>Installation of Zlib</title>
-
-    <para>Prepare Zlib for compilation:</para>
-
-<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
-
-    <para>Compile the package:</para>
-
-<screen><userinput remap="make">make</userinput></screen>
-
-    <para>Install the package:</para>
-
-<screen><userinput remap="install">make DESTDIR=$LFS install
-mv -v $LFS/usr/lib/libz.so.* $LFS/lib
-ln -sfv ../../lib/$(readlink $LFS/usr/lib/libz.so) $LFS/usr/lib/libz.so</userinput></screen>
-
-  </sect2>
-
-  <!-- - - - - - - - - - -->
-  <!-- Multilib - 32bit  -->
-  <!-- - - - - - - - - - -->
-
-  <sect2 arch="ml_32,ml_all" role="installation">
-    <title>Installation of Zlib - 32bit</title>
-
-    <para>Clean previous build:</para>
-
-<screen><userinput remap="pre">make distclean</userinput></screen>
-
-    <para>Prepare Zlib for compilation:</para>
-
-<screen><userinput remap="configure">CC="gcc -m32" \
-./configure --prefix=/usr \
-    --libdir=&usr-lib-m32;</userinput></screen>
-
-    <para>Compile the package:</para>
-
-<screen><userinput remap="make">make</userinput></screen>
-
-    <para>Install the package:</para>
-
-<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
-cp -Rv DESTDIR&usr-lib-m32;/* $LFS&usr-lib-m32;
-rm -rf DESTDIR</userinput></screen>
-
-  </sect2><!-- m32 -->
-
-  <!-- - - - - - - - - - -->
-  <!-- Multilib - x32bit -->
-  <!-- - - - - - - - - - -->
-
-  <sect2 arch="ml_x32,ml_all" role="installation">
-    <title>Installation of Zlib - x32bit</title>
-
-<screen><userinput remap="pre">make distclean</userinput></screen>
-
-    <para>Prepare Zlib for compilation:</para>
-
-<screen><userinput remap="configure">CC="gcc -mx32" \
-./configure --prefix=/usr    \
-    --libdir=&usr-lib-mx32;</userinput></screen>
-
-    <para>Compile the package:</para>
-
-<screen><userinput remap="make">make</userinput></screen>
-
-    <para>Install the package:</para>
-
-<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
-cp -Rv DESTDIR&usr-lib-mx32;/* $LFS&usr-lib-mx32;
-rm -rf DESTDIR</userinput></screen>
-
-  </sect2><!-- mx32 -->
-
-  <sect2 role="content">
-     <title/>
-     <para>Details on this package are located in <xref linkend="contents-zlib" role="."/></para>
-
-  </sect2>
-
-</sect1>

+ 0 - 4
chapter08/bc.xml

@@ -41,10 +41,6 @@
   <sect2 role="installation">
     <title>Installation of Bc</title>
 
-    <para>First, fix an error in the configure script::</para>
-
-<screen><userinput remap="pre">sed -i '612d' configure.sh</userinput></screen>
-
     <para>Prepare Bc for compilation:</para>
 
 <screen><userinput remap="configure">PREFIX=/usr CC=gcc ./configure.sh -G -O3</userinput></screen>

+ 5 - 5
chapter08/chapter08.xml

@@ -14,11 +14,6 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="introduction.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkgmgt.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="man-pages.xml"/>
-
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tcl.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="expect.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dejagnu.xml"/>
-
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="iana-etc.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glibc.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zlib.xml"/>
@@ -30,6 +25,11 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="m4.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bc.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="flex.xml"/>
+
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tcl.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="expect.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dejagnu.xml"/>
+
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="binutils.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gmp.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="mpfr.xml"/>

+ 2 - 3
chapter08/gcc.xml

@@ -143,7 +143,7 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
     apparently related to the en_HK locale.</para>
 
     <para>Additionally the following tests related to the following files
-    are known to fail with glibc-2.32: asan_test.C, co-ret-17-void-ret-coro.C, 
+    are known to fail with glibc-2.33: asan_test.C, co-ret-17-void-ret-coro.C, 
     pr95519-05-gro.C, pr80166.c.</para>
 
 <!-- don't fail anymore after the move of iana-etc and /etc/hosts
@@ -192,8 +192,7 @@ rm -rf /usr/lib/gcc/$(gcc -dumpmachine)/&gcc-version;/include-fixed/bits/</useri
     <para>Add a compatibility symlink to enable building programs with
     Link Time Optimization (LTO):</para> 
 
-<screen><userinput remap="install">install -v -dm755 /usr/lib/bfd-plugins
-ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \
+<screen><userinput remap="install">ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \
         /usr/lib/bfd-plugins/</userinput></screen>
 
     <para>Now that our final toolchain is in place, it is important to again ensure

+ 4 - 10
chapter08/glibc.xml

@@ -133,7 +133,7 @@ cd       build</userinput></screen>
     are usually safe to ignore.</para>
 
 <!-- Use remap="make" here to work around a jhalfs issue. -->
-<screen><userinput remap="make">case $(uname -m) in
+<!--<screen><userinput remap="make">case $(uname -m) in
   i?86)   ln -sfnv $PWD/elf/ld-linux.so.2        /lib ;;
   x86_64) ln -sfnv $PWD/elf/ld-linux-x86-64.so.2 /lib ;;
 esac</userinput></screen>
@@ -141,7 +141,7 @@ esac</userinput></screen>
     <note><para>The symbolic link above is needed to run the tests at this
     stage of building in the chroot environment.  It will be overwritten
     in the install phase below.</para></note>
-
+-->
 <screen><userinput remap="test">make check</userinput></screen>
 
     <para>You may see some test failures.  The Glibc test suite is
@@ -159,18 +159,12 @@ esac</userinput></screen>
         <para><emphasis>misc/tst-ttyname</emphasis> 
         is known to fail in the LFS chroot environment.</para>
       </listitem>
-<!--
-      <listitem>
-        <para><emphasis>inet/tst-idna_name_classify</emphasis> 
-        is known to fail in the LFS chroot environment.</para>
-      </listitem>
 
       <listitem>
-        <para><emphasis>posix/tst-getaddrinfo4</emphasis> and
-        <emphasis>posix/tst-getaddrinfo5</emphasis>
+        <para><emphasis>elf/tst-cpu-features-cpuinfo</emphasis>
         may fail on some architectures.</para>
       </listitem>
--->
+
       <listitem>
         <para>The <emphasis>nss/tst-nss-files-hosts-multi</emphasis>
         test may fail for reasons that have not been determined.</para>

+ 2 - 3
chapter08/tcl.xml

@@ -45,11 +45,10 @@
     <title>Installation of Tcl</title>
 
     <para>This package and the next two (Expect and DejaGNU) are
-    installed to support running the test suites for GCC and binutils and other
+    installed to support running the test suites for binutils and GCC and other
     packages.  Installing three packages for testing purposes may seem
     excessive, but it is very reassuring, if not essential, to know that the
-    most important tools are working properly. These packages are required
-    to run the test suites in this chapter.</para>
+    most important tools are working properly.</para>
 
 <!--    <para>Note that the Tcl package used here is a minimal version needed
     to run the LFS tests.  For the full package, see the  

+ 3 - 3
general.ent

@@ -1,13 +1,13 @@
-<!ENTITY version         "SVN-20210201">
+<!ENTITY version         "SVN-20210202">
 <!ENTITY short-version   "svn">  <!-- Used below in &blfs-book; 
                                       Change to x.y for release but not -rc releases -->
 <!ENTITY generic-version "development"> <!-- Use "development"  or "x.y[-pre{x}]" -->
 
-<!ENTITY versiond        "20210201-systemd">
+<!ENTITY versiond        "20210202-systemd">
 <!ENTITY short-versiond  "systemd">
 <!ENTITY generic-versiond "systemd"> 
 
-<!ENTITY releasedate     "February 1st, 2021">
+<!ENTITY releasedate     "February 2nd, 2021">
 
 <!ENTITY copyrightdate   "1999-2021"><!-- jhalfs needs a literal dash, not &ndash; -->
 

+ 7 - 7
packages.ent

@@ -57,10 +57,10 @@
 <!ENTITY bash-fin-du "48 MB">
 <!ENTITY bash-fin-sbu "2.4 SBU">
 
-<!ENTITY bc-version "3.2.5">
-<!ENTITY bc-size "229 KB">
+<!ENTITY bc-version "3.2.6">
+<!ENTITY bc-size "230 KB">
 <!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz">
-<!ENTITY bc-md5 "44cd2eb1ad793b6d95ea5fc7b9293cd4">
+<!ENTITY bc-md5 "f2c3da63d24c8c541413866b13ec1e3b">
 <!ENTITY bc-home "https://git.yzena.com/gavin/bc">
 <!ENTITY bc-fin-du "6.5 MB">
 <!ENTITY bc-fin-sbu "less than 0.1 SBU">
@@ -256,10 +256,10 @@
 <!ENTITY gettext-fin-du "240 MB">
 <!ENTITY gettext-fin-sbu "3.2 SBU">
 
-<!ENTITY glibc-version "2.32">
-<!ENTITY glibc-size "16,353 KB">
+<!ENTITY glibc-version "2.33">
+<!ENTITY glibc-size "16,663 KB">
 <!ENTITY glibc-url "&gnu;glibc/glibc-&glibc-version;.tar.xz">
-<!ENTITY glibc-md5 "720c7992861c57cf97d66a2f36d8d1fa">
+<!ENTITY glibc-md5 "390bbd889c7e8e8a7041564cb6b27cca">
 <!ENTITY glibc-home "&gnu-software;libc/">
 <!ENTITY glibc-tmp-du "762 MB">
 <!ENTITY glibc-tmp-sbu "4.6 SBU">
@@ -383,7 +383,7 @@
 <!ENTITY less-fin-du "4.1 MB">
 <!ENTITY less-fin-sbu "less than 0.1 SBU">
 
-<!ENTITY lfs-bootscripts-version "20210113">      <!-- Scripts depend on this format -->
+<!ENTITY lfs-bootscripts-version "20210201">      <!-- Scripts depend on this format -->
 <!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">        
 <!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.xz">
 <!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">