Makefile revision 28729
1262569Simp# @(#)Makefile 8.4 (Berkeley) 5/5/95 2262569Simp# $Id: Makefile,v 1.21 1997/05/21 03:23:23 steve Exp $ 3262569Simp 4262569SimpPROG= sh 5262569SimpSHSRCS= alias.c cd.c echo.c error.c eval.c exec.c expand.c \ 6262569Simp histedit.c input.c jobs.c mail.c main.c memalloc.c miscbltin.c \ 7262569Simp mystring.c options.c output.c parser.c printf.c redir.c show.c \ 8262569Simp trap.c var.c 9262569SimpGENSRCS= arith.c arith_lex.c builtins.c init.c nodes.c syntax.c 10262569SimpSRCS= ${SHSRCS} ${GENSRCS} 11262569Simp 12262569SimpDPADD+= ${LIBL} ${LIBEDIT} ${LIBTERMCAP} 13262569SimpLDADD+= -ll -ledit -ltermcap 14262569Simp 15262569SimpLFLAGS= -8 # 8-bit lex scanner for arithmetic 16262569SimpCFLAGS+=-DSHELL -I. -I${.CURDIR} 17262569Simp# for debug: 18262569Simp# CFLAGS+= -g -DDEBUG=2 19262569Simp 20262569Simp.PATH: ${.CURDIR}/bltin ${.CURDIR}/../../usr.bin/printf 21262569Simp 22262569SimpCLEANFILES+= builtins.h mkinit mkinit.o mknodes mknodes.o \ 23262569Simp mksyntax mksyntax.o \ 24262569Simp nodes.h syntax.h token.h y.tab.h 25262569SimpCLEANFILES+= ${GENSRCS} 26270864Simp 27270864Simpbeforedepend: builtins.h nodes.h syntax.h token.h 28262569Simp 29270864Simpbuiltins.c builtins.h: mkbuiltins builtins.def 30262569Simp cd ${.CURDIR}; sh mkbuiltins ${.OBJDIR} 31270864Simp 32262569Simpinit.c: mkinit alias.c eval.c exec.c input.c jobs.c options.c parser.c \ 33262569Simp redir.c trap.c var.c 34262569Simp ./mkinit ${.ALLSRC:S/^mkinit$//} 35262569Simp 36262569Simp# XXX this is just to stop the default .c rule being used, so that the 37270864Simp# intermediate object has a fixed name. 38270864Simp# XXX we have a default .c rule, but no default .o rule. 39270864Simp.o: 40270864Simp ${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} 41270864Simpmkinit: mkinit.o 42270864Simpmkinit.o: mkinit.c # XXX and many headers 43270864Simpmknodes: mknodes.o 44270864Simpmknodes.o: mknodes.c # XXX and many headers 45270864Simpmksyntax: mksyntax.o 46270864Simpmksyntax.o: mksyntax.c # XXX and many headers 47262569Simp 48262569Simpnodes.c nodes.h: mknodes nodetypes nodes.c.pat 49262569Simp ./mknodes ${.CURDIR}/nodetypes ${.CURDIR}/nodes.c.pat 50262569Simp 51262569Simpsyntax.c syntax.h: mksyntax 52262569Simp ./mksyntax 53262569Simp 54262569Simptoken.h: mktokens 55262569Simp sh ${.CURDIR}/mktokens 56262569Simp 57262569Simpy.tab.h: arith.c 58262569Simp 59262569Simp# Rules for object files that rely on generated headers. 60262569Simparith_lex.o: y.tab.h 61262569Simpcd.o: nodes.h 62270864Simpeval.o: builtins.h nodes.h syntax.h 63262569Simpexec.o: builtins.h nodes.h syntax.h 64262569Simpexpand.o: nodes.h syntax.h 65262569Simpinput.o: syntax.h 66262569Simpjobs.o: nodes.h syntax.h 67262569Simpmain.o: nodes.h 68262569Simpmystring.o: syntax.h 69262569Simpoptions.o: nodes.h 70270864Simpoutput.o: syntax.h 71262569Simpparser.o: nodes.h syntax.h token.h 72262569Simpredir.o: nodes.h 73262569Simpshow.o: nodes.h 74262569Simptrap.o: nodes.h syntax.h 75262569Simpvar.o: nodes.h syntax.h 76262569Simp 77270864Simp.include <bsd.prog.mk> 78262569Simp