Makefile revision 1.69
11.69Slukem#	$NetBSD: Makefile,v 1.69 2003/10/19 00:35:26 lukem Exp $
21.20Schristos#	@(#)Makefile	8.4 (Berkeley) 5/5/95
31.1Scgd
41.52Sbjh21.include <bsd.own.mk>
51.52Sbjh21
61.47SchristosYHEADER=1
71.1ScgdPROG=	sh
81.24SchristosSHSRCS=	alias.c cd.c echo.c error.c eval.c exec.c expand.c \
91.10Sjtc	histedit.c input.c jobs.c mail.c main.c memalloc.c miscbltin.c \
101.50Schristos	mystring.c options.c parser.c redir.c show.c trap.c output.c var.c \
111.61Schristos	test.c printf.c kill.c
121.69SlukemGENSRCS=arith.c arith_lex.c builtins.c init.c nodes.c syntax.c
131.69SlukemGENHDRS=arith.h builtins.h nodes.h syntax.h token.h
141.29SmycroftSRCS=	${SHSRCS} ${GENSRCS}
151.24Schristos
161.69SlukemDPSRCS+=${GENHDRS}
171.69Slukem
181.13SjtcLDADD+=	-ll -ledit -ltermcap
191.21SmycroftDPADD+=	${LIBL} ${LIBEDIT} ${LIBTERMCAP}
201.24Schristos
211.64SlukemLFLAGS=	-8	# 8-bit lex scanner for arithmetic
221.41StvYFLAGS=	-d
231.64Slukem
241.64Slukem.ifdef CRUNCHEDPROG
251.64SlukemLFLAGS+=-L
261.64SlukemYFLAGS+=-l
271.64Slukem.endif
281.24Schristos
291.56SrossCPPFLAGS+=-DSHELL -I. -I${.CURDIR}
301.62Schristos#XXX: For testing only.
311.63Sdsl#CPPFLAGS+=-DDEBUG=1
321.62Schristos#CFLAGS+=-funsigned-char
331.62Schristos#TARGET_CHARFLAG?= -DTARGET_CHAR="unsigned char" -funsigned-char
341.54Slukem
351.54Slukem.ifdef SMALLPROG
361.54SlukemCPPFLAGS+=-DSMALL
371.54Slukem.endif
381.24Schristos
391.61Schristos.PATH:	${.CURDIR}/bltin ${NETBSDSRCDIR}/bin/test \
401.61Schristos	${NETBSDSRCDIR}/usr.bin/printf \
411.61Schristos	${NETBSDSRCDIR}/bin/kill
421.1Scgd
431.29SmycroftCLEANFILES+= mkinit mknodes mksyntax
441.69SlukemCLEANFILES+= ${GENSRCS} ${GENHDRS} y.tab.h
451.67SjmmvCLEANFILES+= trace
461.24Schristos
471.24Schristostoken.h: mktokens
481.69Slukem	${_MKMSG} " create  ${.TARGET}"
491.69Slukem	${_MKCMD}\
501.65Schristos	${HOST_SH} ${.ALLSRC}
511.1Scgd
521.66Sdslbuiltins.h: builtins.c
531.69Slukem	${_MKMSG} " create  ${.TARGET}"
541.69Slukem
551.66Sdsl
561.66Sdslbuiltins.c: mkbuiltins shell.h builtins.def
571.69Slukem	${_MKMSG} " create  ${.TARGET}"
581.69Slukem	${_MKCMD}\
591.65Schristos	${HOST_SH} ${.ALLSRC} ${.OBJDIR}
601.69Slukem	${_MKCMD}\
611.66Sdsl	[ -f builtins.h ]
621.1Scgd
631.24Schristosinit.c: mkinit ${SHSRCS}
641.69Slukem	${_MKMSG} " create  ${.TARGET}"
651.69Slukem	${_MKCMD}\
661.39Smrg	./${.ALLSRC}
671.10Sjtc
681.66Sdslnodes.h: nodes.c
691.66Sdsl
701.66Sdslnodes.c: mknodes nodetypes nodes.c.pat
711.69Slukem	${_MKMSG} " create  ${.TARGET}"
721.69Slukem	${_MKCMD}\
731.40Sveego	./${.ALLSRC}
741.69Slukem	${_MKCMD}\
751.66Sdsl	[ -f nodes.h ]
761.66Sdsl
771.66Sdslsyntax.h: syntax.c
781.1Scgd
791.66Sdslsyntax.c: mksyntax
801.69Slukem	${_MKMSG} " create  ${.TARGET}"
811.69Slukem	${_MKCMD}\
821.40Sveego	./${.ALLSRC}
831.69Slukem	${_MKCMD}\
841.66Sdsl	[ -f syntax.h ]
851.44Swrstuden
861.68Slukem.if ${USETOOLS} == "yes"
871.68SlukemCOMPATOBJDIR!=	cd ${NETBSDSRCDIR}/tools/compat && ${PRINTOBJDIR}
881.68SlukemNBCOMPATLIB=	-L${COMPATOBJDIR} -lnbcompat
891.68Slukem.endif
901.68Slukem
911.44Swrstudenmkinit: mkinit.c
921.69Slukem	${_MKMSG} " create  ${.TARGET}"
931.69Slukem	${_MKCMD}\
941.68Slukem	${HOST_LINK.c} -o mkinit ${.IMPSRC} ${NBCOMPATLIB}
951.44Swrstuden
961.44Swrstudenmknodes: mknodes.c
971.69Slukem	${_MKMSG} " create  ${.TARGET}"
981.69Slukem	${_MKCMD}\
991.68Slukem	${HOST_LINK.c} -o mknodes ${.IMPSRC} ${NBCOMPATLIB}
1001.44Swrstuden
1011.44Swrstuden.if	(${MACHINE_ARCH} == "powerpc") || \
1021.52Sbjh21	(${MACHINE_CPU} == "arm")
1031.62SchristosTARGET_CHARFLAG?= -DTARGET_CHAR="unsigned char"
1041.44Swrstuden.else
1051.62SchristosTARGET_CHARFLAG?= -DTARGET_CHAR="signed char"
1061.44Swrstuden.endif
1071.44Swrstuden
1081.44Swrstudenmksyntax: mksyntax.c
1091.69Slukem	${_MKMSG} " create  ${.TARGET}"
1101.69Slukem	${_MKCMD}\
1111.68Slukem	${HOST_LINK.c} ${TARGET_CHARFLAG} -o mksyntax ${.IMPSRC} ${NBCOMPATLIB}
1121.10Sjtc
1131.43Scgd.include <bsd.prog.mk>
114