diff options
author | Thomas Trepl <thomas@linuxfromscratch.org> | 2020-05-30 07:00:00 +0000 |
---|---|---|
committer | Thomas Trepl <thomas@linuxfromscratch.org> | 2020-05-30 07:00:00 +0000 |
commit | 777c890b8ca26c4266e14e7f89c6be301da05c42 (patch) | |
tree | 3d848ebc02d61708b5cf6d5de249c24ab8d7640d | |
parent | 160e72c2431f08e3ab14fd212b9723cc16579b0c (diff) |
MultiLib: Merge changes up to 11861
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/multilib@11871 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
-rw-r--r-- | appendices/dependencies.xml | 2 | ||||
-rw-r--r-- | chapter01/changelog.xml | 57 | ||||
-rw-r--r-- | chapter01/whatsnew.xml | 8 | ||||
-rw-r--r-- | chapter06/bash.xml | 20 | ||||
-rw-r--r-- | chapter06/coreutils.xml | 16 | ||||
-rw-r--r-- | chapter06/createfiles.xml | 7 | ||||
-rw-r--r-- | chapter06/findutils.xml | 6 | ||||
-rw-r--r-- | chapter06/gcc.xml | 6 | ||||
-rw-r--r-- | chapter06/revisedchroot.xml | 5 | ||||
-rw-r--r-- | chapter06/sed.xml | 19 | ||||
-rw-r--r-- | chapter06/util-linux.xml | 21 | ||||
-rw-r--r-- | chapter06/vim.xml | 8 | ||||
-rw-r--r-- | chapter08/kernel.xml | 10 | ||||
-rw-r--r-- | general.ent | 6 | ||||
-rw-r--r-- | packages.ent | 24 |
15 files changed, 120 insertions, 95 deletions
diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 55bcd3800..99144fdd9 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -911,7 +911,7 @@ <seglistitem> <seg>Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Make, - Sed, and Texinfo</seg> + Ncurses, Sed, and Texinfo</seg> </seglistitem> </segmentedlist> diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index ebab6f423..45c1ed4b3 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -45,12 +45,59 @@ appropriate for the entry or if needed the entire day's listitem. --> <listitem> + <para>2020-05-29</para> + <itemizedlist> + <listitem> + <para>[bdubbs] - Run sed and findutils tests as an + unprivileged user. Fixes + <ulink url="&lfs-ticket-root;4661">#4661</ulink>.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para>2020-05-28</para> + <itemizedlist> + <listitem> + <para>[bdubbs] - Add an unprivileged user, tester, at the + beginning of Chapter 6 for running some tests. This + user is then removed at the end of the chapter.</para> + </listitem> + <listitem> + <para>[bdubbs] - Update to zstd-1.4.5. Fixes + <ulink url="&lfs-ticket-root;4660">#4660</ulink>.</para> + </listitem> + <listitem> + <para>[bdubbs] - Update to util-linux-2.35.2. Fixes + <ulink url="&lfs-ticket-root;4659">#4659</ulink>.</para> + </listitem> + <listitem> + <para>[bdubbs] - Update to bison-3.6.2. Fixes + <ulink url="&lfs-ticket-root;4657">#4657</ulink>.</para> + </listitem> + <listitem> + <para>[pierre] - Update to linux-5.6.15. Fixes + <ulink url="&lfs-ticket-root;4658">#4658</ulink>.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para>2020-05-27</para> + <itemizedlist> + <listitem> + <para>[pierre] - Bash: document test results.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> <para>2020-05-26</para> <itemizedlist> <listitem> <para>[pierre] - Bash: do not use "su -c command" to change user - to nobody: it removes the controlling terminal and makes some - tests fail. Use "su << EOF" instead.</para> + to nobody: it removes the controlling terminal and makes some + tests fail. Use "su << EOF" instead.</para> </listitem> <listitem> <para>[pierre] - Mount /dev/pts with "--bind", so that "tty" @@ -67,10 +114,10 @@ <para>[pierre] - Update to vim-8.2.0814.</para> </listitem> <listitem> - <para>[pierre] - Add a symlink from /tools/share/locale - to /usr/share/locale/locale-archive, to allow some programs + <para>[pierre] - Add a symlink from /tools/lib/locale + to /usr/lib/locale/locale-archive, to allow some programs to find the installed locales. Fixes test failures in bison - and man-db;</para> + and man-db.</para> </listitem> </itemizedlist> </listitem> diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 8fa0cf71c..14ea32943 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -245,9 +245,9 @@ <listitem> <para>Tzdata-&tzdata-version;</para> </listitem> - <!--<listitem> + <listitem> <para>Util-Linux-&util-linux-version;</para> - </listitem>--> + </listitem> <listitem> <para>Vim-&vim-version;</para> </listitem> @@ -260,9 +260,9 @@ <!--<listitem> <para>Zlib-&zlib-version;</para> </listitem>--> - <!--<listitem> + <listitem> <para>Zstd-&zstd-version;</para> - </listitem>--> + </listitem> </itemizedlist> <!--<itemizedlist> diff --git a/chapter06/bash.xml b/chapter06/bash.xml index 953c4ad72..ae42cf4cb 100644 --- a/chapter06/bash.xml +++ b/chapter06/bash.xml @@ -73,21 +73,21 @@ <para>Skip down to <quote>Install the package</quote> if not running the test suite.</para> - <para>To prepare the tests, ensure that the <systemitem class="username">nobody</systemitem> user can write to the sources tree:</para> + <para>To prepare the tests, ensure that the <systemitem class="username">tester</systemitem> user can write to the sources tree:</para> -<screen><userinput remap="test">chown -Rv nobody .</userinput></screen> +<screen><userinput remap="test">chown -Rv tester .</userinput></screen> <para>Now, run the tests as the <systemitem - class="username">nobody</systemitem> user:</para> + class="username">tester</systemitem> user:</para> -<screen><userinput remap="test">su nobody -s /bin/bash << EOF -PATH=$PATH HOME=/home make tests -EOF</userinput></screen> +<screen><userinput remap="test">su tester -c "PATH=$PATH make tests"</userinput></screen> - <para>The <command>su</command> command above is slightly different from - other places in the book. The - reason is that the <option>-c</option> option runs the command without - a controlling terminal, while the bash test suite needs one.</para> + <para>The <systemitem class="username">tester</systemitem> + user does not have enough permissions for all the tests to pass. This shows + up in some <quote>diff</quote> output in four test results. Portions of the + run-execscript, run-lastpipe, run-read, and run-test programs + are known to fail in the LFS chroot environment, but pass if the tests + are run in a full system.</para> <para>Install the package and move the main executable to <filename class='directory'>/bin</filename>:</para> diff --git a/chapter06/coreutils.xml b/chapter06/coreutils.xml index 50907ae11..e3ab4a679 100644 --- a/chapter06/coreutils.xml +++ b/chapter06/coreutils.xml @@ -108,35 +108,35 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \ <para>Now the test suite is ready to be run. First, run the tests that are meant to be run as user <systemitem class="username">root</systemitem>:</para> -<screen><userinput remap="test">make NON_ROOT_USERNAME=nobody check-root</userinput></screen> +<screen><userinput remap="test">make NON_ROOT_USERNAME=tester check-root</userinput></screen> <para>We're going to run the remainder of the tests as the - <systemitem class="username">nobody</systemitem> user. Certain tests, + <systemitem class="username">tester</systemitem> user. Certain tests, however, require that the user be a member of more than one group. So that these tests are not skipped we'll add a temporary group and make the - user <systemitem class="username">nobody</systemitem> a part of it:</para> + user <systemitem class="username">tester</systemitem> a part of it:</para> -<screen><userinput remap="test">echo "dummy:x:1000:nobody" >> /etc/group</userinput></screen> +<screen><userinput remap="test">echo "tester:x:1000:nogroup" >> /etc/group</userinput></screen> <para>Fix some of the permissions so that the non-root user can compile and run the tests:</para> -<screen><userinput remap="test">chown -Rv nobody . </userinput></screen> +<screen><userinput remap="test">chown -Rv tester . </userinput></screen> <para>Now run the tests. Make sure the PATH in the <userinput>su</userinput> environment includes /tools/bin.</para> -<screen><userinput remap="test">su nobody -s /bin/bash -c "PATH=$PATH make RUN_EXPENSIVE_TESTS=yes check"</userinput></screen> +<screen><userinput remap="test">su tester -c "PATH=$PATH make RUN_EXPENSIVE_TESTS=yes check"</userinput></screen> <!-- <para>The test program test-getlogin is known to fail in a partially built system environment like the chroot environment here, but passes if run at the end of this chapter. The test program tty.sh is also known to fail.</para> ---> + <para>Remove the temporary group:</para> <screen><userinput remap="test">sed -i '/dummy/d' /etc/group</userinput></screen> - +--> <para>Install the package:</para> <screen><userinput remap="install">make install</userinput></screen> diff --git a/chapter06/createfiles.xml b/chapter06/createfiles.xml index 0941391e2..20278d6e8 100644 --- a/chapter06/createfiles.xml +++ b/chapter06/createfiles.xml @@ -364,6 +364,13 @@ EOF</userinput></screen> administrator since well-written programs do not depend on GID numbers, but rather use the group's name.</para> + <para>Some tests later in the chapter need a regular user. We add this + user here and delete this account at the end of the chapter.</para> + +<screen><userinput>echo "tester:x:101:101::/home/tester:/bin/bash" >> /etc/passwd +echo "tester:x:101:dummy" >> /etc/group +install -o tester -d /home/tester</userinput></screen> + <para>To remove the <quote>I have no name!</quote> prompt, start a new shell. Since a full Glibc was installed in <xref linkend="chapter-temporary-tools"/> and the diff --git a/chapter06/findutils.xml b/chapter06/findutils.xml index 15b6d70fb..37393f0de 100644 --- a/chapter06/findutils.xml +++ b/chapter06/findutils.xml @@ -67,10 +67,8 @@ <para>To test the results, issue:</para> -<screen><userinput remap="test">make check</userinput></screen> - - <para>Two tests are known to fail in the chroot environment: - sv-bug-54171.old-O3 and sv-bug-54171.new-O3.</para> +<screen><userinput remap="test">chown -Rv tester . +su tester -c "PATH=$PATH make check"</userinput></screen> <para>Install the package:</para> diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml index 03bac7a39..5eabb9ce5 100644 --- a/chapter06/gcc.xml +++ b/chapter06/gcc.xml @@ -126,8 +126,8 @@ cd build</userinput></screen> <para>Test the results as a non-privileged user, but do not stop at errors:</para> -<screen><userinput remap="test">chown -Rv nobody . -su nobody -s /bin/bash -c "PATH=$PATH make -k check"</userinput></screen> +<screen><userinput remap="test">chown -Rv tester . +su tester -c "PATH=$PATH make -k check"</userinput></screen> <para>To receive a summary of the test suite results, run:</para> @@ -167,7 +167,7 @@ su nobody -s /bin/bash -c "PATH=$PATH make -k check"</userinput></screen> rm -rf /usr/lib/gcc/$(gcc -dumpmachine)/&gcc-version;/include-fixed/bits/</userinput></screen> <para>The GCC build directory is owned by <systemitem class="username"> - nobody</systemitem> now and the ownership of the installed header + tester</systemitem> now and the ownership of the installed header directory (and its content) will be incorrect. Change the ownership to <systemitem class="username">root</systemitem> user and group:</para> diff --git a/chapter06/revisedchroot.xml b/chapter06/revisedchroot.xml index 0a3339e64..f4e12a804 100644 --- a/chapter06/revisedchroot.xml +++ b/chapter06/revisedchroot.xml @@ -73,4 +73,9 @@ rm -f /usr/lib/libz.a</userinput></screen> url="&blfs-book;/introduction/la-files.html">BLFS section "About Libtool Archive (.la) files"</ulink>.</para> + <para>Finally, remove the temporary 'tester' usr account created at the + beginning of this chapter.</para> + +<screen><userinput>sed -i '/tester/d' /etc/passwd /etc/group +rm -rf /home/tester</userinput></screen> </sect1> diff --git a/chapter06/sed.xml b/chapter06/sed.xml index aa6ac177c..9dee31ed2 100644 --- a/chapter06/sed.xml +++ b/chapter06/sed.xml @@ -40,26 +40,14 @@ <sect2 role="installation"> <title>Installation of Sed</title> - <para>First fix an issue in the LFS environment and remove a failing test:</para> + <para>First fix an issue in the LFS environment:</para> -<screen><userinput remap="pre">sed -i 's/usr/tools/' build-aux/help2man -sed -i 's/testsuite.panic-tests.sh//' Makefile.in</userinput></screen> +<screen><userinput remap="pre">sed -i 's/usr/tools/' build-aux/help2man</userinput></screen> <para>Prepare Sed for compilation:</para> <screen><userinput remap="configure">./configure --prefix=/usr --bindir=/bin</userinput></screen> -<!-- - <variablelist> - <title>The meaning of the new configure option:</title> - <varlistentry> - <term><parameter>-i -htmldir</parameter></term> - <listitem> - <para>This sets the installation directory for the HTML documentation.</para> - </listitem> - </varlistentry> - </variablelist> ---> <para>Compile the package and generate the HTML documentation:</para> <screen><userinput remap="make">make @@ -67,7 +55,8 @@ make html</userinput></screen> <para>To test the results, issue:</para> -<screen><userinput remap="test">make check</userinput></screen> +<screen><userinput remap="test">chown -Rv tester . +su -c "PATH=$PATH make check"</userinput></screen> <para>Install the package and its documentation:</para> diff --git a/chapter06/util-linux.xml b/chapter06/util-linux.xml index 75054a0e2..5ee12d1b5 100644 --- a/chapter06/util-linux.xml +++ b/chapter06/util-linux.xml @@ -40,27 +40,16 @@ </sect2> <sect2 role="installation"> - <title>FHS compliance notes</title> + <title>Installation of Util-linux</title> <para>The FHS recommends using the <filename class="directory">/var/lib/hwclock</filename> directory instead of the usual <filename class="directory">/etc</filename> directory as the - location for the <filename>adjtime</filename> file. First create a directory - to enable storage for the <command>hwclock</command> program:</para> + location for the <filename>adjtime</filename> file. Create this directory + with:</para> <screen><userinput remap="pre">mkdir -pv /var/lib/hwclock</userinput></screen> - </sect2> - - <sect2 role="installation"> - <title>Installation of Util-linux</title> -<!-- - <para>First, fix one of the regression tests:</para> - -<screen><userinput remap="pre">sed -e 's/2^64/(2^64/' -e 's/E </E) <=/' -e 's/ne /eq /' \ - -i tests/ts/ipcs/limits2</userinput></screen> ---> - <para>Remove the earlier created symlinks and files:</para> <screen><userinput remap="pre">rm -vf /usr/include/{blkid,libfdisk,libmount,uuid} @@ -115,8 +104,8 @@ rm -vf /usr/lib/pkgconfig/{blkid,fdisk,mount,uuid}.pc</userinput></screen> <screen role="nodump"><userinput>bash tests/run.sh --srcdir=$PWD --builddir=$PWD</userinput></screen> </warning> -<screen><userinput remap="test">chown -Rv nobody . -su nobody -s /bin/bash -c "PATH=$PATH make -k check"</userinput></screen> +<screen><userinput remap="test">chown -Rv tester . +su tester -c "make -k check"</userinput></screen> <para>Install the package:</para> diff --git a/chapter06/vim.xml b/chapter06/vim.xml index 2f91d5c33..263122bd7 100644 --- a/chapter06/vim.xml +++ b/chapter06/vim.xml @@ -67,15 +67,15 @@ <screen><userinput remap="make">make</userinput></screen> <para>To prepare the tests, ensure that the - <systemitem class="username">nobody</systemitem> user can write + <systemitem class="username">tester</systemitem> user can write to the sources tree:</para> -<screen><userinput remap="test">chown -Rv nobody .</userinput></screen> +<screen><userinput remap="test">chown -Rv tester .</userinput></screen> <para>Now run the tests as the <systemitem - class="username">nobody</systemitem> user:</para> + class="username">tester</systemitem> user:</para> -<screen><userinput remap="test">su nobody -s /bin/bash -c "LANG=en_US.UTF-8 make -j1 test" &> vim-test.log</userinput></screen> +<screen><userinput remap="test">su tester -c "LANG=en_US.UTF-8 make -j1 test" &> vim-test.log</userinput></screen> <!--<screen><userinput remap="test">LANG=en_US.UTF-8 make -j1 test &> vim-test.log</userinput></screen>--> diff --git a/chapter08/kernel.xml b/chapter08/kernel.xml index 6ee2192cc..94f050b4e 100644 --- a/chapter08/kernel.xml +++ b/chapter08/kernel.xml @@ -54,16 +54,6 @@ kernel compilation. Do not rely on the source tree being clean after un-tarring.</para> - <!-- The following paragraph and sed should be only necessary on the 5.6 - series, but check when 5.7 is out. --> - <para>When using <envar>CONFIG_STACKPROTECTOR_STRONG=y</envar>, and - compiling with GCC 10 and later, the default optimization is too - aggressive, and generates a kernel panic when booting. This can be - fixed with:</para> - -<screen><userinput remap="pre">sed -e '/cpu_startup/a asm("");' \ - -i arch/x86/{kernel/smpboot.c,xen/smp_pv.c}</userinput></screen> - <!-- Support for compiling a keymap into the kernel is deliberately removed --> <para>Configure the kernel via a menu-driven interface. For general diff --git a/general.ent b/general.ent index 60846c9a0..77e61b49c 100644 --- a/general.ent +++ b/general.ent @@ -1,13 +1,13 @@ -<!ENTITY version "SVN-20200526"> +<!ENTITY version "SVN-20200529"> <!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 "20200526-systemd"> +<!ENTITY versiond "20200529-systemd"> <!ENTITY short-versiond "systemd"> <!ENTITY generic-versiond "systemd"> -<!ENTITY releasedate "May 26th, 2020"> +<!ENTITY releasedate "May 29th, 2020"> <!ENTITY copyrightdate "1999-2020"><!-- jhalfs needs a literal dash, not – --> diff --git a/packages.ent b/packages.ent index f92e4fbe0..5bfa2f4ce 100644 --- a/packages.ent +++ b/packages.ent @@ -70,10 +70,10 @@ <!ENTITY binutils-ch6-du "5.1 GB"> <!ENTITY binutils-ch6-sbu "6.7 SBU"> -<!ENTITY bison-version "3.6.1"> -<!ENTITY bison-size "2,407 KB"> +<!ENTITY bison-version "3.6.2"> +<!ENTITY bison-size "2,411 KB"> <!ENTITY bison-url "&gnu;bison/bison-&bison-version;.tar.xz"> -<!ENTITY bison-md5 "16fa3e60f2c33888c6ef7af64c89e182"> +<!ENTITY bison-md5 "fa5f7c67c523f1d8b2155f55e67f7e1c"> <!ENTITY bison-home "&gnu-software;bison/"> <!ENTITY bison-ch5-du "43 MB"> <!ENTITY bison-ch5-sbu "0.3 SBU"> @@ -433,12 +433,12 @@ <!ENTITY linux-major-version "5"> <!ENTITY linux-minor-version "6"> -<!ENTITY linux-patch-version "13"> +<!ENTITY linux-patch-version "15"> <!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">--> <!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;"> -<!ENTITY linux-size "109,177 KB"> +<!ENTITY linux-size "109,193 KB"> <!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz"> -<!ENTITY linux-md5 "73fa7a9e7c42a9ab2cc8151d20e8d6b6"> +<!ENTITY linux-md5 "41f02b34dbb66ffa6b71bb3e2361e94d"> <!ENTITY linux-home "https://www.kernel.org/"> <!-- measured for 4.8.3 / gcc-6.2.0 on x86_64 : minimum is allnoconfig extended for a hopefully-bootable build on desktop machine, @@ -708,10 +708,10 @@ <!ENTITY udev-lfs-home " "> <!ENTITY util-linux-minor "2.35"> -<!ENTITY util-linux-version "2.35.1"> <!-- 2.33.x --> -<!ENTITY util-linux-size "5,018 KB"> +<!ENTITY util-linux-version "2.35.2"> <!-- 2.33.x --> +<!ENTITY util-linux-size "5,030 KB"> <!ENTITY util-linux-url "&kernel;linux/utils/util-linux/v&util-linux-minor;/util-linux-&util-linux-version;.tar.xz"> -<!ENTITY util-linux-md5 "7f64882f631225f0295ca05080cee1bf"> +<!ENTITY util-linux-md5 "248a4d0810c9193e0e9a4bb3f26b93d8"> <!ENTITY util-linux-home "http://freecode.com/projects/util-linux"> <!ENTITY util-linux-ch5-du "154 MB"> <!ENTITY util-linux-ch5-sbu "0.9 SBU"> @@ -755,10 +755,10 @@ <!ENTITY zlib-ch6-du "5.1 MB"> <!ENTITY zlib-ch6-sbu "less than 0.1 SBU"> -<!ENTITY zstd-version "1.4.4"> -<!ENTITY zstd-size "1,903 KB"> +<!ENTITY zstd-version "1.4.5"> +<!ENTITY zstd-size "1,928 KB"> <!ENTITY zstd-url "https://github.com/facebook/zstd/releases/download/v&zstd-version;/zstd-&zstd-version;.tar.gz"> -<!ENTITY zstd-md5 "487f7ee1562dee7c1c8adf85e2a63df9"> +<!ENTITY zstd-md5 "dd0b53631303b8f972dafa6fd34beb0c"> <!ENTITY zstd-home "https://facebook.github.io/zstd/"> <!ENTITY zstd-ch6-du "16 MB"> <!ENTITY zstd-ch6-sbu "0.7 SBU"> |