xref: /minix3/bin/sh/Makefile (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1#	$NetBSD: Makefile,v 1.101 2015/05/10 20:30:54 joerg Exp $
2#	@(#)Makefile	8.4 (Berkeley) 5/5/95
3
4.include <bsd.own.mk>
5
6YHEADER=1
7PROG=	sh
8SHSRCS=	alias.c cd.c echo.c error.c eval.c exec.c expand.c \
9	histedit.c input.c jobs.c mail.c main.c memalloc.c miscbltin.c \
10	mystring.c options.c parser.c redir.c show.c trap.c output.c var.c \
11	test.c kill.c syntax.c
12GENSRCS=arith.c arith_lex.c builtins.c init.c nodes.c
13GENHDRS=arith.h builtins.h nodes.h token.h
14SRCS=	${SHSRCS} ${GENSRCS}
15
16DPSRCS+=${GENHDRS}
17
18LDADD+=	-ll -ledit -lterminfo
19DPADD+=	${LIBL} ${LIBEDIT} ${LIBTERMINFO}
20
21LFLAGS=	-8	# 8-bit lex scanner for arithmetic
22
23# Environment for scripts executed during build.
24SCRIPT_ENV= \
25	AWK=${TOOL_AWK:Q} \
26	SED=${TOOL_SED:Q}
27
28# The .depend file can get references to these temporary files
29.OPTIONAL: lex.yy.c y.tab.c
30
31.ifdef CRUNCHEDPROG
32LFLAGS+=-L
33YFLAGS+=-l
34.endif
35
36CPPFLAGS+=-DSHELL -I. -I${.CURDIR}
37#XXX: For testing only.
38#CPPFLAGS+=-DDEBUG=2
39#COPTS+=-g
40#CFLAGS+=-funsigned-char
41#TARGET_CHARFLAG?= -DTARGET_CHAR="unsigned char" -funsigned-char
42
43.ifdef SMALLPROG
44CPPFLAGS+=-DSMALL
45.endif
46.ifdef TINYPROG
47CPPFLAGS+=-DTINY
48.else
49SRCS+=printf.c
50.endif
51
52.PATH:	${.CURDIR}/bltin ${NETBSDSRCDIR}/bin/test \
53	${NETBSDSRCDIR}/usr.bin/printf \
54	${NETBSDSRCDIR}/bin/kill
55
56CLEANFILES+= ${GENSRCS} ${GENHDRS} y.tab.h
57CLEANFILES+= trace
58
59token.h: mktokens
60	${_MKTARGET_CREATE}
61	${SCRIPT_ENV} ${HOST_SH} ${.ALLSRC}
62
63.ORDER: builtins.h builtins.c
64builtins.h builtins.c: mkbuiltins shell.h builtins.def
65	${_MKTARGET_CREATE}
66	${SCRIPT_ENV} ${HOST_SH} ${.ALLSRC} ${.OBJDIR}
67	[ -f builtins.h ]
68
69init.c: mkinit.sh ${SHSRCS}
70	${_MKTARGET_CREATE}
71	${SCRIPT_ENV} ${HOST_SH} ${.ALLSRC}
72
73.ORDER: nodes.h nodes.c
74nodes.c nodes.h: mknodes.sh nodetypes nodes.c.pat
75	${_MKTARGET_CREATE}
76	${SCRIPT_ENV} ${HOST_SH} ${.ALLSRC} ${.OBJDIR}
77	[ -f nodes.h ]
78
79.if ${USETOOLS} == "yes"
80NBCOMPATLIB=   -L${TOOLDIR}/lib -lnbcompat
81.endif
82
83.if !defined(__MINIX)
84SUBDIR+=USD.doc
85.endif # !defined(__MINIX)
86
87COPTS.printf.c = -Wno-format-nonliteral
88COPTS.jobs.c = -Wno-format-nonliteral
89
90.include <bsd.prog.mk>
91.include <bsd.subdir.mk>
92