Subject: bug#32423: 27.0.50; Compilation fails when sh points to zsh

From: Tino Calancha <[email-masked]>
Date: Sun, 12 Aug 2018 17:30:39 +0900

Eli Zaretskii <[email-masked]> writes:

> compile-clean:
>         @cd $(lisp) && \
>         elcs=`echo "${SUBDIRS_REL} " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.elc |g'`; \
>         for el in `echo $$elcs | sed -e 's/\.elc/\.el/g'`; do \
>           if test -f "$$el" || test ! -f "$${el}c"; then :; else \
>             echo rm "$${el}c"; \
>             rm "$${el}c"; \
>           fi \  <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>         done
>
> there should be a semi-colon after "fi", I believe.  If you make that
> change, does the problem go away for you?
Excellent catch! It fixes the problem:
(I didn't know zsh is such picky shell)

diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index ccc5323b52..c447598298 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -341,7 +341,7 @@ compile-clean:
 	  if test -f "$$el" || test ! -f "$${el}c"; then :; else \
 	    echo rm "$${el}c"; \
 	    rm "$${el}c"; \
-	  fi \
+	  fi; \
 	done
 
 .PHONY: gen-lisp leim semantic