commit: dc40865484fabbef7c0a8ec15453419600d3d051
parent bb4fd87b0051ce3923fcedfc8d1131295a636c83
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Fri, 21 Mar 2025 15:06:01 +0100
init.sh: compile heirloom-devtools m4 before utils-std
Diffstat:
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/init.sh b/init.sh
@@ -3,6 +3,8 @@
 # SPDX-FileCopyrightText: 2017 Haelwenn (lanodan) Monnier <contact+utils@hacktivis.me>
 # SPDX-License-Identifier: MPL-2.0
 
+set -ex -o pipefail
+
 die() {
 	echo "die: $*"
 	rescueshell
@@ -86,9 +88,15 @@ build_pigz() {
 	pdpmake clean
 }
 
+build_hierloom_devtools_m4() {
+	cd /src/heirloom-devtools-*/m4/
+	$YACC -o m4y.c m4y.y
+	$CC $CFLAGS -D_GNU_SOURCE m4.c m4ext.c m4macs.c m4y.c version.c -o /bin/m4
+}
+
 build_hierloom_devtools() {
 	cd /src/heirloom-devtools-*/
-	for cmd in lex m4
+	for cmd in lex
 	do
 		pdpmake "$cmd"/Makefile
 		pdpmake -C "$cmd" RANLIB=true
@@ -117,7 +125,7 @@ build_utils_std() {
 	export PATH="$PATH:$PWD/cmd/"
 
 	pdpmake -f bootstrap.mk || die
-	MAKE=pdpmake oksh ./configure PREFIX=/usr M4=true || die
+	MAKE=pdpmake oksh ./configure PREFIX=/usr || die
 	pdpmake || die
 	pdpmake selfcheck || die
 	pdpmake install || die
@@ -144,14 +152,13 @@ build_oyacc() {
 		-o /bin/yacc *.c
 }
 
-set -ex -o pipefail
-
 export CC=tcc
 export CFLAGS="-Os -Wall -Wextra"
 
 build_oyacc
 
 export SHELL="/bin/oksh"
+export YACC="yacc"
 
 build_pdpmake || die
 
@@ -160,6 +167,8 @@ build_sbase || die
 # stubs for utilities currently missing from utils-std
 build_stubs || die
 
+build_hierloom_devtools_m4 || die
+
 build_utils_std || die
 
 export MAKEFLAGS="-j$(nproc)"