From f6dd056ffb64ba12bf3c5f48b7beec81bace053c Mon Sep 17 00:00:00 2001 From: Hojun-Cho Date: Mon, 17 Aug 2026 20:04:07 +0900 Subject: [PATCH] build: 9c and 9l can report again Both filter the compiler's output through $egrep, and plan9port assigns that variable nowhere -- six scripts read it, one unrelated developer script sets it. The pipeline dies on the empty command and takes the whole diagnostic with it, so -Wall -Wextra was decorative and a build that failed to compile printed nothing but an exit status. That is how the tests' own dialect bug hid until it was hunted with a patched 9c. Both scripts source $PLAN9/config, which the distribution does not ship, so one line in it is the fix the scripts themselves ask for; it needs no patching of a packaged file and covers 9c and 9l together. The daemon it builds is byte-identical, and with the diagnostics visible the whole tree and every test object compile without a warning. Co-Authored-By: Claude Opus 5 (1M context) --- Dockerfile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Dockerfile b/Dockerfile index cec95d4..8c80523 100644 --- a/Dockerfile +++ b/Dockerfile @@ -42,4 +42,9 @@ RUN dbus-uuidgen --ensure=/etc/machine-id ENV PLAN9=/usr/lib/plan9 ENV PATH=$PATH:/usr/lib/plan9/bin +# 9c and 9l filter their own output through $egrep, which plan9port never +# assigns, so the pipeline dies and takes every warning and error with it. +# Both source $PLAN9/config, which the distribution does not ship. +RUN echo 'egrep="grep -E"' > $PLAN9/config + WORKDIR /src