[Aldor-l] Ignoring errors where they shouldn't

Gabriel Dos Reis gdr at cs.tamu.edu
Sun Jan 20 18:58:16 EST 2008


On Sun, 20 Jan 2008, David Casperson wrote:

| > # zacc: Parser generator with parameterized rules. Based on Yacc.
| > $(ALDORTOOLS)/zacc$(EXE): zaccgram.y zaccscan.l zacc.c zacc.h zcport.h
| > cenum.h cenum.c
| > 	@ (cd $(ALDORTOOLS) && \
| > 		echo "$(LEX) $(SRC)/zaccscan.l" && \
| > 		      $(LEX) $(SRC)/zaccscan.l && \
| > 		echo "yacc -d $(SRC)/zaccgram.y" && \
| > 		      yacc -d $(SRC)/zaccgram.y && \
| > 		echo "mv y.tab.h zaccgram.h" && \
| > 		      mv y.tab.h zaccgram.h && \
| > 		echo "$(CC) $(CFLAGS) -I. -I$(SRC) \
| > 		   $(SRC)/zacc.c lex.yy.c y.tab.c $(SRC)/cenum.c -o zacc$(EXE)" && \
| > 		      $(CC) $(CFLAGS) -I. -I$(SRC) \
| > 		   $(SRC)/zacc.c lex.yy.c y.tab.c $(SRC)/cenum.c -o zacc$(EXE) && \
| > 		rm lex.yy.c y.tab.c zaccgram.h \
| > 	)
| 
| This also seems to be common: joining multiple commands by ;
| where && would seem preferable.  Is there some kind of
| cross-platform compatibility issue here?  That is, are there Make
| environments where we cannot rely on && being understood?

It is actually the shell executing the command; I don't know of any that
wouldn't work.

-- Gaby



More information about the Aldor-l mailing list