Changeset df462a9


Ignore:
Timestamp:
05/12/2021 05:26:46 AM (5 months ago)
Author:
Thomas Trepl (Moody) <thomas@…>
Branches:
ml-11.0, multilib
Children:
3de7f52
Parents:
0e9fb93 (diff), d7a9421 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge pre-LFS-11-0 changes

Files:
59 edited

Legend:

Unmodified
Added
Removed
  • chapter01/changelog.xml

    r0e9fb93 rdf462a9  
    4545    appropriate for the entry or if needed the entire day's listitem.
    4646    -->
     47    <listitem>
     48      <para>2021-05-12</para>
     49      <itemizedlist>
     50        <listitem>
     51          <para>[renodr] - Moved LFS to a merged-/usr configuration. Thanks
     52          goes to Xi Ruoyao for doing almost all of the work. Fixes
     53          <ulink url="&lfs-ticket-root;4848">#4848</ulink>.</para>
     54        </listitem>
     55        <listitem>
     56          <para>[renodr] - Update to gcc-11.1.0. Fixes
     57          <ulink url="&lfs-ticket-root;4847">#4847</ulink>.</para>
     58        </listitem>
     59        <listitem>
     60          <para>[renodr] - Fix a FTBFS when building glibc-2.30 with
     61          gcc-11.1.0.</para>
     62        </listitem>
     63        <listitem revision="systemd">
     64          <para>[renodr] - Update to systemd-248. Fixes
     65          <ulink url="&lfs-ticket-root;4841">#4841</ulink>.</para>
     66        </listitem>
     67        <listitem>
     68          <para>[renodr] - Update to iproute2-5.12.0. Fixes
     69          <ulink url="&lfs-ticket-root;4852">#4852</ulink>.</para>
     70        </listitem>
     71        <listitem>
     72          <para>[renodr] - Update to Python-3.9.5. Fixes
     73          <ulink url="&lfs-ticket-root;4854">#4854</ulink>.</para>
     74        </listitem>
     75        <listitem>
     76          <para>[renodr] - Update to meson-0.58.0. Fixes
     77          <ulink url="&lfs-ticket-root;4853">#4853</ulink>.</para>
     78        </listitem>
     79        <listitem>
     80          <para>[renodr] - Update to linux-5.12.2. Fixes
     81          <ulink url="&lfs-ticket-root;4840">#4840</ulink>.</para>
     82        </listitem>
     83      </itemizedlist>
     84    </listitem>
    4785
    4886    <listitem>
  • chapter01/whatsnew.xml

    r0e9fb93 rdf462a9  
    9797      <para>Gawk-&gawk-version;</para>
    9898    </listitem>-->
    99     <!--<listitem>
     99    <listitem>
    100100       <para>GCC-&gcc-version;</para>
    101     </listitem>-->
     101    </listitem>
    102102    <!--<listitem>
    103103       <para>GDBM-&gdbm-version;</para>
     
    229229      <para>Sysklogd-&sysklogd-version;</para>
    230230    </listitem>
    231     <!--<listitem revision="systemd">
     231    <listitem revision="systemd">
    232232      <para>Systemd-&systemd-version;</para>
    233     </listitem>-->
     233    </listitem>
    234234    <listitem revision="sysv">
    235235      <para>SysVinit-&sysvinit-version;</para>
  • chapter02/creatingpartition.xml

    r0e9fb93 rdf462a9  
    142142      space.</para></listitem>
    143143
    144       <listitem><para>/usr &ndash; A separate /usr partition is generally used
    145       if providing a server for a thin client or diskless workstation.  It is
    146       normally not needed for LFS.  A size of ten gigabytes will handle most
    147       installations.</para></listitem>
     144      <listitem><para>/usr &ndash; In LFS,
     145      <filename class="directory">/bin</filename>,
     146      <filename class="directory">/lib</filename>, and
     147      <filename class="directory">/sbin</filename> are symlinks to their
     148      counterpart in <filename class="directory">/usr</filename>.
     149      So <filename class="directory">/usr</filename> contains all binaries
     150      needed for the system to run.  For LFS a separate partition for
     151      <filename class="directory">/usr</filename> is normally not needed.
     152      If you need it anyway, you should make a partition large enough to
     153      fit all programs and libraries in the system.  The root partition can be
     154      very small (maybe just one gigabyte) in this configuration, so it's
     155      suitable for a thin client or diskless workstation (where
     156      <filename class="directory">/usr</filename> is mounted from a remote
     157      server).  However you should take care that an initramfs (not covered by
     158      LFS) will be needed to boot a system with separate
     159      <filename class="directory">/usr</filename> partition.</para></listitem>
    148160
    149161      <listitem><para>/opt &ndash; This directory is most useful for
  • chapter02/mounting.xml

    r0e9fb93 rdf462a9  
    2828  <para>If using multiple partitions for LFS (e.g., one for <filename
    2929  class="directory">/</filename> and another for <filename
    30   class="directory">/usr</filename>), mount them using:</para>
     30  class="directory">/home</filename>), mount them using:</para>
    3131
    3232<screen role="nodump"><userinput>mkdir -pv $LFS
    3333mount -v -t ext4 /dev/<replaceable>&lt;xxx&gt;</replaceable> $LFS
    34 mkdir -v $LFS/usr
    35 mount -v -t ext4 /dev/<replaceable>&lt;yyy&gt;</replaceable> $LFS/usr</userinput></screen>
     34mkdir -v $LFS/home
     35mount -v -t ext4 /dev/<replaceable>&lt;yyy&gt;</replaceable> $LFS/home</userinput></screen>
    3636
    3737  <para>Replace <replaceable>&lt;xxx&gt;</replaceable> and
  • chapter04/addinguser.xml

    r0e9fb93 rdf462a9  
    8181  <systemitem class="username">lfs</systemitem> the directory owner:</para>
    8282
    83 <screen><userinput>chown -v lfs $LFS/{usr,lib,var,etc,bin,sbin,tools}
     83<screen><userinput>chown -v lfs $LFS/{usr{,/*},lib,var,etc,bin,sbin,tools}
    8484case $(uname -m) in
    8585  x86_64) chown -v lfs $LFS/lib64 ;;
  • chapter04/creatingminlayout.xml

    r0e9fb93 rdf462a9  
    2121  <systemitem class="username">root</systemitem>:</para>
    2222
    23 <screen><userinput>mkdir -pv $LFS/{bin,etc,lib,sbin,usr,var}
     23<screen><userinput>mkdir -pv $LFS/{etc,var} $LFS/usr/{bin,lib,sbin}
     24
     25for i in bin lib sbin; do
     26  ln -sv usr/$i $LFS/$i
     27done
     28
    2429case $(uname -m) in
    2530  x86_64) mkdir -pv $LFS/lib64 ;;
    2631esac</userinput></screen>
    27 <screen arch="ml_32"  ><userinput>mkdir -pv $LFS&lib-m32;</userinput></screen>
    28 <screen arch="ml_x32" ><userinput>mkdir -pv $LFS&lib-mx32;</userinput></screen>
    29 <screen arch="ml_all" ><userinput>mkdir -pv $LFS/lib{,x}32</userinput></screen>
    30 <!--
    31 <screen arch="ml_32"  ><userinput>mkdir -pv $LFS/{usr/,}lib32</userinput></screen>
    32 <screen arch="ml_x32" ><userinput>mkdir -pv $LFS/{usr/,}libx32</userinput></screen>
    33 <screen arch="ml_all" ><userinput>mkdir -pv $LFS/{usr/,}{lib32,libx32}</userinput></screen>
    34 <screen arch="ml_32"  ><userinput>mkdir -pv $LFS&usr-inc-m32;</userinput></screen>
    35 <screen arch="ml_x32" ><userinput>mkdir -pv $LFS&usr-inc-mx32;</userinput></screen>
    36 <screen arch="ml_all" ><userinput>mkdir -pv $LFS&usr-inc-m32;
    37 mkdir -pv $LFS&usr-inc-mx32;</userinput></screen>
    38 -->
     32<screen arch="ml_32"><userinput>mkdir -pv $LFS&usr-lib-m32;
     33ln -sv usr&lib-m32; $LFS&lib-m32;</userinput></screen>
     34<screen arch="ml_x32"><userinput>mkdir -pv $LFS&usr-lib-mx32;
     35ln -sv usr&lib-mx32; $LFS&lib-mx32;</userinput></screen>
     36<screen arch="ml_all"><userinput>mkdir -pv $LFS/usr/lib{,x}32
     37ln -sv usr&lib-m32; $LFS&lib-m32;
     38ln -sv usr&lib-mx32; $LFS&lib-mx32;</userinput></screen>
     39
     40    <note>
     41      <para>
     42        The above command is correct.  The <command>ln</command> command has
     43        a few syntactic versions, so be sure to check
     44                <command>info coreutils ln</command> and <filename>ln(1)</filename>
     45                before reporting what you may think is an error.
     46          </para>
     47    </note>
     48
    3949  <para>Programs in <xref linkend="chapter-temporary-tools"/> will be compiled
    4050  with a cross-compiler (more details in section <xref
  • chapter05/glibc.xml

    r0e9fb93 rdf462a9  
    5959ln -sfv ../lib/ld-linux-x86-64.so.2 $LFS/lib64/ld-lsb-x86-64.so.3</userinput></screen>
    6060
    61     <note>
    62       <para>
    63         The above command is correct.  The <command>ln</command> command has
    64         a few syntactic versions, so be sure to check
    65                 <command>info coreutils ln</command> and <filename>ln(1)</filename>
    66                 before reporting what you may think is an error.
    67           </para>
    68     </note>
    69 
    7061    <para>Some of the Glibc programs use the non-FHS compliant
    7162    <filename class="directory">/var/db</filename> directory to store their
     
    7465
    7566<screen><userinput remap="pre">patch -Np1 -i ../glibc-&glibc-version;-fhs-1.patch</userinput></screen>
     67
     68    <para>Fix a build issue with gcc-11.1:</para>
     69
     70<screen><userinput remap="pre">sed 's/amx_/amx-/' -i sysdeps/x86/tst-cpu-features-supports.c</userinput></screen>
    7671
    7772    <para>The Glibc documentation recommends building Glibc
     
    8984      --enable-kernel=&min-kernel;                \
    9085      --with-headers=$LFS/usr/include    \
    91       libc_cv_slibdir=/lib</userinput></screen>
     86      libc_cv_slibdir=/usr/lib</userinput></screen>
    9287<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">../configure                             \
    9388      --prefix=/usr                      \
     
    9792      --with-headers=$LFS/usr/include    \
    9893      --enable-multi-arch                \
    99       --libdir=/usr/lib                  \
    100       --libexecdir=/usr/lib              \
    101       libc_cv_slibdir=/lib</userinput></screen>
    102 <!--
    103       libc_cv_forced_unwind=yes          \
    104       libc_cv_c_cleanup=yes</userinput></screen> -->
     94      libc_cv_slibdir=/usr/lib</userinput></screen>
    10595
    10696    <variablelist>
     
    136126
    137127      <varlistentry>
    138         <term><parameter>libc_cv_slibdir=/lib</parameter></term>
    139         <listitem>
    140           <para>This ensures that the library is installed in /lib instead
     128        <term><parameter>libc_cv_slibdir=/usr/lib</parameter></term>
     129        <listitem>
     130          <para>This ensures that the library is installed in /usr/lib instead
    141131          of the default /lib64 on 64 bit machines.</para>
    142132        </listitem>
     
    278268      --libdir=&usr-lib-m32;                \
    279269      --libexecdir=&usr-lib-m32;            \
    280       libc_cv_slibdir=&lib-m32;</userinput></screen>
     270      libc_cv_slibdir=&usr-lib-m32;</userinput></screen>
    281271
    282272    <para>Compile the package:</para>
     
    350340      --libdir=&usr-lib-mx32;               \
    351341      --libexecdir=&usr-lib-mx32;           \
    352       libc_cv_slibdir=&lib-mx32;</userinput></screen>
     342      libc_cv_slibdir=&usr-lib-mx32;</userinput></screen>
    353343
    354344    <para>Compile the package:</para>
  • chapter06/bash.xml

    r0e9fb93 rdf462a9  
    7575<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
    7676
    77     <para>Move the executable to where it is expected:</para>
    78 
    79 <screen><userinput remap="install">mv $LFS/usr/bin/bash $LFS/bin/bash</userinput></screen>
    80 
    8177    <para>Make a link for the programs that use <command>sh</command> for
    8278    a shell:</para>
  • chapter06/coreutils.xml

    r0e9fb93 rdf462a9  
    8484    programs harcode executable locations:</para>
    8585
    86 <screen><userinput remap="install">mv -v $LFS/usr/bin/{cat,chgrp,chmod,chown,cp,date,dd,df,echo} $LFS/bin
    87 mv -v $LFS/usr/bin/{false,ln,ls,mkdir,mknod,mv,pwd,rm}        $LFS/bin
    88 mv -v $LFS/usr/bin/{rmdir,stty,sync,true,uname}               $LFS/bin
    89 mv -v $LFS/usr/bin/{head,nice,sleep,touch}                    $LFS/bin
    90 mv -v $LFS/usr/bin/chroot                                     $LFS/usr/sbin
     86<screen><userinput remap="install">mv -v $LFS/usr/bin/chroot                                     $LFS/usr/sbin
    9187mkdir -pv $LFS/usr/share/man/man8
    9288mv -v $LFS/usr/share/man/man1/chroot.1                        $LFS/usr/share/man/man8/chroot.8
  • chapter06/file.xml

    r0e9fb93 rdf462a9  
    9191<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
    9292
    93     <para>Move a shared library into its final location in the LFS system,
    94     and recreate the symlink for it:</para>
    95 
    96 <screen><userinput remap="install">mv -v $LFS/usr/lib/libmagic.so.* $LFS/lib
    97 ln -sfv ../../lib/$(readlink /usr/lib/libmagic.so) $LFS/usr/lib/libmagic.so</userinput></screen>
    98 
    9993  </sect2>
    10094
  • chapter06/findutils.xml

    r0e9fb93 rdf462a9  
    5858<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
    5959
    60     <para>Move the executable to its final expected location:</para>
    61 
    62 <screen><userinput remap="install">mv -v $LFS/usr/bin/find $LFS/bin
    63 sed -i 's|find:=${BINDIR}|find:=/bin|' $LFS/usr/bin/updatedb</userinput></screen>
    64 
    6560  </sect2>
    6661
  • chapter06/grep.xml

    r0e9fb93 rdf462a9  
    4747
    4848<screen><userinput remap="configure">./configure --prefix=/usr   \
    49             --host=$LFS_TGT \
    50             --bindir=/bin</userinput></screen>
     49            --host=$LFS_TGT</userinput></screen>
    5150
    5251    <para>Compile the package:</para>
  • chapter06/gzip.xml

    r0e9fb93 rdf462a9  
    5656<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
    5757
    58     <para>Move the executable to its final expected location:</para>
    59 
    60 <screen><userinput remap="install">mv -v $LFS/usr/bin/gzip $LFS/bin</userinput></screen>
    61 
    6258  </sect2>
    6359
  • chapter06/ncurses.xml

    r0e9fb93 rdf462a9  
    148148
    149149    </variablelist>
    150 
    151     <para>Move the shared libraries to the
    152     <filename class="directory">/lib</filename> directory, where they are
    153     expected to reside:</para>
    154 
    155 <screen><userinput remap="install">mv -v $LFS/usr/lib/libncursesw.so.6* $LFS/lib</userinput></screen>
    156 
    157     <para>Because the libraries have been moved, one symlink points to
    158     a non-existent file. Recreate it:</para>
    159 
    160 <screen><userinput remap="install">ln -sfv ../../lib/$(readlink $LFS/usr/lib/libncursesw.so) $LFS/usr/lib/libncursesw.so</userinput></screen>
    161150
    162151  </sect2>
  • chapter06/sed.xml

    r0e9fb93 rdf462a9  
    4747
    4848<screen><userinput remap="configure">./configure --prefix=/usr   \
    49             --host=$LFS_TGT \
    50             --bindir=/bin</userinput></screen>
     49            --host=$LFS_TGT</userinput></screen>
    5150
    5251    <para>Compile the package:</para>
  • chapter06/tar.xml

    r0e9fb93 rdf462a9  
    4848<screen><userinput remap="configure">./configure --prefix=/usr                     \
    4949            --host=$LFS_TGT                   \
    50             --build=$(build-aux/config.guess) \
    51             --bindir=/bin</userinput></screen>
     50            --build=$(build-aux/config.guess)</userinput></screen>
    5251
    5352    <para>Compile the package:</para>
  • chapter06/xz.xml

    r0e9fb93 rdf462a9  
    6060<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
    6161
    62     <para>Make sure that all essential files are in the correct directory:</para>
    63 
    64 <screen><userinput remap="install">mv -v $LFS/usr/bin/{lzma,unlzma,lzcat,xz,unxz,xzcat}  $LFS/bin
    65 mv -v $LFS/usr/lib/liblzma.so.*                       $LFS/lib
    66 ln -svf ../../lib/$(readlink $LFS/usr/lib/liblzma.so) $LFS/usr/lib/liblzma.so</userinput></screen>
    67 
    6862  </sect2>
    6963
  • chapter07/chroot.xml

    r0e9fb93 rdf462a9  
    2323    TERM="$TERM"                \
    2424    PS1='(lfs chroot) \u:\w\$ ' \
    25     PATH=/bin:/usr/bin:/sbin:/usr/sbin \
     25    PATH=/usr/bin:/usr/sbin    \
    2626    /bin/bash --login +h</userinput></screen>
    2727
  • chapter07/createfiles.xml

    r0e9fb93 rdf462a9  
    8484systemd-coredump:x:79:79:systemd Core Dumper:/:/bin/false
    8585uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/bin/false
     86systemd-oomd:x:81:81:systemd Out Of Memory Daemon:/:/bin/false
    8687nobody:x:99:99:Unprivileged User:/dev/null:/bin/false</literal>
    8788EOF</userinput></screen>
     
    153154systemd-coredump:x:79:
    154155uuidd:x:80:
     156systemd-oomd:x:81:81:
    155157wheel:x:97:
    156158nogroup:x:99:
  • chapter07/creatingdirs.xml

    r0e9fb93 rdf462a9  
    2828mkdir -pv /lib/firmware
    2929mkdir -pv /media/{floppy,cdrom}
    30 mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
     30mkdir -pv /usr/{,local/}{include,src}
     31mkdir -pv /usr/local/{bin,lib,sbin}
    3132mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man}
    3233mkdir -pv /usr/{,local/}share/{misc,terminfo,zoneinfo}
  • chapter07/util-linux.xml

    r0e9fb93 rdf462a9  
    5353
    5454<screen><userinput remap="configure">./configure ADJTIME_PATH=/var/lib/hwclock/adjtime    \
     55            --libdir=/usr/lib    \
    5556            --docdir=/usr/share/doc/util-linux-&util-linux-version; \
    5657            --disable-chfn-chsh  \
     
    7677          at another location, which would not be overwritten or removed
    7778          when building the final util-linux package.</para>
     79        </listitem>
     80      </varlistentry>
     81
     82      <varlistentry>
     83        <term><parameter>--libdir=/usr/lib</parameter></term>
     84        <listitem>
     85          <para>This switch ensures the
     86          <filename class="extension">.so</filename> symlinks targeting
     87          the shared library file in the same directory
     88          (<filename class="directory">/usr/lib</filename>) directly.</para>
    7889        </listitem>
    7990      </varlistentry>
  • chapter08/acl.xml

    r0e9fb93 rdf462a9  
    4545    <para>Prepare Acl for compilation:</para>
    4646
    47 <screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr         \
    48             --bindir=/bin         \
     47<screen><userinput remap="configure">./configure --prefix=/usr         \
    4948            --disable-static      \
    50             --libexecdir=/usr/lib \
    51             --docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
    52 
    53 <screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr         \
    54             --disable-static      \
    55             --libexecdir=/usr/lib \
    5649            --docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
    5750
     
    6962
    7063<screen><userinput remap="install">make install</userinput></screen>
    71 
    72     <para>The shared library needs to be moved to
    73     <filename class="directory">/lib</filename>, and as a result the
    74     <filename class="extension">.so</filename> file in
    75     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    76 
    77 <screen><userinput remap="install">mv -v /usr/lib/libacl.so.* /lib
    78 ln -sfv ../../lib/$(readlink /usr/lib/libacl.so) /usr/lib/libacl.so</userinput></screen>
    7964
    8065  </sect2>
  • chapter08/adjusting.xml

    r0e9fb93 rdf462a9  
    103103  <para os="n">The output of the last command should be:</para>
    104104
    105 <screen os="o"><computeroutput>attempt to open /lib/libc.so.6 succeeded</computeroutput></screen>
     105<screen os="o"><computeroutput>attempt to open /usr/lib/libc.so.6 succeeded</computeroutput></screen>
    106106
    107107  <para os="p">Make sure GCC is using the correct dynamic linker:</para>
     
    112112  platform-specific differences in dynamic linker name):</para>
    113113
    114 <screen os="s"><computeroutput>found ld-linux-x86-64.so.2 at /lib/ld-linux-x86-64.so.2</computeroutput></screen>
     114<screen os="s"><computeroutput>found ld-linux-x86-64.so.2 at /usr/lib/ld-linux-x86-64.so.2</computeroutput></screen>
    115115
    116116  <para os="t">If the output does not appear as shown above or is not received
  • chapter08/attr.xml

    r0e9fb93 rdf462a9  
    4444    <para>Prepare Attr for compilation:</para>
    4545
    46 <screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr     \
    47             --bindir=/bin     \
    48             --disable-static  \
    49             --sysconfdir=/etc \
    50             --docdir=/usr/share/doc/attr-&attr-version;</userinput></screen>
    51 
    52 <screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr     \
     46<screen><userinput remap="configure">./configure --prefix=/usr     \
    5347            --disable-static  \
    5448            --sysconfdir=/etc \
     
    6862
    6963<screen><userinput remap="install">make install</userinput></screen>
    70 
    71     <para>The shared library needs to be moved to
    72     <filename class="directory">/lib</filename>, and as a result the
    73     <filename class="extension">.so</filename> file in
    74     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    75 
    76 <screen><userinput remap="install">mv -v /usr/lib/libattr.so.* /lib
    77 ln -sfv ../../lib/$(readlink /usr/lib/libattr.so) /usr/lib/libattr.so</userinput></screen>
    7864
    7965  </sect2>
  • chapter08/bash.xml

    r0e9fb93 rdf462a9  
    8585EOF</userinput></screen>
    8686
    87     <para>Install the package and move the main executable to
    88     <filename class='directory'>/bin</filename>:</para>
     87    <para>Install the package:</para>
    8988
    90 <screen><userinput remap="install">make install
    91 mv -vf /usr/bin/bash /bin</userinput></screen>
     89<screen><userinput remap="install">make install</userinput></screen>
    9290
    9391    <para>Run the newly compiled <command>bash</command> program (replacing the one that is
  • chapter08/bzip2.xml

    r0e9fb93 rdf462a9  
    8585<screen><userinput remap="install">make PREFIX=/usr install</userinput></screen>
    8686
     87    <para>Install the shared library:</para>
     88<screen><userinput remap="install">cp -av libbz2.so.* /usr/lib
     89ln -sv libbz2.so.&bzip2-version; /usr/lib/libbz2.so</userinput></screen>
     90
    8791    <para>Install the shared <command>bzip2</command> binary into the
    88     <filename class="directory">/bin</filename> directory, make
    89     some necessary symbolic links, and clean up:</para>
    90 
    91 <screen><userinput remap="install">cp -v bzip2-shared /bin/bzip2
    92 cp -av libbz2.so* /lib
    93 ln -sv ../../lib/libbz2.so.1.0 /usr/lib/libbz2.so
    94 rm -v /usr/bin/{bunzip2,bzcat,bzip2}
    95 ln -sv bzip2 /bin/bunzip2
    96 ln -sv bzip2 /bin/bzcat</userinput></screen>
     92    <filename class="directory">/bin</filename> directory:</para>
     93
     94<screen><userinput remap="install">cp -v bzip2-shared /bin/bzip2</userinput></screen>
    9795
    9896    <para>Remove an useless static library:</para>
  • chapter08/coreutils.xml

    r0e9fb93 rdf462a9  
    143143    <para>Move programs to the locations specified by the FHS:</para>
    144144
    145 <screen><userinput remap="install">mv -v /usr/bin/{cat,chgrp,chmod,chown,cp,date,dd,df,echo} /bin
    146 mv -v /usr/bin/{false,ln,ls,mkdir,mknod,mv,pwd,rm} /bin
    147 mv -v /usr/bin/{rmdir,stty,sync,true,uname} /bin
    148 mv -v /usr/bin/chroot /usr/sbin
     145<screen><userinput remap="install">mv -v /usr/bin/chroot /usr/sbin
    149146mv -v /usr/share/man/man1/chroot.1 /usr/share/man/man8/chroot.8
    150147sed -i 's/"1"/"8"/' /usr/share/man/man8/chroot.8</userinput></screen>
    151 
    152     <para revision="sysv">Some of the scripts in the LFS-Bootscripts package
    153     depend on <command>head</command>, <command>nice</command>,
    154     <command>sleep</command>, and <command>touch</command>.  As <filename
    155     class="directory">/usr</filename> may not be available during the early and
    156     late stages of booting, those binaries need to be on the root partition to
    157     maintain FHS compliance:</para>
    158 
    159 <screen><userinput remap="install">mv -v /usr/bin/{head,nice,sleep,touch} /bin</userinput></screen>
    160148
    161149  </sect2>
  • chapter08/dbus.xml

    r0e9fb93 rdf462a9  
    9898<screen><userinput remap="install">make install</userinput></screen>
    9999
    100     <para>The shared library needs to be moved to
    101     <filename class="directory">/lib</filename>, and as a result the
    102     <filename class="extension">.so</filename> file in
    103     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    104 
    105 <screen><userinput remap="install">mv -v /usr/lib/libdbus-1.so.* /lib
    106 ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so</userinput></screen>
    107 
    108100    <para>Create a symlink so that D-Bus and systemd can use the same
    109101    <filename>machine-id</filename> file:</para>
  • chapter08/e2fsprogs.xml

    r0e9fb93 rdf462a9  
    5454
    5555<screen><userinput remap="configure">../configure --prefix=/usr           \
    56              --bindir=/bin           \
    57              --with-root-prefix=""   \
    5856             --enable-elf-shlibs     \
    5957             --disable-libblkid      \
     
    6462    <variablelist>
    6563      <title>The meaning of the configure options:</title>
    66 
    67       <varlistentry>
    68         <term><parameter>--with-root-prefix=""</parameter> and
    69               <parameter>--bindir=/bin</parameter></term>
    70         <listitem>
    71           <para>Certain programs (such as the <command>e2fsck</command>
    72           program) are considered essential programs.  When, for example,
    73           <filename class="directory">/usr</filename> is not mounted, these
    74           programs still need to be available. They belong in directories
    75           like <filename class="directory">/lib</filename> and <filename
    76           class="directory">/sbin</filename>. If this option is not passed
    77           to configure, the programs are installed into the
    78           <filename class="directory">/usr</filename> directory.</para>
    79         </listitem>
    80       </varlistentry>
    8164
    8265      <varlistentry>
  • chapter08/eudev.xml

    r0e9fb93 rdf462a9  
    5454
    5555<screen><userinput remap="configure">./configure --prefix=/usr           \
    56             --bindir=/sbin          \
    57             --sbindir=/sbin         \
    58             --libdir=/usr/lib       \
    5956            --sysconfdir=/etc       \
    60             --libexecdir=/lib       \
    61             --with-rootprefix=      \
    62             --with-rootlibdir=/lib  \
    6357            --enable-manpages       \
    6458            --disable-static</userinput></screen>
     
    7165    will also be used as a part of installation:</para>
    7266
    73 <screen><userinput remap="test">mkdir -pv /lib/udev/rules.d
     67<screen><userinput remap="test">mkdir -pv /usr/lib/udev/rules.d
    7468mkdir -pv /etc/udev/rules.d</userinput></screen>
    7569
     
    181175    <para>Information about hardware devices is maintained in the
    182176    <filename class="directory">/etc/udev/hwdb.d</filename> and
    183     <filename class="directory">/lib/udev/hwdb.d</filename> directories.
     177    <filename class="directory">/usr/lib/udev/hwdb.d</filename> directories.
    184178    <application>Eudev</application> needs that information to be compiled
    185179    into a binary database <filename>/etc/udev/hwdb.bin</filename>. Create the
     
    202196
    203197      <seglistitem>
    204         <seg><!-- These are in /lib/udev and not to be called by the user:
     198        <seg><!-- These are in /usr/lib/udev and not to be called by the user:
    205199         accelerometer, ata_id, cdrom_id, collect, mtd_probe,
    206200         scsi_id, v4l_id,--> udevadm and udevd</seg>
     
    208202        <seg>libudev.so</seg>
    209203
    210         <seg>/etc/udev, /lib/udev, and /usr/share/doc/udev-&udev-lfs-version;</seg>
     204        <seg>/etc/udev, /usr/lib/udev, and /usr/share/doc/udev-&udev-lfs-version;</seg>
    211205      </seglistitem>
    212206    </segmentedlist>
  • chapter08/file.xml

    r0e9fb93 rdf462a9  
    5757
    5858<screen><userinput remap="install">make install</userinput></screen>
    59 
    60     <para><command>/bin/more</command> from util-linux will link to
    61     <filename class="libraryfile">libmagic.so</filename>, so the shared
    62     library should be moved to <filename class="directory">/lib</filename>,
    63     and as a result the
    64     <filename class="extension">.so</filename> file in
    65     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    66 
    67 <screen><userinput remap="install">mv -v /usr/lib/libmagic.so.* /lib
    68 ln -sfv ../../lib/$(readlink /usr/lib/libmagic.so) /usr/lib/libmagic.so</userinput></screen>
    6959
    7060  </sect2>
  • chapter08/findutils.xml

    r0e9fb93 rdf462a9  
    7575<screen><userinput remap="install">make install</userinput></screen>
    7676
    77     <para revision="sysv">Some of the scripts in the LFS-Bootscripts package
    78     depend on <command>find</command>.  As <filename
    79     class="directory">/usr</filename> may not be available during the early
    80     stages of booting, this program needs to be on the root partition.  The
    81     <command>updatedb</command> script also needs to be modified to correct an
    82     explicit path:</para>
    83 
    84     <para revision="systemd"> Some packages in BLFS and beyond expect the
    85     <command>find</command> program in <filename
    86     class="directory">/bin</filename>, so make sure it's placed there:</para>
    87 
    88 <screen><userinput remap="install">mv -v /usr/bin/find /bin
    89 sed -i 's|find:=${BINDIR}|find:=/bin|' /usr/bin/updatedb</userinput></screen>
    90 
    9177  </sect2>
    9278
  • chapter08/gcc.xml

    r0e9fb93 rdf462a9  
    143143    apparently related to the en_HK locale.</para>
    144144
    145     <para>Additionally the following tests related to the following files
     145    <para>Additionally, the test constexpr-52830 is known to fail.</para>
     146
     147<!--<para>Additionally the following tests related to the following files
    146148    are known to fail with glibc-2.33: asan_test.C, co-ret-17-void-ret-coro.C,
    147149    pr95519-05-gro.C, pr80166.c.</para>
     150-->
    148151
    149152<!-- don't fail anymore after the move of iana-etc and /etc/hosts
     
    183186    for "historical" reasons.</para>
    184187
    185 <screen><userinput remap="install">ln -sv ../usr/bin/cpp /lib</userinput></screen>
     188<screen><userinput remap="install">ln -svr /usr/bin/cpp /lib</userinput></screen>
    186189  <!-- already done earlier
    187190    <para>Many packages use the name <command>cc</command> to call the C
  • chapter08/glibc.xml

    r0e9fb93 rdf462a9  
    5656    -i nss/nss_database.c</userinput></screen>
    5757
     58    <para>Fix a build issue with gcc-11.1:</para>
     59
     60<screen><userinput remap="pre">sed 's/amx_/amx-/' -i sysdeps/x86/tst-cpu-features-supports.c</userinput></screen>
     61
    5862    <para>The Glibc documentation recommends building Glibc
    5963    in a dedicated build directory:</para>
     
    6973             --enable-stack-protector=strong          \
    7074             --with-headers=/usr/include              \
    71              libc_cv_slibdir=/lib</userinput></screen>
     75             libc_cv_slibdir=/usr/lib</userinput></screen>
    7276<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">../configure --prefix=/usr                            \
    7377             --disable-werror                         \
     
    7680             --with-headers=/usr/include              \
    7781             --enable-multi-arch                      \
    78              libc_cv_slibdir=/lib</userinput></screen>
     82             libc_cv_slibdir=/usr/lib</userinput></screen>
    7983
    8084    <variablelist>
     
    117121
    118122      <varlistentry>
    119         <term><parameter>libc_cv_slibdir=/lib</parameter></term>
     123        <term><parameter>libc_cv_slibdir=/usr/lib</parameter></term>
    120124        <listitem>
    121125          <para>This variable sets the correct library for all
     
    229233
    230234    <screen revision="systemd"><userinput remap="install">install -v -Dm644 ../nscd/nscd.tmpfiles /usr/lib/tmpfiles.d/nscd.conf
    231 install -v -Dm644 ../nscd/nscd.service /lib/systemd/system/nscd.service</userinput></screen>
     235install -v -Dm644 ../nscd/nscd.service /usr/lib/systemd/system/nscd.service</userinput></screen>
    232236
    233237    <para>Next, install the locales that can make the system respond in a
     
    500504      --libdir=&usr-lib-m32;                \
    501505      --libexecdir=&usr-lib-m32;            \
    502       libc_cv_slibdir=&lib-m32;</userinput></screen>
     506      libc_cv_slibdir=&usr-lib-m32;</userinput></screen>
    503507
    504508    <para>Compile the package:</para>
  • chapter08/grep.xml

    r0e9fb93 rdf462a9  
    4343    <para>Prepare Grep for compilation:</para>
    4444
    45 <screen><userinput remap="configure">./configure --prefix=/usr --bindir=/bin</userinput></screen>
     45<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
    4646
    4747    <para>Compile the package:</para>
  • chapter08/gzip.xml

    r0e9fb93 rdf462a9  
    5858<screen><userinput remap="install">make install</userinput></screen>
    5959
    60     <para>Move a program that needs to be on the root filesystem:</para>
    61 
    62 <screen><userinput remap="install">mv -v /usr/bin/gzip /bin</userinput></screen>
    63 
    6460  </sect2>
    6561
  • chapter08/inetutils.xml

    r0e9fb93 rdf462a9  
    115115<screen><userinput remap="install">make install</userinput></screen>
    116116
    117     <para>Move some programs so they are available if <filename
    118     class='directory'>/usr</filename> is not accessible:</para>
    119 
    120 <screen><userinput remap="install">mv -v /usr/bin/{hostname,ping,ping6,traceroute} /bin
    121 mv -v /usr/bin/ifconfig /sbin</userinput></screen>
     117    <para>Move a program to the proper location:</para>
     118
     119<screen><userinput remap="install">mv -v /{,s}bin/ifconfig</userinput></screen>
    122120
    123121  </sect2>
  • chapter08/kmod.xml

    r0e9fb93 rdf462a9  
    4545
    4646<screen><userinput remap="configure">./configure --prefix=/usr          \
    47             --bindir=/bin          \
    4847            --sysconfdir=/etc      \
    49             --with-rootlibdir=/lib \
    5048            --with-xz              \
    5149            --with-zstd            \
     
    5957        <listitem>
    6058          <para>These options enable Kmod to handle compressed kernel modules.</para>
    61         </listitem>
    62       </varlistentry>
    63 
    64       <varlistentry>
    65         <term><parameter>--with-rootlibdir=/lib</parameter></term>
    66         <listitem>
    67           <para>This option ensures different library related files are placed
    68           in the correct directories.</para>
    6959        </listitem>
    7060      </varlistentry>
  • chapter08/libcap.xml

    r0e9fb93 rdf462a9  
    7070<screen><userinput remap="test">make test</userinput></screen>
    7171
    72     <para>Install the package and make sure the essential libraries are in
    73     the correct directory:</para>
    74 
    75 <screen><userinput remap="install">make prefix=/usr lib=lib install
    76 for libname in cap psx; do
    77     mv -v /usr/lib/lib${libname}.so.* /lib
    78     ln -sfv ../../lib/lib${libname}.so.2 /usr/lib/lib${libname}.so
    79     chmod -v 755 /lib/lib${libname}.so.&libcap-version;
    80 done</userinput></screen>
     72    <para>Install the package:</para>
     73
     74<screen><userinput remap="install">make prefix=/usr lib=lib install</userinput></screen>
     75
     76    <para>Adjust the permission of the shared libraries:</para>
     77
     78<screen><userinput remap="install">chmod -v 755 /usr/lib/lib{cap,psx}.so.&libcap-version;</userinput></screen>
    8179
    8280  </sect2>
  • chapter08/libelf.xml

    r0e9fb93 rdf462a9  
    4949    <screen><userinput remap="configure">./configure --prefix=/usr                \
    5050            --disable-debuginfod         \
    51             --enable-libdebuginfod=dummy \
    52             --libdir=/lib</userinput></screen>
     51            --enable-libdebuginfod=dummy</userinput></screen>
    5352
    5453    <para>Compile the package:</para>
     
    6665<screen><userinput remap="install">make -C libelf install
    6766install -vm644 config/libelf.pc /usr/lib/pkgconfig
    68 rm /lib/libelf.a</userinput></screen>
     67rm /usr/lib/libelf.a</userinput></screen>
    6968
    7069  </sect2>
  • chapter08/man-db.xml

    r0e9fb93 rdf462a9  
    4444    <para>Prepare Man-DB for compilation:</para>
    4545
    46 <screen revision="systemd"><userinput remap="configure">sed -i '/find/s@/usr@@' init/systemd/man-db.service.in
    47 
    48 ./configure --prefix=/usr                        \
     46<screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr                        \
    4947            --docdir=/usr/share/doc/man-db-&man-db-version; \
    5048            --sysconfdir=/etc                    \
     
    6967      <title>The meaning of the configure options:</title>
    7068
    71       <varlistentry revision="systemd">
    72         <term><command>sed -i '/find/s@/usr@@' init/systemd/man-db.service.in</command></term>
    73         <listitem>
    74           <para>This changes a harcoded path to the <command>find</command>
    75           utility, which we install in
    76           <filename class="directory">/bin</filename>.</para>
    77         </listitem>
    78       </varlistentry>
    79 
    8069      <varlistentry>
    8170        <term><parameter>--disable-setuid</parameter></term>
  • chapter08/ncurses.xml

    r0e9fb93 rdf462a9  
    100100
    101101<screen><userinput remap="install">make install</userinput></screen>
    102 
    103     <para>Move the shared libraries to the
    104     <filename class="directory">/lib</filename> directory, where they are
    105     expected to reside:</para>
    106 
    107 <screen><userinput remap="install">mv -v /usr/lib/libncursesw.so.6* /lib</userinput></screen>
    108 
    109     <para>Because the libraries have been moved, one symlink points to
    110     a non-existent file. Recreate it:</para>
    111 
    112 <screen><userinput remap="install">ln -sfv ../../lib/$(readlink /usr/lib/libncursesw.so) /usr/lib/libncursesw.so</userinput></screen>
    113102
    114103    <para>Many applications still expect the linker to be able to find
  • chapter08/procps.xml

    r0e9fb93 rdf462a9  
    5252
    5353<screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr                            \
    54             --exec-prefix=                           \
    55             --libdir=/usr/lib                        \
    5654            --docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
    5755            --disable-static                         \
     
    5957
    6058<screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr                            \
    61             --exec-prefix=                           \
    62             --libdir=/usr/lib                        \
    6359            --docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
    6460            --disable-static                         \
     
    10298
    10399<screen><userinput remap="install">make install</userinput></screen>
    104 
    105     <para>Finally, move essential libraries to a location that can be found
    106     if <filename class="directory">/usr</filename> is not mounted.</para>
    107 
    108 <screen><userinput remap="install">mv -v /usr/lib/libprocps.so.* /lib
    109 ln -sfv ../../lib/$(readlink /usr/lib/libprocps.so) /usr/lib/libprocps.so</userinput></screen>
    110100
    111101  </sect2>
  • chapter08/psmisc.xml

    r0e9fb93 rdf462a9  
    5555
    5656<screen><userinput remap="install">make install</userinput></screen>
    57 
    58     <para>Finally, move the <command>killall</command> and <command>fuser</command>
    59     programs to the location specified by the FHS:</para>
    60 
    61 <screen><userinput remap="install">mv -v /usr/bin/fuser   /bin
    62 mv -v /usr/bin/killall /bin</userinput></screen>
    6357
    6458  </sect2>
  • chapter08/readline.xml

    r0e9fb93 rdf462a9  
    9595<screen><userinput remap="install">make SHLIB_LIBS="-lncursesw" install</userinput></screen>
    9696
    97     <para>Now move the dynamic libraries to a more appropriate location
    98     and fix up symbolic links:</para>
    99 
    100 <screen><userinput remap="install">mv -v /usr/lib/lib{readline,history}.so.* /lib
    101 ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so
    102 ln -sfv ../../lib/$(readlink /usr/lib/libhistory.so ) /usr/lib/libhistory.so</userinput></screen>
    103 
    10497    <para>If desired, install the documentation:</para>
    10598
  • chapter08/revisedchroot.xml

    r0e9fb93 rdf462a9  
    2424    HOME=/root TERM="$TERM"            \
    2525    PS1='(lfs chroot) \u:\w\$ '        \
    26     PATH=/bin:/usr/bin:/sbin:/usr/sbin \
     26    PATH=/usr/bin:/usr/sbin            \
    2727    /bin/bash --login</userinput></screen>
    2828
  • chapter08/sed.xml

    r0e9fb93 rdf462a9  
    4343    <para>Prepare Sed for compilation:</para>
    4444
    45 <screen><userinput remap="configure">./configure --prefix=/usr --bindir=/bin</userinput></screen>
     45<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
    4646
    4747    <para>Compile the package and generate the HTML documentation:</para>
  • chapter08/shadow.xml

    r0e9fb93 rdf462a9  
    6666    the obsolete <filename class="directory">/var/spool/mail</filename> location
    6767    for user mailboxes that Shadow uses by default to the <filename
    68     class="directory">/var/mail</filename> location used currently:</para>
     68    class="directory">/var/mail</filename> location used currently. And,
     69    get rid of <filename class="directory">/bin</filename> and
     70    <filename class="directory">/sbin</filename> from <envar>PATH</envar>,
     71    since they are simply symlinks to their counterpart in
     72    <filename class="directory">/usr</filename>.</para>
     73
     74    <note>
     75      <para>If <filename class="directory">/bin</filename> and/or
     76      <filename class="directory">/sbin</filename> are prefereed to be
     77      left over in <envar>PATH</envar> for some reason, modify
     78      <envar>PATH</envar> in <filename>.bashrc</filename> after LFS is
     79      built.</para>
     80    </note>
    6981
    7082<screen><userinput remap="pre">sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD SHA512:' \
    7183    -e 's:/var/spool/mail:/var/mail:'                 \
     84    -e '/PATH=/{s@/sbin:@@;s@/bin:@@}'                \
    7285    -i etc/login.defs</userinput></screen>
    7386
     
    119132
    120133<screen><userinput remap="install">make install</userinput></screen>
    121     <!--
    122     <para>Move a misplaced program to its proper location:</para>
    123 
    124 <screen><userinput remap="install">mv -v /usr/bin/passwd /bin</userinput></screen>
    125     -->
    126 
    127     <!-- <para>Move Shadow's libraries to more appropriate locations:</para>
    128 
    129 <screen><userinput remap="install">mv -v /lib/libshadow.*a /usr/lib
    130 rm -v /lib/libshadow.so
    131 ln -sfv ../../lib/libshadow.so.0 /usr/lib/libshadow.so</userinput></screen> -->
    132134
    133135  </sect2>
  • chapter08/strippingagain.xml

    r0e9fb93 rdf462a9  
    3434
    3535<!--<screen><userinput>save_lib="ld-2.25.so libc-2.25.so libpthread-2.25.so libthread_db-1.0.so"-->
    36 <screen><userinput>save_lib="ld-&glibc-version;.so libc-&glibc-version;.so libpthread-&glibc-version;.so libthread_db-&libthread_db-version;.so"
    37 
    38 cd /lib
    39 for LIB in $save_lib; do
    40     objcopy --only-keep-debug $LIB $LIB.dbg
    41     strip --strip-unneeded $LIB
    42     objcopy --add-gnu-debuglink=$LIB.dbg $LIB
    43 done</userinput>
    44 <userinput arch="ml_32,ml_all">
    45 cd &lib-m32;
    46 for LIB in $save_lib; do
    47     objcopy --only-keep-debug $LIB $LIB.dbg
    48     strip --strip-unneeded $LIB
    49     objcopy --add-gnu-debuglink=$LIB.dbg $LIB
    50 done</userinput>
    51 <userinput arch="ml_x32,ml_all">
    52 cd &lib-mx32;
    53 for LIB in $save_lib; do
    54     objcopy --only-keep-debug $LIB $LIB.dbg
    55     strip --strip-unneeded $LIB
    56     objcopy --add-gnu-debuglink=$LIB.dbg $LIB
    57 done</userinput><userinput>
    58 
    59 save_usrlib="libquadmath.so.&libquadmath-version; libstdc++.so.&libstdcpp-version;
     36<screen><userinput>save_usrlib="ld-&glibc-version;.so libc-&glibc-version;.so libpthread-&glibc-version;.so libthread_db-&libthread_db-version;.so
     37             libquadmath.so.&libquadmath-version; libstdc++.so.&libstdcpp-version;
    6038             libitm.so.&libitm-version; libatomic.so.&libatomic-version;" <!-- libcilkrts.so.&libcilkrts-version;-->
    6139
     
    8159done</userinput><userinput>
    8260
    83 unset LIB save_lib save_usrlib</userinput></screen>
     61unset LIB save_usrlib</userinput></screen>
    8462
    8563<!--  <para>Before performing the stripping, take special care to ensure that
     
    9876   -exec strip --strip-debug {} ';'</userinput><userinput>
    9977
    100 find /lib /usr/lib -type f -name \*.so* ! -name \*dbg \
     78find /usr/lib -type f -name \*.so* ! -name \*dbg \
    10179   -exec strip --strip-unneeded {} ';'</userinput>
    102 <userinput arch="ml_32,ml_all">find &lib-m32; &usr-lib-m32; -type f -name \*.so* ! -name \*dbg \
     80<userinput arch="ml_32,ml_all">find &usr-lib-m32; -type f -name \*.so* ! -name \*dbg \
    10381   -exec strip --strip-unneeded {} ';'</userinput>
    104 <userinput arch="ml_x32,ml_all">find &lib-mx32; &usr-lib-mx32; -type f -name \*.so* ! -name \*dbg \
     82<userinput arch="ml_x32,ml_all">find &usr-lib-mx32; -type f -name \*.so* ! -name \*dbg \
    10583   -exec strip --strip-unneeded {} ';'</userinput><userinput>
    10684
    107 find /{bin,sbin} /usr/{bin,sbin,libexec} -type f \
     85find /usr/{bin,sbin,libexec} -type f \
    10886    -exec strip --strip-all {} ';'</userinput></screen>
    10987
  • chapter08/systemd.xml

    r0e9fb93 rdf462a9  
    4848
    4949    <!-- For linux-5.11's API headers changing the rfkill_event structure -->
    50     <para>First, apply a patch to fix some regressions and fix functionality
    51     with future versions of the kernel:</para>
    52 
    53 <screen><userinput remap="pre">patch -Np1 -i ../systemd-&systemd-version;-upstream_fixes-3.patch</userinput></screen>
     50    <para>First, apply a patch to fix some build issues:</para>
     51
     52<screen><userinput remap="pre">patch -Np1 -i ../systemd-&systemd-version;-upstream_fixes-1.patch</userinput></screen>
    5453
    5554    <para>Remove tests that cannot be built in chroot:</para>
    5655
    57 <screen><userinput remap="pre">sed '181,$ d' -i src/resolve/meson.build</userinput></screen>
     56<screen><userinput remap="pre">sed '177,$ d' -i src/resolve/meson.build</userinput></screen>
    5857
    5958    <para>Remove an unneeded group,
     
    7776      -Dfirstboot=false             \
    7877      -Dinstall-tests=false         \
    79       -Dkmod-path=/bin/kmod         \
    8078      -Dldconfig=false              \
    81       -Dmount-path=/bin/mount       \
    82       -Drootprefix=                 \
    83       -Drootlibdir=/lib             \
    84       -Dsplit-usr=true              \
    85       -Dsulogin-path=/sbin/sulogin  \
    8679      -Dsysusers=false              \
    87       -Dumount-path=/bin/umount     \
    8880      -Db_lto=false                 \
    8981      -Drpmmacrosdir=no             \
     
    9991
    10092      <varlistentry>
    101         <term><parameter>-D*-path=*</parameter></term>
    102         <listitem>
    103           <para>These switches provide the location of binaries needed by
    104           systemd at runtime that have not yet been installed.</para>
    105         </listitem>
    106       </varlistentry>
    107 
    108       <varlistentry>
    10993        <term><parameter>-Ddefault-dnssec=no</parameter></term>
    11094        <listitem>
     
    137121          distributions such as LFS and makes the boot time longer. Remove it
    138122          if the described feature is desired.</para>
    139         </listitem>
    140       </varlistentry>
    141 
    142       <varlistentry>
    143         <term><parameter>-Droot*</parameter></term>
    144         <listitem>
    145           <para>These switches ensure that core programs and
    146           shared libraries are installed in subdirectories
    147           of the root partition.</para>
    148         </listitem>
    149       </varlistentry>
    150 
    151       <varlistentry>
    152         <term><parameter>-Dsplit-usr=true</parameter></term>
    153         <listitem>
    154           <para>This switch ensures that systemd will work on
    155           systems where /bin, /lib and /sbin directories are not
    156           symlinks to their /usr counterparts.</para>
    157123        </listitem>
    158124      </varlistentry>
     
    385351        <seg>bootctl, busctl, coredumpctl, halt (symlink to systemctl),
    386352        hostnamectl, init, journalctl, kernel-install, localectl, loginctl,
    387         machinectl, networkctl, portablectl, poweroff (symlink to
     353        machinectl, networkctl, oomctl, portablectl, poweroff (symlink to
    388354        systemctl), reboot (symlink to systemctl), resolvconf (symlink to
    389355        resolvectl), resolvectl, runlevel (symlink to systemctl), shutdown
    390356        (symlink to systemctl), systemctl, systemd-analyze,
    391357        systemd-ask-password, systemd-cat, systemd-cgls, systemd-cgtop,
    392         systemd-delta, systemd-detect-virt, systemd-dissect, systemd-escape,
    393         systemd-hwdb, systemd-id128, systemd-inhibit, systemd-machine-id-setup,
     358        systemd-cryptenroll, systemd-delta, systemd-detect-virt,
     359        systemd-dissect, systemd-escape, systemd-hwdb, systemd-id128,
     360        systemd-inhibit, systemd-machine-id-setup,
    394361        systemd-mount, systemd-notify, systemd-nspawn, systemd-path,
    395362        systemd-repart, systemd-resolve (symlink to resolvectl), systemd-run,
    396         systemd-socket-activate, systemd-stdio-bridge, systemd-tmpfiles,
    397         systemd-tty-ask-password-agent, systemd-umount (symlink to
    398         systemd-mount), telinit (symlink to systemctl), timedatectl, and
    399         udevadm</seg>
     363        systemd-socket-activate, systemd-stdio-bridge, systemd-sysext,
     364        systemd-tmpfiles, systemd-tty-ask-password-agent,
     365        systemd-umount (symlink to systemd-mount),
     366        telinit (symlink to systemctl), timedatectl, and udevadm</seg>
    400367        <seg>libnss_myhostname.so.2, libnss_mymachines.so.2,
    401368        libnss_resolve.so.2, libnss_systemd.so.2,
    402         libsystemd.so, libsystemd-shared-&systemd-version;.so (in /lib/systemd),
     369        libsystemd.so, libsystemd-shared-&systemd-version;.so (in /usr/lib/systemd),
    403370        and libudev.so</seg>
    404371        <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d,
    405372        /etc/sysctl.d, /etc/systemd, /etc/tmpfiles.d, /etc/udev,
    406         /etc/xdg/systemd, /lib/systemd, /lib/udev, /usr/include/systemd,
     373        /etc/xdg/systemd, /usr/lib/systemd, /usr/lib/udev, /usr/include/systemd,
    407374        /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel,
    408375        /usr/lib/modules-load.d, /usr/lib/sysctl.d, /usr/lib/systemd,
     
    551518      </varlistentry>
    552519
     520      <varlistentry id="oomctl">
     521        <term><command>oomctl</command></term>
     522        <listitem>
     523          <para>Controls the systemd Out Of Memory daemon</para>
     524          <indexterm zone="ch-system-systemd oomctl">
     525            <primary sortas="b-oomctl">oomctl</primary>
     526          </indexterm>
     527        </listitem>
     528      </varlistentry>
     529
    553530      <varlistentry id="portablectl">
    554531        <term><command>portablectl</command></term>
     
    696673      </varlistentry>
    697674
     675      <varlistentry id="systemd-cryptenroll">
     676        <term><command>systemd-cryptenroll</command></term>
     677        <listitem>
     678          <para>Is used to enroll or remove a system from full disk encryption,
     679          as well as set and query private keys and recovery keys</para>
     680          <indexterm zone="ch-system-systemd systemd-cryptenroll">
     681            <primary sortas="b-systemd-cryptenroll">systemd-cryptenroll</primary>
     682          </indexterm>
     683        </listitem>
     684      </varlistentry>
     685
    698686      <varlistentry id="systemd-delta">
    699687        <term><command>systemd-delta</command></term>
     
    867855          <indexterm zone="ch-system-systemd systemd-socket-activate">
    868856            <primary sortas="b-systemd-socket-activate">systemd-socket-activate</primary>
     857          </indexterm>
     858        </listitem>
     859      </varlistentry>
     860
     861      <varlistentry id="systemd-sysext">
     862        <term><command>systemd-sysext</command></term>
     863        <listitem>
     864          <para>Creates, deletes, and manages system extensions through the
     865          systemd-sysextd daemon</para>
     866          <indexterm zone="ch-system-systemd systemd-sysext">
     867            <primary sortas="b-systemd-sysext">systemd-sysext</primary>
    869868          </indexterm>
    870869        </listitem>
  • chapter08/tar.xml

    r0e9fb93 rdf462a9  
    4747
    4848<screen><userinput remap="configure">FORCE_UNSAFE_CONFIGURE=1  \
    49 ./configure --prefix=/usr \
    50             --bindir=/bin</userinput></screen>
     49./configure --prefix=/usr</userinput></screen>
    5150
    5251    <variablelist>
  • chapter08/util-linux.xml

    r0e9fb93 rdf462a9  
    4646
    4747<screen revision="sysv"><userinput remap="configure">./configure ADJTIME_PATH=/var/lib/hwclock/adjtime   \
     48            --libdir=/usr/lib    \
    4849            --docdir=/usr/share/doc/util-linux-&util-linux-version; \
    4950            --disable-chfn-chsh  \
     
    6162
    6263<screen revision="systemd"><userinput remap="configure">./configure ADJTIME_PATH=/var/lib/hwclock/adjtime   \
     64            --libdir=/usr/lib    \
    6365            --docdir=/usr/share/doc/util-linux-&util-linux-version; \
    6466            --disable-chfn-chsh  \
  • chapter08/xz.xml

    r0e9fb93 rdf462a9  
    5959<screen><userinput remap="test">make check</userinput></screen>
    6060
    61   <para>Install the package and make sure that all essential files are in the
    62   correct directory:</para>
    63 
    64 <screen><userinput remap="install">make install
    65 mv -v   /usr/bin/{lzma,unlzma,lzcat,xz,unxz,xzcat} /bin
    66 mv -v /usr/lib/liblzma.so.* /lib
    67 ln -svf ../../lib/$(readlink /usr/lib/liblzma.so) /usr/lib/liblzma.so</userinput></screen>
     61    <para>Install the package:</para>
     62
     63<screen><userinput remap="install">make install</userinput></screen>
    6864
    6965  </sect2>
  • chapter08/zlib.xml

    r0e9fb93 rdf462a9  
    5757
    5858<screen><userinput remap="install">make install</userinput></screen>
    59 
    60     <para>The shared library needs to be moved to
    61     <filename class="directory">/lib</filename>, and as a result the
    62     <filename class="extension">.so</filename> file in
    63     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    64 
    65 <screen><userinput remap="install">mv -v /usr/lib/libz.so.* /lib
    66 ln -sfv ../../lib/$(readlink /usr/lib/libz.so) /usr/lib/libz.so</userinput></screen>
    6759
    6860    <para>Remove an useless static library:</para>
  • chapter08/zstd.xml

    r0e9fb93 rdf462a9  
    5555<screen><userinput remap="install">make prefix=/usr install</userinput></screen>
    5656
    57     <para>Remove the static library and move the shared library to
    58     <filename class="directory">/lib</filename>. Also, the
    59     <filename class="extension">.so</filename> file in
    60     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
    61 
    62 <screen><userinput remap="install">rm -v /usr/lib/libzstd.a
    63 mv -v /usr/lib/libzstd.so.* /lib
    64 ln -sfv ../../lib/$(readlink /usr/lib/libzstd.so) /usr/lib/libzstd.so</userinput></screen>
     57    <para>Remove the static library:</para>
     58<screen><userinput remap="install">rm -v /usr/lib/libzstd.a</userinput></screen>
    6559
    6660  </sect2>
  • chapter09/symlinks.xml

    r0e9fb93 rdf462a9  
    4949      Generate these rules by running:</para>
    5050
    51 <screen role="install"><userinput>bash /lib/udev/init-net-rules.sh</userinput></screen>
     51<screen role="install"><userinput>bash /usr/lib/udev/init-net-rules.sh</userinput></screen>
    5252
    5353      <para> Now, inspect the
  • chapter09/udev.xml

    r0e9fb93 rdf462a9  
    109109      udevd</command>.  Based on the rules specified in the files within the
    110110      <filename class="directory">/etc/udev/rules.d</filename>, <filename
    111       class="directory">/lib/udev/rules.d</filename>, and <filename
     111      class="directory">/usr/lib/udev/rules.d</filename>, and <filename
    112112      class="directory">/run/udev/rules.d</filename> directories, <command>
    113113      udevd</command> will create additional symlinks to the device node, or
     
    286286      <systemitem class="filesystem">sysfs</systemitem>. This is most common
    287287      with third party drivers from outside the kernel tree. Create a static
    288       device node in <filename>/lib/udev/devices</filename> with the
     288      device node in <filename>/usr/lib/udev/devices</filename> with the
    289289      appropriate major/minor numbers (see the file
    290290      <filename>devices.txt</filename> inside the kernel documentation or the
  • packages.ent

    r0e9fb93 rdf462a9  
    218218<!ENTITY gawk-fin-sbu "0.4 SBU">
    219219
    220 <!ENTITY gcc-version "10.2.0">
    221 <!ENTITY gcc-size "73,247 KB">
     220<!ENTITY gcc-version "11.1.0">
     221<!ENTITY gcc-size "77,032 KB">
    222222<!ENTITY gcc-url "&gnu;gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.xz">
    223 <!ENTITY gcc-md5 "e9fd9b1789155ad09bcf3ae747596b50">
     223<!ENTITY gcc-md5 "77f6252be0861ab918042acf42bc10ff">
    224224<!ENTITY gcc-home "https://gcc.gnu.org/">
    225225<!ENTITY gcc-tmpp1-du "3.7 GB">
     
    345345<!ENTITY intltool-fin-sbu "less than 0.1 SBU">
    346346
    347 <!ENTITY iproute2-version "5.11.0">
    348 <!ENTITY iproute2-size "803 KB">
     347<!ENTITY iproute2-version "5.12.0">
     348<!ENTITY iproute2-size "820 KB">
    349349<!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz">
    350 <!ENTITY iproute2-md5 "a3c6b09590c0bd120f0ab0b6e36187a8">
     350<!ENTITY iproute2-md5 "bbebacdabd4628ff86453ef4771a242a">
    351351<!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/">
    352352<!ENTITY iproute2-fin-du "15 MB">
     
    426426
    427427<!ENTITY linux-major-version "5">
    428 <!ENTITY linux-minor-version "11">
    429 <!ENTITY linux-patch-version "16">
     428<!ENTITY linux-minor-version "12">
     429<!ENTITY linux-patch-version "2">
    430430<!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
    431431<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
    432 <!ENTITY linux-size "114,893 KB">
     432<!ENTITY linux-size "115,344 KB">
    433433<!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
    434 <!ENTITY linux-md5 "c7536df1e1e3d03621092d732c8a5b6e">
     434<!ENTITY linux-md5 "1119082b017840a4d57e1a51c4bfc07b">
    435435<!ENTITY linux-home "https://www.kernel.org/">
    436436<!-- measured for 5.8.3 / gcc-10.2.0 on x86_64 : minimum is
     
    482482<!ENTITY man-pages-fin-sbu "less than 0.1 SBU">
    483483
    484 <!ENTITY meson-version "0.57.2">
    485 <!ENTITY meson-size "1,811 KB">
     484<!ENTITY meson-version "0.58.0">
     485<!ENTITY meson-size "1,844 KB">
    486486<!ENTITY meson-url "&github;/mesonbuild/meson/releases/download/&meson-version;/meson-&meson-version;.tar.gz">
    487 <!ENTITY meson-md5 "4a07b6d42d7a46a6b6e9604fae7da9aa">
     487<!ENTITY meson-md5 "18ac55e3d6a5acb17b5737eb2a15bb5b">
    488488<!ENTITY meson-home "https://mesonbuild.com">
    489489<!ENTITY meson-fin-du "37 MB">
     
    583583     meson pages will be needed: python3.6 and python3.6m -->
    584584
    585 <!ENTITY python-version "3.9.4">
     585<!ENTITY python-version "3.9.5">
    586586<!ENTITY python-minor "3.9">
    587 <!ENTITY python-size "18,458 KB">
     587<!ENTITY python-size "18,612 KB">
    588588<!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz">
    589 <!ENTITY python-md5 "2a3dba5fc75b695c45cf1806156e1a97">
     589<!ENTITY python-md5 "71f7ada6bec9cdbf4538adc326120cfd">
    590590<!ENTITY python-home "https://www.python.org/">
    591591<!ENTITY python-tmp-du "374 MB">
     
    594594<!ENTITY python-fin-sbu "2.8 SBU">
    595595<!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2">
    596 <!ENTITY python-docs-md5 "a225c583da4533c5bf98ba3555f50c7b">
    597 <!ENTITY python-docs-size "6,672 KB">
     596<!ENTITY python-docs-md5 "c594916b00cbb9796fa001dd2764ab0f">
     597<!ENTITY python-docs-size "6,680 KB">
    598598
    599599<!ENTITY readline-version "8.1">
     
    631631<!ENTITY sysklogd-fin-sbu "less than 0.1 SBU">
    632632
    633 <!ENTITY systemd-version  "247">
     633<!ENTITY systemd-version  "248">
    634634<!--<!ENTITY systemd-stable   "6b4878d">-->
    635635<!-- The above entity is used whenever we move to a stable backport branch. In the event of a critical problem or kernel
    636636     change that is incompatible, we will switch to the backport branch until the next stable release. -->
    637 <!ENTITY systemd-size     "9,656 KB">
     637<!ENTITY systemd-size     "10,068 KB">
    638638<!ENTITY systemd-url      "&github;/systemd/systemd/archive/v&systemd-version;/systemd-&systemd-version;.tar.gz">
    639639<!--<!ENTITY systemd-url      "&anduin-sources;/systemd-&systemd-version;-&systemd-stable;.tar.xz">-->
    640 <!ENTITY systemd-md5      "b0d6e603b814908acc69db29bbfb023c">
     640<!ENTITY systemd-md5      "00131adf0e98c1fd8a7fde4eb47f10c8">
    641641<!ENTITY systemd-home     "https://www.freedesktop.org/wiki/Software/systemd/">
    642 <!ENTITY systemd-man-version "247-2">
    643 <!ENTITY systemd-man-size "612 KB">
     642<!ENTITY systemd-man-version "248">
     643<!ENTITY systemd-man-size "584 KB">
    644644<!--<!ENTITY systemd-man-url  "&anduin-sources;/systemd-man-pages-&systemd-version;-&systemd-stable;.tar.xz">-->
    645645<!ENTITY systemd-man-url  "&anduin-sources;/systemd-man-pages-&systemd-man-version;.tar.xz">
    646 <!ENTITY systemd-man-md5  "7d8a53105b7a205f2863e360d9a23f95">
     646<!ENTITY systemd-man-md5  "82cc641742df67128df8b6a55fbcbabc">
    647647<!ENTITY systemd-fin-du   "264 MB">
    648648<!ENTITY systemd-fin-sbu  "1.8 SBU">
  • patches.ent

    r0e9fb93 rdf462a9  
    6868<!ENTITY sysvinit-consolidated-patch-size "2.4 KB">
    6969
    70 <!ENTITY systemd-upstream-fixes-patch "systemd-&systemd-version;-upstream_fixes-3.patch">
    71 <!ENTITY systemd-upstream-fixes-patch-md5 "949768da539ddfa2bf6e936b81ed96df">
    72 <!ENTITY systemd-upstream-fixes-patch-size "16 KB">
     70<!ENTITY systemd-upstream-fixes-patch "systemd-&systemd-version;-upstream_fixes-1.patch">
     71<!ENTITY systemd-upstream-fixes-patch-md5 "6819d49562ac48b551d15d2dd0123055">
     72<!ENTITY systemd-upstream-fixes-patch-size "8 KB">
Note: See TracChangeset for help on using the changeset viewer.