فهرست منبع

Merge changes from trunk to multilib

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/multilib@12130 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Thomas Trepl 4 سال پیش
والد
کامیت
77c88ed661

+ 2 - 1
chapter01/changelog.xml

@@ -60,7 +60,8 @@
         <listitem>
           <para>[pierre] - Replace the relinked libctf (which may incorrectly
           link against libz from the host distribution) with the one that
-          was linked during "make" in binutils-pass2.</para>
+          was linked during "make" in binutils-pass2. Thanks to Xi Ruoyao
+          for the fix.</para>
         </listitem>
         <listitem>
           <para>[bdubbs] - Update to bc-3.2.6. Fixes

+ 19 - 1
chapter06/file.xml

@@ -51,10 +51,28 @@
 
 <screen><userinput remap="pre">mkdir build
 pushd build
-  ../configure
+  ../configure --disable-bzlib      \
+               --disable-libseccomp \
+               --disable-xzlib      \
+               --disable-zlib
   make
 popd</userinput></screen>
 
+    <variablelist>
+      <title>The meaning of the new configure option:</title>
+
+      <varlistentry>
+        <term><parameter>--disable-*</parameter></term>
+        <listitem>
+          <para>The configuration script attempts to use some packages from
+          the host distribution if the corresponding library files exist.
+          It may cause compilation failure if a library file exists, but
+          the corresponding header files do not.  These options prevent
+          using these unneeded capabilities from the host.</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+
     <para>Prepare File for compilation:</para>
 
 <screen><userinput remap="configure">./configure --prefix=/usr --host=$LFS_TGT --build=$(./config.guess)</userinput></screen>

+ 5 - 2
chapter07/util-linux.xml

@@ -41,8 +41,11 @@
   <sect2 role="installation">
     <title>Installation of Util-linux</title>
 
-    <para>First create a directory
-    to enable storage for the <command>hwclock</command> program:</para>
+    <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. Create this directory
+    with:</para>
 
 <screen><userinput remap="pre">mkdir -pv /var/lib/hwclock</userinput></screen>
 

+ 5 - 1
chapter08/binutils.xml

@@ -180,6 +180,10 @@ cd       build</userinput></screen>
 
 <screen><userinput remap="install">make tooldir=/usr install</userinput></screen>
 
+    <para>Remove useless static libraries:</para>
+
+<screen><userinput remap="install">rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes}.a</userinput></screen>
+
   </sect2>
 
   <sect2 id="contents-binutils" role="content">
@@ -193,7 +197,7 @@ cd       build</userinput></screen>
       <seglistitem>
         <seg>addr2line, ar, as, c++filt, dwp, elfedit, gprof, ld, ld.bfd, ld.gold, nm,
         objcopy, objdump, ranlib, readelf, size, strings, and strip</seg>
-        <seg>libbfd.{a,so}, libctf.{a,so}, libctf-nobfd.{a,so}, and libopcodes.{a,so}</seg>
+        <seg>libbfd.so, libctf.so, libctf-nobfd.so, and libopcodes.so</seg>
         <seg>/usr/lib/ldscripts</seg>
       </seglistitem>
     </segmentedlist>

+ 5 - 1
chapter08/bzip2.xml

@@ -95,6 +95,10 @@ rm -v /usr/bin/{bunzip2,bzcat,bzip2}
 ln -sv bzip2 /bin/bunzip2
 ln -sv bzip2 /bin/bzcat</userinput></screen>
 
+    <para>Remove an useless static library:</para>
+
+<screen><userinput remap="install">rm -fv /usr/lib/libbz2.a</userinput></screen>
+
   </sect2>
 
   <!-- - - - - - - - - - -->
@@ -163,7 +167,7 @@ install -Dm644 libbz2.a &usr-lib-mx32;/libbz2.a</userinput></screen>
         <seg>bunzip2 (link to bzip2), bzcat (link to bzip2), bzcmp (link to
         bzdiff), bzdiff, bzegrep (link to bzgrep), bzfgrep (link to bzgrep),
         bzgrep, bzip2, bzip2recover, bzless (link to bzmore), and bzmore</seg>
-        <seg>libbz2.{a,so}</seg>
+        <seg>libbz2.so</seg>
         <seg>/usr/share/doc/bzip2-&bzip2-version;</seg>
       </seglistitem>
     </segmentedlist>

+ 3 - 3
chapter08/coreutils.xml

@@ -77,9 +77,9 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \
       <varlistentry>
         <term><command>autoreconf</command></term>
         <listitem>
-          <para>This command updates generated configuration files 
-          consistent with the latest version of automake.
-          </para>
+          <para>The patch for internationalization has modified the
+          building system of the package, so the configuration files have
+          to be regenerated.</para>
         </listitem>
       </varlistentry>
 

+ 21 - 12
chapter08/dbus.xml

@@ -48,14 +48,16 @@
 
     <para>Prepare D-Bus for compilation:</para>
 
