Skip to content

Commit 7048b4a

Browse files
committed
Replace byacc with oyacc in parts.rst
1 parent 622dd36 commit 7048b4a

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

parts.rst

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -322,15 +322,23 @@ we skip them.
322322

323323
The ``cp`` in this stage replaces the ``mescc-tools-extra`` ``cp``.
324324

325-
byacc 20240109
326-
==============
325+
oyacc 6.6
326+
=========
327+
328+
``oyacc`` is a portable derivative of OpenBSD's Yacc parser generator. Unlike
329+
``bison``, it can be compiled with a simple ``Makefile``. Some simple patches
330+
are required for mes libc.
331+
332+
We need a Yacc implementation for bash.
327333

328-
The Berkeley Yacc parser generator, a public-domain implementation of the
329-
``yacc`` utility. Differently from the analogous ``bison`` utility from the
330-
GNU project, it can be compiled with a simple ``Makefile``.
334+
Side note; the following other implementations have been tested and not adopted:
331335

332-
Some code is backported from an earlier version of byacc, 20140101, because
333-
of an incompatibility of newer versions with meslibc.
336+
- GNU Bison: requires a more complicated build we cannot yet support without
337+
lots of work
338+
- Heirloom Devtools: licensed under a GPL-incompatible license, which makes the
339+
resultant binary with mes libc (GPL licensed) non-distributable
340+
- Berkeley Yacc: has a few C files generated using an Awk script; Awk is not yet
341+
available to us
334342

335343
bash 2.05b
336344
==========
@@ -341,7 +349,7 @@ kaem, including proper POSIX sh support, globbing, etc.
341349

342350
Bash ships with a bison pre-generated file here which we delete.
343351
Unfortunately, we have not bootstrapped bison but fortunately for us,
344-
Berkeley Yacc is able to cope here.
352+
OpenBSD's Yacc is able to cope here.
345353

346354
setup_repo
347355
==========
@@ -465,7 +473,7 @@ Differently from the analogous utilities from the GNU project, they can
465473
be compiled with a simple ``Makefile``.
466474

467475
Because issues with the Heirloom version of ``yacc`` compiled against musl,
468-
we continue using Berkeley Yacc together with Heirloom ``lex`` for the next
476+
we continue using OpenBSD's ``yacc`` together with Heirloom ``lex`` for the next
469477
few steps.
470478

471479
flex 2.5.11

0 commit comments

Comments
 (0)