diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index ca1b08eb5..6d33cc0b9 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -45,6 +45,16 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2019-05-11 + + + [pierre] - Fix a hardcoded path to /usr/bin/find in the + systemd unit of man-db. + + + + 2019-05-03 diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml index fece3969f..a7efac839 100644 --- a/chapter05/gcc-pass1.xml +++ b/chapter05/gcc-pass1.xml @@ -155,31 +155,10 @@ cd build Prepare GCC for compilation: -../configure \ - --target=$LFS_TGT \ - --prefix=/tools \ - --with-glibc-version=2.11 \ - --with-sysroot=$LFS \ - --with-newlib \ - --without-headers \ - --with-local-prefix=/tools \ - --with-native-system-header-dir=/tools/include \ - --disable-nls \ - --disable-shared \ - --disable-multilib \ - --disable-decimal-float \ - --disable-threads \ - --disable-libatomic \ - --disable-libgomp \ - --disable-libquadmath \ - --disable-libssp \ - --disable-libvtv \ - --disable-libstdcxx \ - --enable-languages=c,c++ - -mlist="m64" -mlist="$mlist,m32" -mlist="$mlist,mx32" +mloptions="--disable-multilib" +mloptions="--enable-multilib --with-multilib-list=m64" +mloptions="$mloptions,m32" +mloptions="$mloptions,mx32" ../configure \ --target=$LFS_TGT \ --prefix=/tools \ @@ -191,8 +170,6 @@ cd build --with-native-system-header-dir=/tools/include \ --disable-nls \ --disable-shared \ - --enable-multilib \ - --with-multilib-list=$mlist \ --disable-decimal-float \ --disable-threads \ --disable-libatomic \ @@ -201,7 +178,8 @@ cd build --disable-libssp \ --disable-libvtv \ --disable-libstdcxx \ - --enable-languages=c,c++ + --enable-languages=c,c++ \ + $mloptions The meaning of the configure options: diff --git a/chapter05/gcc-pass2.xml b/chapter05/gcc-pass2.xml index 776610b5f..1b6a6b953 100644 --- a/chapter05/gcc-pass2.xml +++ b/chapter05/gcc-pass2.xml @@ -139,23 +139,10 @@ cd build Now prepare GCC for compilation: -CC=$LFS_TGT-gcc \ -CXX=$LFS_TGT-g++ \ -AR=$LFS_TGT-ar \ -RANLIB=$LFS_TGT-ranlib \ -../configure \ - --prefix=/tools \ - --with-local-prefix=/tools \ - --with-native-system-header-dir=/tools/include \ - --enable-languages=c,c++ \ - --disable-libstdcxx-pch \ - --disable-multilib \ - --disable-bootstrap \ - --disable-libgomp - -mlist="m64" -mlist="$mlist,m32" -mlist="$mlist,mx32" +mloptions="--disable-multilib" +mloptions="--with-system-zlib --enable-multilib --with-multilib-list=m64" +mloptions="$mloptions,m32" +mloptions="$mloptions,mx32" CC=$LFS_TGT-gcc \ CXX=$LFS_TGT-g++ \ AR=$LFS_TGT-ar \ @@ -166,11 +153,9 @@ RANLIB=$LFS_TGT-ranlib \ --with-native-system-header-dir=/tools/include \ --enable-languages=c,c++ \ --disable-libstdcxx-pch \ - --enable-multilib \ - --with-multilib-list=$mlist \ - --with-system-zlib \ --disable-bootstrap \ - --disable-libgomp + --disable-libgomp \ + $mloptions The meaning of the new configure options: diff --git a/chapter06/eudev.xml b/chapter06/eudev.xml index 9e8e8ffb5..eac56f4fa 100644 --- a/chapter06/eudev.xml +++ b/chapter06/eudev.xml @@ -49,7 +49,7 @@ sed -i '/keyboard_lookup_key/d' src/udev/udev-builtin-keyboard.c --> - Next, add a workaround to prevent the /tools directory from being + First, add a workaround to prevent the /tools directory from being hard coded into Eudev binary files library locations: cat > config.cache << "EOF" diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml index 0ac6353af..f48cde6e0 100644 --- a/chapter06/gcc.xml +++ b/chapter06/gcc.xml @@ -76,33 +76,16 @@ cd build Prepare GCC for compilation: -SED=sed \ +mloptions="--disable-multilib" +mloptions="--enable-multilib --with-multilib-list=m64" +mloptions="$mloptions,m32" +mloptions="$mloptions,mx32" +SED=sed \ ../configure --prefix=/usr \ --enable-languages=c,c++ \ - --disable-multilib \ --disable-bootstrap \ - --with-system-zlib -SED=sed \ -../configure --prefix=/usr \ - --enable-languages=c,c++ \ - --enable-multilib \ - --with-multilib-list=m32,m64 \ - --disable-bootstrap \ - --with-system-zlib -SED=sed \ -../configure --prefix=/usr \ - --enable-languages=c,c++ \ - --enable-multilib \ - --with-multilib-list=mx32,m64 \ - --disable-bootstrap \ - --with-system-zlib -SED=sed \ -../configure --prefix=/usr \ - --enable-languages=c,c++ \ - --enable-multilib \ - --with-multilib-list=m32,mx32,m64 \ - --disable-bootstrap \ - --with-system-zlib + --with-system-zlib \ + $mloptions Note that for other languages, there are some prerequisites that are not yet available. See the diff --git a/chapter06/man-db.xml b/chapter06/man-db.xml index a3b866ae9..5554d45d4 100644 --- a/chapter06/man-db.xml +++ b/chapter06/man-db.xml @@ -43,7 +43,9 @@ Prepare Man-DB for compilation: -./configure --prefix=/usr \ +sed -i '/find/s@/usr@@' init/systemd/man-db.service.in + +./configure --prefix=/usr \ --docdir=/usr/share/doc/man-db-&man-db-version; \ --sysconfdir=/etc \ --disable-setuid \ @@ -66,6 +68,15 @@ The meaning of the configure options: + + sed -i '/find/s@/usr@@' init/systemd/man-db.service.in + + This changes a harcoded path to the find + utility, which we install in + /bin. + + + --disable-setuid diff --git a/chapter06/systemd.xml b/chapter06/systemd.xml index a3a11fb6e..ce6a559b4 100644 --- a/chapter06/systemd.xml +++ b/chapter06/systemd.xml @@ -198,15 +198,11 @@ rm -f /usr/bin/xsltproc systemd-machine-id-setup - Create the /lib/systemd/systemd-user-sessions - script to allow unprivileged user logins without + Prevent systemd from creating /run/nologin + to allow unprivileged user logins without systemd-logind: -cat > /lib/systemd/systemd-user-sessions << "EOF" -#!/bin/bash -rm -f /run/nologin -EOF -chmod 755 /lib/systemd/systemd-user-sessions +rm -f /usr/lib/tmpfiles.d/systemd-nologin.conf diff --git a/general.ent b/general.ent index d1995b768..4a38b7978 100644 --- a/general.ent +++ b/general.ent @@ -1,13 +1,13 @@ - + - + - +