Changeset efcb393 for chapter05/tcl.xml


Ignore:
Timestamp:
05/03/2020 09:02:51 PM (4 years ago)
Author:
Pierre Labastie <pieere@…>
Branches:
10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
a715dec
Parents:
9d719e2
Message:

Make the new book

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross-chap5@11831 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter05/tcl.xml

    r9d719e2 refcb393  
    44  <!ENTITY % general-entities SYSTEM "../general.ent">
    55  %general-entities;
     6  <!ENTITY tdbc-ver          "1.1.1">
     7  <!ENTITY itcl-ver          "4.2.0">
    68]>
    79
     
    4749    packages.  Installing three packages for testing purposes may seem
    4850    excessive, but it is very reassuring, if not essential, to know that the
    49     most important tools are working properly. Even if the test suites are not
    50     run in this chapter (they are not mandatory), these packages are required
     51    most important tools are working properly. These packages are required
    5152    to run the test suites in <xref linkend="chapter-building-system"/>.</para>
    5253
     
    5758    <para>Prepare Tcl for compilation:</para>
    5859
    59 <screen><userinput remap="configure">cd unix
    60 ./configure --prefix=/tools</userinput></screen>
     60<screen><userinput remap="configure">SRCDIR=$(pwd)
     61cd unix
     62./configure --prefix=/usr           \
     63            --mandir=/usr/share/man \
     64            $([ "$(uname -m)" = x86_64 ] &amp;&amp; echo --enable-64bit)</userinput></screen>
     65
     66    <variablelist>
     67      <title>The meaning of the configure options:</title>
     68
     69      <varlistentry>
     70        <term><parameter>$([ "$(uname -m)" = x86_64 ] &amp;&amp; echo --enable-64bit)</parameter></term>
     71        <listitem>
     72          <para>The construct <parameter>$(&lt;shell command&gt;)</parameter>
     73          is replaced by the output of the chell command.  Here this output is
     74          empty if running on a 32 bit machine, and is
     75          <parameter>--enable-64bit</parameter> if running on a 64 bit machine.
     76          </para>
     77        </listitem>
     78      </varlistentry>
     79
     80    </variablelist>
    6181
    6282    <para>Build the package:</para>
    6383
    64 <screen><userinput remap="make">make</userinput></screen>
     84<screen><userinput remap="make">make
    6585
    66     <para>Compilation is now complete. As discussed earlier, running the test
    67     suite is not mandatory for the temporary tools here in this chapter. To run
    68     the Tcl test suite anyway, issue the following command:</para>
     86sed -e "s|$SRCDIR/unix|/usr/lib|" \
     87    -e "s|$SRCDIR|/usr/include|"  \
     88    -i tclConfig.sh
    6989
    70 <screen><userinput remap="test">TZ=UTC make test</userinput></screen>
     90sed -e "s|$SRCDIR/unix/pkgs/tdbc&tdbc-ver;|/usr/lib/tdbc&tdbc-ver;|" \
     91    -e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/generic|/usr/include|"    \
     92    -e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/library|/usr/lib/tcl8.6|" \
     93    -e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;|/usr/include|"            \
     94    -i pkgs/tdbc&tdbc-ver;/tdbcConfig.sh
    7195
    72     <para>The Tcl test suite may experience failures under certain host
    73     conditions that are not fully understood. Therefore, test suite failures
    74     here are not surprising, and are not considered critical. The
    75     <parameter>TZ=UTC</parameter> parameter sets the time zone to Coordinated
    76     Universal Time (UTC), but only
    77     for the duration of the test suite run. This ensures that the clock tests
    78     are exercised correctly. Details on the <envar>TZ</envar> environment
    79     variable are provided in <xref linkend="chapter-config"/>.</para>
     96sed -e "s|$SRCDIR/unix/pkgs/itcl&itcl-ver;|/usr/lib/itcl&itcl-ver;|" \
     97    -e "s|$SRCDIR/pkgs/itcl&itcl-ver;/generic|/usr/include|"    \
     98    -e "s|$SRCDIR/pkgs/itcl&itcl-ver;|/usr/include|"            \
     99    -i pkgs/itcl&itcl-ver;/itclConfig.sh
     100
     101unset SRCDIR</userinput></screen>
     102
     103    <para>The various <quote>sed</quote> after the <quote>make</quote> command
     104    remove references to the build directory from various configuration files,
     105    and replaces them with the install directory. This is not mandatory
     106    for the remaining of LFS, but may be needed in case a package built later
     107    uses Tcl.</para>
    80108
    81109    <para>Install the package:</para>
     
    86114    be removed later:</para>
    87115
    88 <screen><userinput remap="install">chmod -v u+w /tools/lib/libtcl&tcl-major-version;.so</userinput></screen>
     116<screen><userinput remap="install">chmod -v u+w /usr/lib/libtcl&tcl-major-version;.so</userinput></screen>
    89117
    90118    <para>Install Tcl's headers. The next package, Expect, requires them
     
    95123    <para>Now make a necessary symbolic link:</para>
    96124
    97 <screen><userinput remap="install">ln -sv tclsh&tcl-major-version; /tools/bin/tclsh</userinput></screen>
     125<screen><userinput remap="install">ln -sfv tclsh&tcl-major-version; /usr/bin/tclsh</userinput></screen>
    98126
    99127  </sect2>
Note: See TracChangeset for help on using the changeset viewer.