GNU bug report logs - #32423
27.0.50; Compilation fails when sh points to zsh

Previous Next

Package: emacs;

Reported by: Tino Calancha <tino.calancha <at> gmail.com>

Date: Sat, 11 Aug 2018 17:29:02 UTC

Severity: normal

Found in version 27.0.50

Done: Tino Calancha <tino.calancha <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 32423 in the body.
You can then email your comments to 32423 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#32423; Package emacs. (Sat, 11 Aug 2018 17:29:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Tino Calancha <tino.calancha <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 11 Aug 2018 17:29:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 27.0.50; Compilation fails when sh points to zsh
Date: Sun, 12 Aug 2018 02:28:23 +0900
I started to suffer this recently (~ since this month).
When
bin/sh points to /bin/zsh

I get an zsh parse error as follows:

make[2]: Entering directory '/home/calancha/soft/emacs-master/admin/grammars'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/calancha/soft/emacs-master/admin/grammars'
zsh:8: parse error near `done'
make[2]: Entering directory '/home/calancha/soft/emacs-master/leim'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/calancha/soft/emacs-master/leim'
Makefile:338: recipe for target 'compile-clean' failed
make[1]: *** [compile-clean] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/calancha/soft/emacs-master/lisp'
Makefile:405: recipe for target 'lisp' failed
make: *** [lisp] Error 2




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#32423; Package emacs. (Sat, 11 Aug 2018 17:44:02 GMT) Full text and rfc822 format available.

Message #8 received at 32423 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Tino Calancha <tino.calancha <at> gmail.com>
Cc: 32423 <at> debbugs.gnu.org
Subject: Re: bug#32423: 27.0.50; Compilation fails when sh points to zsh
Date: Sat, 11 Aug 2018 20:42:54 +0300
> From: Tino Calancha <tino.calancha <at> gmail.com>
> Date: Sun, 12 Aug 2018 02:28:23 +0900
> 
> 
> I started to suffer this recently (~ since this month).
> When
> bin/sh points to /bin/zsh
> 
> I get an zsh parse error as follows:
> 
> make[2]: Entering directory '/home/calancha/soft/emacs-master/admin/grammars'
> make[2]: Nothing to be done for 'all'.
> make[2]: Leaving directory '/home/calancha/soft/emacs-master/admin/grammars'
> zsh:8: parse error near `done'
> make[2]: Entering directory '/home/calancha/soft/emacs-master/leim'
> make[2]: Nothing to be done for 'all'.
> make[2]: Leaving directory '/home/calancha/soft/emacs-master/leim'
> Makefile:338: recipe for target 'compile-clean' failed

In the marked line:

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?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#32423; Package emacs. (Sun, 12 Aug 2018 08:31:02 GMT) Full text and rfc822 format available.

Message #11 received at 32423 <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 32423 <at> debbugs.gnu.org
Subject: Re: bug#32423: 27.0.50; Compilation fails when sh points to zsh
Date: Sun, 12 Aug 2018 17:30:39 +0900
Eli Zaretskii <eliz <at> gnu.org> 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




Reply sent to Tino Calancha <tino.calancha <at> gmail.com>:
You have taken responsibility. (Mon, 13 Aug 2018 10:00:02 GMT) Full text and rfc822 format available.

Notification sent to Tino Calancha <tino.calancha <at> gmail.com>:
bug acknowledged by developer. (Mon, 13 Aug 2018 10:00:02 GMT) Full text and rfc822 format available.

Message #16 received at 32423-done <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: 32423-done <at> debbugs.gnu.org
Subject: Re: bug#32423: 27.0.50; Compilation fails when sh points to zsh
Date: Mon, 13 Aug 2018 18:58:52 +0900
Tino Calancha <tino.calancha <at> gmail.com> writes:

> Eli Zaretskii <eliz <at> gnu.org> 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:
Fixed in master branch as commit 'Fix typo caught by zsh'
(21c2fd724dcae8a2342f256a0dd8c3c78fb5e931)




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 10 Sep 2018 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 6 years and 335 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.