Changeset d8c2d84 for chapter08


Ignore:
Timestamp:
01/24/2024 12:26:42 PM (6 months ago)
Author:
Xi Ruoyao <xry111@…>
Branches:
xry111/arm64
Children:
648f145
Parents:
9f894d5 (diff), 5bef8f2 (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 remote-tracking branch 'origin/trunk' into xry111/arm64

Location:
chapter08
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • chapter08/coreutils.xml

    r9f894d5 rd8c2d84  
    5454    </note>
    5555
    56     <!-- https://bugs.gnu.org/62403 -->
    57 <!--
    58     <para>Fix a bug in checksum utilities causing failed checks not
    59     reported correctly:</para>
    60 
    61 <screen><userinput remap="pre">sed '/if ( ! match/s/ed_checksums//' -i src/digest.c</userinput></screen>
    62 -->
     56    <!-- https://seclists.org/oss-sec/2024/q1/30 -->
     57    <para>Fix a security vulnerability in the <command>split</command>
     58    utility:</para>
     59
     60<screen><userinput remap="pre">sed -e '/n_out += n_hold/,+4 s|.*bufsize.*|//&amp;|' \
     61    -i src/split.c</userinput></screen>
     62
    6363    <para>Now prepare Coreutils for compilation:</para>
    6464
  • chapter08/gcc.xml

    r9f894d5 rd8c2d84  
    531531        <term><filename class="libraryfile">libcc1</filename></term>
    532532        <listitem>
    533           <para>The C preprocessing library</para>
     533          <para>A library that allows GDB to make use of GCC</para>
    534534          <indexterm zone="ch-system-gcc libcc1">
    535535            <primary sortas="b-libcc1">libcc1</primary>
  • chapter08/ncurses.xml

    r9f894d5 rd8c2d84  
    100100        <listitem>
    101101          <para>This switch causes wide-character libraries (e.g., <filename
    102           class="libraryfile">libncursesw.so.&ncurses-version;</filename>)
     102          class="libraryfile">libncursesw.so.&ncurses-release;</filename>)
    103103          to be built instead of normal ones (e.g., <filename
    104           class="libraryfile">libncurses.so.&ncurses-version;</filename>).
     104          class="libraryfile">libncurses.so.&ncurses-release;</filename>).
    105105          These wide-character libraries are usable in both multibyte and
    106106          traditional 8-bit locales, while normal libraries work properly
     
    128128
    129129    <para>The installation of this package will overwrite
    130     <filename class="libraryfile">libncursesw.so.&ncurses-version;</filename>
     130    <filename class="libraryfile">libncursesw.so.&ncurses-release;</filename>
    131131    in-place.  It may crash the shell process which is using code and data
    132132    from the library file.  Install the package with
    133133    <literal>DESTDIR</literal>, and replace the library file correctly using
    134     <command>install</command> command:</para>
     134    <command>install</command> command (the header
     135    <filename>curses.h</filename> is also edited to ensure the
     136    wide-character ABI to be used as what we've done in
     137    <xref linkend='ch-tools-ncurses'/>):</para>
    135138
    136139<screen><userinput remap="install">make DESTDIR=$PWD/dest install
    137 install -vm755 dest/usr/lib/libncursesw.so.&ncurses-version; /usr/lib
    138 rm -v  dest/usr/lib/libncursesw.so.&ncurses-version;
     140install -vm755 dest/usr/lib/libncursesw.so.&ncurses-release; /usr/lib
     141rm -v  dest/usr/lib/libncursesw.so.&ncurses-release;
     142sed -e 's/^#if.*XOPEN.*$/#if 1/' \
     143    -i dest/usr/include/curses.h
    139144cp -av dest/* /</userinput></screen>
    140145
    141146    <para>Many applications still expect the linker to be able to find
    142     non-wide-character Ncurses libraries. Trick such applications into linking with
    143     wide-character libraries by means of symlinks and linker scripts:</para>
     147    non-wide-character Ncurses libraries. Trick such applications into
     148    linking with wide-character libraries by means of symlinks
     149    (note that the <filename class='extension'>.so</filename> links are
     150    only safe with <filename>curses.h</filename> edited to always use the
     151    wide-character ABI):</para>
    144152
    145153<screen><userinput remap="install">for lib in ncurses form panel menu ; do
    146     rm -vf                    /usr/lib/lib${lib}.so
    147     echo "INPUT(-l${lib}w)" &gt; /usr/lib/lib${lib}.so
    148     ln -sfv ${lib}w.pc        /usr/lib/pkgconfig/${lib}.pc
     154    ln -sfv lib${lib}w.so /usr/lib/lib${lib}.so
     155    ln -sfv ${lib}w.pc    /usr/lib/pkgconfig/${lib}.pc
    149156done</userinput></screen>
    150157
     
    153160    buildable:</para>
    154161
    155 <screen><userinput remap="install">rm -vf                     /usr/lib/libcursesw.so
    156 echo "INPUT(-lncursesw)" &gt; /usr/lib/libcursesw.so
    157 ln -sfv libncurses.so      /usr/lib/libcurses.so</userinput></screen>
     162<screen><userinput remap="install">ln -sfv libncursesw.so /usr/lib/libcurses.so</userinput></screen>
    158163
    159164    <para>If desired, install the Ncurses documentation:</para>
     
    207212        </seg>
    208213        <seg>
    209            libcursesw.so (symlink and linker script to libncursesw.so),
     214           libcurses.so (symlink),
     215           libform.so (symlink),
    210216           libformw.so,
     217           libmenu.so (symlink),
    211218           libmenuw.so,
     219           libncurses.so (symlink),
    212220           libncursesw.so,
    213221           libncurses++w.so,
    214            libpanelw.so, and their non-wide-character counterparts without "w"
    215               in the library names.</seg>
     222           libpanel.so (symlink),
     223           and libpanelw.so,
     224        </seg>
    216225        <seg>
    217226           /usr/share/tabset,
     
    343352      </varlistentry>
    344353
    345       <varlistentry id="libcursesw">
    346         <term><filename class="libraryfile">libcursesw</filename></term>
    347         <listitem>
    348           <para>A link to <filename>libncursesw</filename></para>
    349           <indexterm zone="ch-system-ncurses libcursesw">
    350             <primary sortas="c-libcursesw">libcursesw</primary>
    351           </indexterm>
    352         </listitem>
    353       </varlistentry>
    354 
    355354      <varlistentry id="libncursesw">
    356355        <term><filename class="libraryfile">libncursesw</filename></term>
  • chapter08/pkgconf.xml

    r9f894d5 rd8c2d84  
    4646
    4747    <!-- https://github.com/pkgconf/pkgconf/issues/317 -->
    48     <para>Fix a regression in pkgconf-2.0.3 breaking BLFS packages:</para>
     48    <para>Fix a regression in pkgconf-2.1.0 breaking BLFS packages:</para>
    4949
    50     <screen><userinput remap="pre">sed -i 's/str\(cmp.*package\)/strn\1, strlen(pkg-&gt;why)/' cli/main.c</userinput></screen>
     50    <screen><userinput remap="pre">patch -Np1 -i ../&pkgconf-upstream-fix-patch;</userinput></screen>
    5151
    5252    <para>Prepare Pkgconf for compilation:</para>
Note: See TracChangeset for help on using the changeset viewer.