Date: Tue, 04 Jun 1996 14:02:54 +1000 From: Stephen Hocking <sysseh@devetir.qld.gov.au> To: bugs@freebsd.org Subject: Shell commands beginning with '@' don't work in make sometimes Message-ID: <199606040402.EAA23538@netfl15a.devetir.qld.gov.au>
next in thread | raw e-mail | index | archive | help
>Submitter-Id: current-users >Originator: Bourne-again Superuser >Organization: DTIR >Confidential: no >Synopsis: Shell commands within make that start with '@' don't work >Severity: serious >Priority: medium >Category: bin >Release: FreeBSD 2.2-CURRENT i386 >Class: sw-bug >Environment: FreeBSD-2.2 current >Description: When a makefile has a target with embedded shell comands that start with @, it will not execute them properly, actually seeking a command that begins with '@' (say @for) rather than just not echoing the command in question. >How-To-Repeat: A makefile fragment of the form # a very simple makefile... pmake:: @for flag in ${MAKEFLAGS} ''; do \ case "$$flag" in *=*) ;; *[i]*) set +e;; esac; done; \ @for i in develhdrs/local; do if [ -d $(DESTDIR)$$i ]; then \ set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \ done @echo 'make started.' @for i in *.c; do \ echo $i; \ done cc -I. -c *.c cd lst.lib; cc -I.. -c *.c cc *.o lst.lib/*.o -o pmake @echo 'make completed.' will cause an error like the following - @for: not found *** Error code 2 >Fix: Unknown at this stage - looks like a perverse make bug -- The views expressed above are not those of the Worker's Compensation Board of Queensland, Australia.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606040402.EAA23538>