-<screen><userinput remap="configure">./configure --prefix=/usr                       \
-            --sysconfdir=/etc                   \
-            --localstatedir=/var                \
-            --disable-static                    \
-            --disable-doxygen-docs              \
-            --disable-xml-docs                  \
+<screen><userinput remap="configure">./configure --prefix=/usr                        \
+            --sysconfdir=/etc                    \
+            --localstatedir=/var                 \
+            --disable-static                     \
+            --disable-doxygen-docs               \
+            --disable-xml-docs                   \
             --docdir=/usr/share/doc/dbus-&dbus-version; \
-            --with-console-auth-dir=/run/console</userinput></screen>
+            --with-console-auth-dir=/run/console \
+            --with-system-pid-file=/run/dbus/pid \
+            --with-system-socket=/run/dbus/system_bus_socket</userinput></screen>
 
     <variablelist>
       <title>The meaning of the configure options:</title>
@@ -68,6 +70,18 @@
         </listitem>
       </varlistentry>
 
+      <varlistentry>
+        <term>
+          <parameter>--with-system-pid-file=/run/dbus/pid</parameter> and
+          <parameter>--with-system-socket=/run/dbus/system_bus_socket</parameter>
+        </term>
+        <listitem>
+          <para>These set the location of the PID file and the system bus socket
+          to be in <filename class="directory">/run</filename>, instead of
+          deprecated <filename class="directory">/var/run</filename>.</para>
+        </listitem>
+      </varlistentry>
+
     </variablelist>
 
     <para>Compile the package:</para>
@@ -96,11 +110,6 @@ ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so</useri
 
 <screen><userinput remap="install">ln -sfv /etc/machine-id /var/lib/dbus</userinput></screen>
 
-    <para>Move the socket file to /run instead of the deprecated
-    /var/run:</para>
-
- <screen><userinput remap="install">sed -i 's:/var/run:/run:' /lib/systemd/system/dbus.socket</userinput></screen>
-
   </sect2>
 
   <sect2 id="contents-dbus" role="content">

+ 2 - 3
chapter08/e2fsprogs.xml

@@ -122,10 +122,9 @@ cd       build</userinput></screen>
 
 <screen><userinput remap="install">make install</userinput></screen>
 
-    <para>Make the installed static libraries writable so debugging symbols can
-    be removed later:</para>
+    <para>Remove useless static libraries:</para>
 
-<screen><userinput remap="install">chmod -v u+w /usr/lib/{libcom_err,libe2p,libext2fs,libss}.a</userinput></screen>
+<screen><userinput remap="install">rm -fv /usr/lib/{libcom_err,libe2p,libext2fs,libss}.a</userinput></screen>
 
     <para>This package installs a gzipped
     <filename class="extension">.info</filename> file but doesn't update the

+ 3 - 2
chapter08/flex.xml

@@ -53,8 +53,9 @@
 
     <para>Prepare Flex for compilation:</para>
 
-<!-- <screen><userinput remap="configure">HELP2MAN=/tools/bin/true \ -->
-<screen><userinput remap="configure">./configure --prefix=/usr --docdir=/usr/share/doc/flex-&flex-version;</userinput></screen>
+<screen><userinput remap="configure">./configure --prefix=/usr \
+            --docdir=/usr/share/doc/flex-&flex-version; \
+            --disable-static</userinput></screen>
 
     <para>Compile the package:</para>
 

+ 7 - 0
chapter08/libtool.xml

@@ -68,6 +68,13 @@
 
 <screen><userinput remap="install">make install</userinput></screen>
 
+    <!-- dev: - -disable-static works but causes additional test failures
+              so we manually remove the static library -->
+
+    <para>Remove an useless static library:</para>
+
+<screen><userinput remap="install">rm -fv /usr/lib/libltdl.a</userinput></screen>
+
   </sect2>
 
   <!-- - - - - - - - - - -->

+ 4 - 5
chapter08/ncurses.xml

@@ -41,10 +41,6 @@
   <sect2 role="installation">
     <title>Installation of Ncurses</title>
 
-    <para>Don't install a static library that is not handled by configure:</para>
-
-<screen><userinput remap="pre">sed -i '/LIBTOOL_INSTALL/d' c++/Makefile.in</userinput></screen>
-
     <para>Prepare Ncurses for compilation:</para>
 
 <screen><userinput remap="configure">./configure --prefix=/usr           \
@@ -133,6 +129,10 @@ done</userinput></screen>
 echo "INPUT(-lncursesw)" &gt; /usr/lib/libcursesw.so
 ln -sfv libncurses.so      /usr/lib/libcurses.so</userinput></screen>
 
+    <para>Remove a static library that is not handled by configure:</para>
+
+<screen><userinput remap="install">rm -fv /usr/lib/libncurses++w.a</userinput></screen>
+
     <para>If desired, install the Ncurses documentation:</para>
 
 <screen><userinput remap="install">mkdir -v       /usr/share/doc/ncurses-&ncurses-version;
@@ -278,7 +278,6 @@ rm -rf DESTDIR</userinput></screen>
            libformw.so, 
            libmenuw.so, 
            libncursesw.so,
-           libncurses++w.a,
            libpanelw.so, and their non-wide-character counterparts without "w"
               in the library names.</seg>
         <seg>

