aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/flex.xml
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2020-06-07 20:16:00 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2020-06-07 20:16:00 +0000
commitfcc027677da55c41dcaea045f5b9ff8b088e6495 (patch)
tree42500a7858959695b971e7f28f1d0bf33185db2e /chapter06/flex.xml
parentd53fefab5a6772fef606392a61608fc290e6a7ae (diff)
Initial commit of alternative cross LFS
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter06/flex.xml')
-rw-r--r--chapter06/flex.xml127
1 files changed, 33 insertions, 94 deletions
diff --git a/chapter06/flex.xml b/chapter06/flex.xml
index bd4bd545f..88e263413 100644
--- a/chapter06/flex.xml
+++ b/chapter06/flex.xml
@@ -5,7 +5,7 @@
%general-entities;
]>
-<sect1 id="ch-system-flex" role="wrap">
+<sect1 id="ch-tools-flex" role="wrap">
<?dbhtml filename="flex.html"?>
<sect1info condition="script">
@@ -16,23 +16,25 @@
<title>Flex-&flex-version;</title>
- <indexterm zone="ch-system-flex">
+ <indexterm zone="ch-tools-flex">
<primary sortas="a-Flex">Flex</primary>
+ <secondary>tools</secondary>
</indexterm>
<sect2 role="package">
<title/>
- <para>The Flex package contains a utility for generating programs that
- recognize patterns in text.</para>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
+ href="../chapter06/flex.xml"
+ xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem>
- <seg>&flex-ch6-sbu;</seg>
- <seg>&flex-ch6-du;</seg>
+ <seg>&flex-ch5-sbu;</seg>
+ <seg>&flex-ch5-du;</seg>
</seglistitem>
</segmentedlist>
@@ -41,108 +43,45 @@
<sect2 role="installation">
<title>Installation of Flex</title>
-<!--
- <para>First, fix a problem introduced with glibc-2.26:</para>
-
-<screen><userinput remap="pre">sed -i "/math.h/a #include &lt;malloc.h&gt;" src/flexdef.h</userinput></screen>
-
- <para>The build procedure assumes the <application>help2man</application>
- program is available to create a man page from the executable - -help option.
- This is not present, so we use an environment variable to skip this process.
- Now, prepare Flex for compilation:</para> -->
-
<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;</userinput></screen>
+ <!--
+ <variablelist>
+ <title>The meaning of the new configure option:</title>
+
+ <varlistentry>
+ <term><parameter>- -disable-bootstrap</parameter></term>
+ <listitem>
+ <para>Normally, building flex is done in two stages. A first
+ programs, which is used to generate the source of a second one,
+ which is then compiled. When using cross-compilation, the first
+ program is generated on the build system. However, due to a bug
+ in configure, the presence of some function is tested only on the
+ host system. If this function is not found on the build system, the
+ build fails. This can be prevented by disabling the two stage
+ build.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ -->
<para>Compile the package:</para>
<screen><userinput remap="make">make</userinput></screen>
- <para>To test the results (about 0.5 SBU), issue:</para>
-
-<screen><userinput remap="test">make check</userinput></screen>
-
<para>Install the package:</para>
<screen><userinput remap="install">make install</userinput></screen>
- <para>A few programs do not know about <command>flex</command> yet and
- try to run its predecessor, <command>lex</command>. To support those
- programs, create a symbolic link named <filename>lex</filename> that
- runs <filename>flex</filename> in <command>lex</command> emulation
- mode:</para>
-
-<screen><userinput remap="install">ln -sv flex /usr/bin/lex</userinput></screen>
-
</sect2>
- <sect2 id="contents-flex" role="content">
- <title>Contents of Flex</title>
-
- <segmentedlist>
- <segtitle>Installed programs</segtitle>
- <segtitle>Installed libraries</segtitle>
- <segtitle>Installed directory</segtitle>
-
- <seglistitem>
- <seg>flex, flex++ (link to flex), and lex (link to flex)</seg>
- <seg>libfl.so</seg>
- <seg>/usr/share/doc/flex-&flex-version;</seg>
- </seglistitem>
- </segmentedlist>
-
- <variablelist>
- <bridgehead renderas="sect3">Short Descriptions</bridgehead>
- <?dbfo list-presentation="list"?>
- <?dbhtml list-presentation="table"?>
-
- <varlistentry id="flex">
- <term><command>flex</command></term>
- <listitem>
- <para>A tool for generating programs that recognize patterns in text;
- it allows for the versatility to specify the rules for pattern-finding,
- eradicating the need to develop a specialized program</para>
- <indexterm zone="ch-system-flex flex">
- <primary sortas="b-flex">flex</primary>
- </indexterm>
- </listitem>
- </varlistentry>
-
- <varlistentry id="flexpp">
- <term><command>flex++</command></term>
- <listitem>
- <para>An extension of flex, is used for generating C++ code
- and classes. It is a symbolic link to <command>flex</command></para>
- <indexterm zone="ch-system-flex flexpp">
- <primary sortas="b-flex++">flex++</primary>
- </indexterm>
- </listitem>
- </varlistentry>
-
- <varlistentry id="lex">
- <term><command>lex</command></term>
- <listitem>
- <para>A symbolic link that runs <command>flex</command> in
- <command>lex</command> emulation mode</para>
- <indexterm zone="ch-system-flex lex">
- <primary sortas="b-lex">lex</primary>
- </indexterm>
- </listitem>
- </varlistentry>
-
- <varlistentry id="libfl">
- <term><filename class="libraryfile">libfl</filename></term>
- <listitem>
- <para>The <filename class="libraryfile">flex</filename> library</para>
- <indexterm zone="ch-system-flex libfl">
- <primary sortas="c-libfl">libfl</primary>
- </indexterm>
- </listitem>
- </varlistentry>
+ <sect2 role="content">
+ <title/>
- </variablelist>
+ <para>Details on this package are located in
+ <xref linkend="contents-flex" role="."/></para>
</sect2>