Skip site navigation (1)Skip section navigation (2)
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>