Update to systemd-243. BLFS portion coming whenever utility power is restored here.
[linux_from_scratch.git] / BOOK / chapter06 / bison.xml
blob00a4e78f77deb58837add0875aec21a6141a9b45
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4   <!ENTITY % general-entities SYSTEM "../general.ent">
5   %general-entities;
6 ]>
8 <sect1 id="ch-system-bison" role="wrap">
9   <?dbhtml filename="bison.html"?>
11   <sect1info condition="script">
12     <productname>bison</productname>
13     <productnumber>&bison-version;</productnumber>
14     <address>&bison-url;</address>
15   </sect1info>
17   <title>Bison-&bison-version;</title>
19   <indexterm zone="ch-system-bison">
20     <primary sortas="a-Bison">Bison</primary>
21   </indexterm>
23   <sect2 role="package">
24     <title/>
26     <para>The Bison package contains a parser generator.</para>
28     <segmentedlist>
29       <segtitle>&buildtime;</segtitle>
30       <segtitle>&diskspace;</segtitle>
32       <seglistitem>
33         <seg>&bison-ch6-sbu;</seg>
34         <seg>&bison-ch6-du;</seg>
35       </seglistitem>
36     </segmentedlist>
38   </sect2>
40   <sect2 role="installation">
41     <title>Installation of Bison</title>
43     <para>First, fix a build problem with the current version:</para>
45 <screen><userinput remap="pre">sed -i '9327 s/mv/cp/' Makefile.in</userinput></screen>
47     <para>Prepare Bison for compilation:</para>
49 <screen><userinput remap="configure">./configure --prefix=/usr --docdir=/usr/share/doc/bison-&bison-version;</userinput></screen>
51     <para>Compile the package, but work around a race condition in the 
52     current version:</para>
54 <screen><userinput remap="make">make -j1</userinput></screen>
56 <!--
57     <para>To test the results (about 2.2 SBU), issue:</para>
59 <screen><userinput remap="test">make check</userinput></screen>
60 -->
62     <para>There is a circular dependency between bison and flex with regard to
63     the checks.  If desired, after installing flex in the next section, the
64     bison package can be rebuilt and the bison checks can be run with 
65     <command>make check</command>.</para>
67     <para>Install the package:</para>
69 <screen><userinput remap="install">make install</userinput></screen>
71   </sect2>
73   <sect2 id="contents-bison" role="content">
74     <title>Contents of Bison</title>
76     <segmentedlist>
77       <segtitle>Installed programs</segtitle>
78       <segtitle>Installed library</segtitle>
79       <segtitle>Installed directory</segtitle>
81       <seglistitem>
82         <seg>bison and yacc</seg>
83         <seg>liby.a</seg>
84         <seg>/usr/share/bison</seg>
85       </seglistitem>
86     </segmentedlist>
88     <variablelist>
89       <bridgehead renderas="sect3">Short Descriptions</bridgehead>
90       <?dbfo list-presentation="list"?>
91       <?dbhtml list-presentation="table"?>
93       <varlistentry id="bison">
94         <term><command>bison</command></term>
95         <listitem>
96           <para>Generates, from a series of rules, a program for analyzing the
97           structure of text files; Bison is a replacement for Yacc (Yet Another
98           Compiler Compiler)</para>
99           <indexterm zone="ch-system-bison bison">
100             <primary sortas="b-bison">bison</primary>
101           </indexterm>
102         </listitem>
103       </varlistentry>
105       <varlistentry id="yacc">
106         <term><command>yacc</command></term>
107         <listitem>
108           <para>A wrapper for <command>bison</command>, meant for programs that
109           still call <command>yacc</command> instead of <command>bison</command>;
110           it calls <command>bison</command> with the <parameter>-y</parameter>
111           option</para>
112           <indexterm zone="ch-system-bison yacc">
113             <primary sortas="b-yacc">yacc</primary>
114           </indexterm>
115         </listitem>
116       </varlistentry>
118       <varlistentry id="liby">
119         <term><filename class="libraryfile">liby</filename></term>
120         <listitem>
121           <para>The Yacc library containing implementations of Yacc-compatible
122           <function>yyerror</function> and <function>main</function> functions;
123           this library is normally not very useful, but POSIX requires it</para>
124           <indexterm zone="ch-system-bison liby">
125             <primary sortas="c-liby">liby</primary>
126           </indexterm>
127         </listitem>
128       </varlistentry>
130     </variablelist>
132   </sect2>
134 </sect1>