From 54a39c2e33c8dc99b5b18099a76c681e39929553 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= Date: Fri, 15 Jan 2021 01:23:03 +0000 Subject: [PATCH] Build m4-1.4. --- rootfs.sh | 3 +++ sysa/after.kaem.run | 7 +++++ sysa/m4-1.4.kaem | 14 ++++++++++ sysa/m4-1.4.mk | 29 +++++++++++++++++++++ sysa/patches/m4-1.4/m4-signal-include.patch | 12 +++++++++ 5 files changed, 65 insertions(+) create mode 100644 sysa/m4-1.4.kaem create mode 100644 sysa/m4-1.4.mk create mode 100644 sysa/patches/m4-1.4/m4-signal-include.patch diff --git a/rootfs.sh b/rootfs.sh index 54aa75e..c60e6da 100755 --- a/rootfs.sh +++ b/rootfs.sh @@ -133,6 +133,9 @@ get_file https://ftp.gnu.org/gnu/make/make-3.80.tar.gz # bzip2 1.0.8 get_file ftp://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz +# m4 1.4 +get_file https://ftp.gnu.org/gnu/m4/m4-1.4.tar.gz + # General cleanup find tmp -name .git -exec rm -rf \; diff --git a/sysa/after.kaem.run b/sysa/after.kaem.run index 5a95900..ade0191 100755 --- a/sysa/after.kaem.run +++ b/sysa/after.kaem.run @@ -96,3 +96,10 @@ cd .. cd bzip2-1.0.8 kaem --file ../bzip2-1.0.8.kaem cd .. + +# Part 15: m4 +/after/bin/gunzip m4-1.4.tar.gz +/after/bin/tar xf m4-1.4.tar +cd m4-1.4 +kaem --file ../m4-1.4.kaem +cd .. diff --git a/sysa/m4-1.4.kaem b/sysa/m4-1.4.kaem new file mode 100644 index 0000000..c80c43d --- /dev/null +++ b/sysa/m4-1.4.kaem @@ -0,0 +1,14 @@ +#!/bin/sh + +set -ex + +/after/bin/patch -Np0 -i ../patches/m4-1.4/m4-signal-include.patch +cp ../m4-1.4.mk Makefile +/after/bin/make + +# Install +/after/bin/cp m4 /after/bin/m4 +/after/bin/chmod 755 /after/bin/m4 + +# Test +/after/bin/m4 --version diff --git a/sysa/m4-1.4.mk b/sysa/m4-1.4.mk new file mode 100644 index 0000000..3f432ba --- /dev/null +++ b/sysa/m4-1.4.mk @@ -0,0 +1,29 @@ +PRODUCT = m4 +VERSION = 1.4 + +CC = tcc +LD = tcc +AR = tcc -ar + +CFLAGS = -I lib \ + -DPRODUCT=\"$(PRODUCT)\" \ + -DVERSION=\"$(VERSION)\" + -DHAVE_SIGCONTEXT=0 + +LDFLAGS = -L . -lm4 + +.PHONY: all + +LIB_SRC = regex getopt getopt1 error obstack xmalloc xstrdup +LIB_OBJECTS = $(addprefix lib/, $(addsuffix .o, $(LIB_SRC))) + +M4_SRC = m4 builtin debug eval format freeze input macro output path symtab +M4_OBJ = $(addprefix src/, $(addsuffix .o, $(M4_SRC))) + +all: m4 + +m4: libm4.a $(M4_OBJ) + $(CC) $(CFLAGS) $^ $(LDFLAGS) -o $@ + +libm4.a: $(LIB_OBJECTS) + $(AR) cr $@ $(LIB_OBJECTS) diff --git a/sysa/patches/m4-1.4/m4-signal-include.patch b/sysa/patches/m4-1.4/m4-signal-include.patch new file mode 100644 index 0000000..d37767a --- /dev/null +++ b/sysa/patches/m4-1.4/m4-signal-include.patch @@ -0,0 +1,12 @@ +diff -r -U3 m4-1.4/src/m4.c m4-1.4-patched/src/m4.c +--- src/m4.c 1994-11-02 03:14:28.000000000 +0000 ++++ src/m4.c 2021-01-15 00:19:21.947654461 +0000 +@@ -19,7 +19,7 @@ + #include "m4.h" + + #include +-#include ++#include + + static void usage _((int)); +