From 596af33507ab4b55e880f4484e9ce310ec4c20ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= Date: Thu, 28 Jan 2021 21:55:00 +0000 Subject: [PATCH] Rebuild bash parser. --- README.md | 9 +++++---- sysa/bash-2.05b/bash-2.05b.kaem | 1 + sysa/bash-2.05b/mk/main.mk | 3 +++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c2209c4..2fa29dd 100644 --- a/README.md +++ b/README.md @@ -245,16 +245,17 @@ be useful later for autotools. of standard UNIX utilities derived from code by Caldera and Sun. Differently from the analogous utilities from the GNU project, they can be compiled with a simple `Makefile`. -#### Part 21: bash 2.05b +#### Part 18: bash 2.05b GNU `bash` is the most well known shell and the most complex piece of software so far. However, it comes with a number of great benefits over kaem, including proper POSIX sh support, globbing, etc. -NOTE: Currently, there is a bison pre-generated file here, which we are working -to remove. +Bash ships with a bison pre-generated file here which we delete. Unfortunately, +we have not bootstrapped bison but fortunately for us, heirloom yacc is able to +cope here. -#### Part 22: m4 1.4 +#### Part 19: m4 1.4 `m4` is the first piece of software we need in the autotools suite. It allows macros to be defined and files to be generated from those macros. diff --git a/sysa/bash-2.05b/bash-2.05b.kaem b/sysa/bash-2.05b/bash-2.05b.kaem index f29af05..65f8f1f 100755 --- a/sysa/bash-2.05b/bash-2.05b.kaem +++ b/sysa/bash-2.05b/bash-2.05b.kaem @@ -17,6 +17,7 @@ cp ../../mk/common.mk common.mk touch config.h touch include/version.h touch include/pipesize.h +rm y.tab.c y.tab.h # Patch patch -Np0 -i ../../patches/mes-libc.patch diff --git a/sysa/bash-2.05b/mk/main.mk b/sysa/bash-2.05b/mk/main.mk index bc45182..365c5d8 100644 --- a/sysa/bash-2.05b/mk/main.mk +++ b/sysa/bash-2.05b/mk/main.mk @@ -78,6 +78,9 @@ mksignames: $(MKSIGNAMES_OBJS) signames.h: mksignames ./mksignames $@ +y.tab.c: parse.y + yacc -d $^ + trap.c: signames.h bash: libsh.a libglob.a libtilde.a $(OBJS)