Changeset f8b27ab


Ignore:
Timestamp:
06/29/2022 12:08:29 PM (6 weeks ago)
Author:
Pierre Labastie <pierre.labastie@…>
Branches:
multilib, s6-init, trunk, xry111/clfs-ng
Children:
0160d68, 0d80e53, e4d72ed
Parents:
bfc6495
Message:

Generate shared C++ bindings for ncurses

Presently we let the build system generate static C++ bindings, and
then we remove them. Note that we could also prevent generating
any C++ binding, since nothing in LFS/BLFS use them, but it seems to
me that generating the shared ones is closer to what is done for
other packages.

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • chapter01/changelog.xml

    rbfc6495 rf8b27ab  
    4242
    4343    <listitem>
     44      <para>2022-06-29</para>
     45      <itemizedlist>
     46        <listitem>
     47          <para>[pierre] - Generate shared C++ bindings for ncurses, instead
     48          of generating and then removing the static ones.</para>
     49        </listitem>
     50      </itemizedlist>
     51    </listitem>
     52
     53    <listitem>
    4454      <para>2022-06-14</para>
    4555      <itemizedlist>
  • chapter06/ncurses.xml

    rbfc6495 rf8b27ab  
    6666            --with-manpage-format=normal \
    6767            --with-shared                \
     68            --without-normal             \
     69            --with-cxx-shared            \
    6870            --without-debug              \
    6971            --without-ada                \
    70             --without-normal             \
    7172            --disable-stripping          \
    7273            --enable-widec</userinput></screen>
     
    8182          pages, which may happen if the host distribution itself
    8283          has compressed manual pages.</para>
     84        </listitem>
     85      </varlistentry>
     86
     87      <varlistentry>
     88        <term><parameter>--with-shared</parameter></term>
     89        <listitem>
     90          <para>This makes Ncurses build and install shared C libraries.</para>
     91        </listitem>
     92      </varlistentry>
     93
     94      <varlistentry>
     95        <term><parameter>--without-normal</parameter></term>
     96        <listitem>
     97          <para>This prevents Ncurses building and installing static C
     98          libraries.</para>
     99        </listitem>
     100      </varlistentry>
     101
     102      <varlistentry>
     103        <term><parameter>--without-debug</parameter></term>
     104        <listitem>
     105          <para>This prevents Ncurses building and installing debug
     106          libraries.</para>
     107        </listitem>
     108      </varlistentry>
     109
     110      <varlistentry>
     111        <term><parameter>--with-cxx-shared</parameter></term>
     112        <listitem>
     113          <para>This makes Ncurses build and install shared C++ bindings. It
     114          also prevents it building and installing static C++ bindings.</para>
    83115        </listitem>
    84116      </varlistentry>
     
    116148      </varlistentry>
    117149
    118       <varlistentry>
    119         <term><parameter>--without-normal</parameter></term>
    120         <listitem>
    121           <para>This switch disables building and installing most static libraries.
    122           </para>
    123         </listitem>
    124       </varlistentry>
    125 
    126150    </variablelist>
    127151
     
    134158<screen><userinput remap="install">make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
    135159echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so</userinput></screen>
    136 
     160<!--
    137161    <para>Remove an unneeded static library not handled by
    138162    <command>configure</command>:</para>
    139163
    140164<screen><userinput remap="install">rm -v $LFS/usr/lib/libncurses++w.a</userinput></screen>
    141 
     165-->
    142166    <variablelist>
    143167      <title>The meaning of the install options:</title>
  • chapter08/ncurses.xml

    rbfc6495 rf8b27ab  
    4949            --without-debug         \
    5050            --without-normal        \
     51            --with-cxx-shared       \
    5152            --enable-pc-files       \
    5253            --enable-widec          \
     
    5556    <variablelist>
    5657      <title>The meaning of the new configure options:</title>
     58
     59      <varlistentry>
     60        <term><parameter>--with-shared</parameter></term>
     61        <listitem>
     62          <para>This makes Ncurses build and install shared C libraries.</para>
     63        </listitem>
     64      </varlistentry>
     65
     66      <varlistentry>
     67        <term><parameter>--without-normal</parameter></term>
     68        <listitem>
     69          <para>This prevents Ncurses building and installing static C
     70          libraries.</para>
     71        </listitem>
     72      </varlistentry>
     73
     74      <varlistentry>
     75        <term><parameter>--without-debug</parameter></term>
     76        <listitem>
     77          <para>This prevents Ncurses building and installing debug
     78          libraries.</para>
     79        </listitem>
     80      </varlistentry>
     81
     82      <varlistentry>
     83        <term><parameter>--with-cxx-shared</parameter></term>
     84        <listitem>
     85          <para>This makes Ncurses build and install shared C++ bindings. It
     86          also prevents it building and installing static C++ bindings.</para>
     87        </listitem>
     88      </varlistentry>
     89
     90      <varlistentry>
     91        <term><parameter>--enable-pc-files</parameter></term>
     92        <listitem>
     93          <para>This switch generates and installs .pc files for pkg-config.
     94          </para>
     95        </listitem>
     96      </varlistentry>
    5797
    5898      <varlistentry>
     
    70110      </varlistentry>
    71111
    72       <varlistentry>
    73         <term><parameter>--enable-pc-files</parameter></term>
    74         <listitem>
    75           <para>This switch generates and installs .pc files for pkg-config.
    76           </para>
    77         </listitem>
    78       </varlistentry>
    79 
    80       <varlistentry>
    81         <term><parameter>--without-normal</parameter></term>
    82         <listitem>
    83           <para>This switch disables building and installing most static libraries.
    84           </para>
    85         </listitem>
    86       </varlistentry>
    87 
    88112    </variablelist>
    89113
     
    113137<screen><userinput remap="install">make DESTDIR=$PWD/dest install
    114138install -vm755 dest/usr/lib/libncursesw.so.&ncurses-version; /usr/lib
    115 rm -v  dest/usr/lib/{libncursesw.so.&ncurses-version;,libncurses++w.a}
     139rm -v  dest/usr/lib/libncursesw.so.&ncurses-version;
    116140cp -av dest/* /</userinput></screen>
    117141
Note: See TracChangeset for help on using the changeset viewer.