Update to systemd-231
[linux_from_scratch.git] / BOOK / chapter06 / bison.xml
blob79f556d66b57afe6617ec5f5967ea48b07cc6f0e
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>
42 <!-- bison only installs a static library
43     <para>Inhibit static library installation:</para>
45 <screen><userinput remap="pre">sed -i '/lib_LIBRARIES =/d' Makefile.in</userinput></screen>    
46 -->
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:</para>
53 <screen><userinput remap="make">make</userinput></screen>
55 <!--
56     <para>To test the results (about 2.2 SBU), issue:</para>
58 <screen><userinput remap="test">make check</userinput></screen>
59 -->
61     <para>There is a circular dependency between bison and flex with regard to
62     the checks.  If desired, after installing flex in the next section, the
63     bison checks can be run with <command>make check</command>.</para>
65     <para>Install the package:</para>
67 <screen><userinput remap="install">make install</userinput></screen>
69   </sect2>
71   <sect2 id="contents-bison" role="content">
72     <title>Contents of Bison</title>
74     <segmentedlist>
75       <segtitle>Installed programs</segtitle>
76       <segtitle>Installed library</segtitle>
77       <segtitle>Installed directory</segtitle>
79       <seglistitem>
80         <seg>bison and yacc</seg>
81         <seg>liby.a</seg>
82         <seg>/usr/share/bison</seg>
83       </seglistitem>
84     </segmentedlist>
86     <variablelist>
87       <bridgehead renderas="sect3">Short Descriptions</bridgehead>
88       <?dbfo list-presentation="list"?>
89       <?dbhtml list-presentation="table"?>
91       <varlistentry id="bison">
92         <term><command>bison</command></term>
93         <listitem>
94           <para>Generates, from a series of rules, a program for analyzing the
95           structure of text files; Bison is a replacement for Yacc (Yet Another
96           Compiler Compiler)</para>
97           <indexterm zone="ch-system-bison bison">
98             <primary sortas="b-bison">bison</primary>
99           </indexterm>
100         </listitem>
101       </varlistentry>
103       <varlistentry id="yacc">
104         <term><command>yacc</command></term>
105         <listitem>
106           <para>A wrapper for <command>bison</command>, meant for programs that
107           still call <command>yacc</command> instead of <command>bison</command>;
108           it calls <command>bison</command> with the <parameter>-y</parameter>
109           option</para>
110           <indexterm zone="ch-system-bison yacc">
111             <primary sortas="b-yacc">yacc</primary>
112           </indexterm>
113         </listitem>
114       </varlistentry>
116       <varlistentry id="liby">
117         <term><filename class="libraryfile">liby</filename></term>
118         <listitem>
119           <para>The Yacc library containing implementations of Yacc-compatible
120           <function>yyerror</function> and <function>main</function> functions;
121           this library is normally not very useful, but POSIX requires it</para>
122           <indexterm zone="ch-system-bison liby">
123             <primary sortas="c-liby">liby</primary>
124           </indexterm>
125         </listitem>
126       </varlistentry>
128     </variablelist>
130   </sect2>
132 </sect1>