+ 1 - 17
chapter08/python.xml

@@ -94,23 +94,7 @@
 
     <para>Install the package:</para>
 
-<screen><userinput remap="install">make install
-chmod -v 755 /usr/lib/libpython&python-minor;.so
-chmod -v 755 /usr/lib/libpython3.so
-ln -sfv pip&python-minor; /usr/bin/pip3</userinput></screen>
-
-    <variablelist>
-      <title>The meaning of the install commands:</title>
-<!-- ======  Change 8m if Python minor version changes ======= -->
-    <varlistentry>
-      <term><command>chmod -v 755 /usr/lib/libpython{&python-minor;,3}.so</command></term>
-      <listitem>
-        <para>Fix permissions for libraries to be consistent with other
-        libraries.</para>
-      </listitem>
-    </varlistentry>
-
-    </variablelist>
+<screen><userinput remap="install">make install</userinput></screen>
 
     <para>If desired, install the preformatted documentation:</para>
 

+ 0 - 19
chapter08/revisedchroot.xml

@@ -36,25 +36,6 @@ chroot "$LFS" /usr/bin/env -i          \
   linkend="ch-tools-bindmount"/> and <xref
   linkend="ch-tools-kernfsmount"/>.</para>
 
-  <para>There were several static libraries that were not suppressed earlier
-  in the chapter in order to satisfy the regression tests in several packages. These 
-  libraries are from binutils, bzip2, e2fsprogs, flex, libtool, and zlib.  If desired,
-  remove them now:</para>
-
-<screen><userinput>rm -f /usr/lib/lib{bfd,opcodes}.a
-rm -f /usr/lib/libctf{,-nobfd}.a
-rm -f /usr/lib/libbz2.a
-rm -f /usr/lib/lib{com_err,e2p,ext2fs,ss}.a
-rm -f /usr/lib/libltdl.a
-rm -f /usr/lib/libfl.a
-rm -f /usr/lib/libz.a</userinput><userinput arch="ml_32,ml_all">
-rm -f &usr-lib-m32;/libbz2.a
-rm -f &usr-lib-m32;/libltdl.a
-rm -f &usr-lib-m32;/libz.a</userinput><userinput arch="ml_x32,ml_all">
-rm -f &usr-lib-mx32;/libbz2.a
-rm -f &usr-lib-mx32;/libltdl.a
-rm -f &usr-lib-mx32;/libz.a</userinput></screen>
-
   <para>There are also several files installed in the /usr/lib and /usr/libexec
   directories with a file name extension of .la. These are "libtool archive"
   files. As already said, they are only useful when linking with static

+ 8 - 0
chapter08/systemd.xml

@@ -212,6 +212,10 @@ meson --prefix=/usr                 \
 
 <screen><userinput remap="install">rm -f /usr/bin/xsltproc</userinput></screen>
 
+    <para>Remove an useless directory:</para>
+
+<screen><userinput remap="install">rm -rf /usr/lib/pam.d</userinput></screen>
+
     <para>Create the <filename>/etc/machine-id</filename> file needed by
     <command>systemd-journald</command>:</para>
 
@@ -228,10 +232,14 @@ meson --prefix=/usr                 \
  
 <screen><userinput remap="adjust">systemctl disable systemd-time-wait-sync.service</userinput></screen>
 
+<!-- dev: 50-pid-max.conf is not removed in BLFS, so I commented the following out.
+          If it causes any trouble, we can add this back and also copy it into BLFS -->
+<!--
     <para>Prevent systemd from resetting the maximum PID value which causes
     some problems with packages and units in BLFS:</para>
     
 <screen><userinput remap="adjust">rm -f /usr/lib/sysctl.d/50-pid-max.conf</userinput></screen>
+-->
 
   </sect2>
 

+ 0 - 8
chapter08/util-linux.xml

@@ -42,14 +42,6 @@
   <sect2 role="installation">
     <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. Create this directory
-    with:</para>
-
-<screen><userinput remap="pre">mkdir -pv /var/lib/hwclock</userinput></screen>
-
     <para>Prepare Util-linux for compilation:</para>
 
 <screen revision="sysv"><userinput remap="configure">./configure ADJTIME_PATH=/var/lib/hwclock/adjtime   \

+ 5 - 1
chapter08/zlib.xml

@@ -65,6 +65,10 @@
 <screen><userinput remap="install">mv -v /usr/lib/libz.so.* /lib
 ln -sfv ../../lib/$(readlink /usr/lib/libz.so) /usr/lib/libz.so</userinput></screen>
 
+    <para>Remove an useless static library:</para>
+
+<screen><userinput remap="install">rm -fv /usr/lib/libz.a</userinput></screen>
+
   </sect2>
 
   <!-- - - - - - - - - - -->
@@ -130,7 +134,7 @@ rm -rf DESTDIR</userinput></screen>
       <segtitle>Installed libraries</segtitle>
 
       <seglistitem>
-        <seg>libz.{a,so}</seg>
+        <seg>libz.so</seg>
       </seglistitem>
     </segmentedlist>