BSD 4_4_Lite2 release
[unix-history] / usr / src / bin / sh / Makefile
index 1f52a7e..efa2fe7 100644 (file)
@@ -1,33 +1,42 @@
-#      Makefile        4.5     83/07/01
-#
-CFLAGS = -O -w
-
-all:   sh
-
-cp:    sh
-       cp sh /bin/sh
-       rm sh *.o
-
-cmp:   sh
-       cmp sh /bin/sh
-       rm sh *.o
-
-sh:    setbrk.o
-sh:    builtin.o blok.o stak.o
-sh:    cmd.o fault.o main.o
-sh:    word.o string.o name.o args.o
-sh:    xec.o service.o error.o io.o
-sh:    print.o macro.o expand.o
-sh:    ctype.o msg.o
-blok.o:                brkincr.h
-fault.o:       brkincr.h
-main.o:                brkincr.h
-stak.o:                brkincr.h
-
-sh:
-       cc -o sh *.o
-
-install:
-       install -s sh $(DESTDIR)/bin
-clean:
-       rm -f sh *.o
+#      @(#)Makefile    8.4 (Berkeley) 5/5/95
+
+PROG=  sh
+SRCS=  alias.c builtins.c cd.c echo.c error.c eval.c exec.c expand.c \
+       histedit.c input.c jobs.c mail.c main.c memalloc.c miscbltin.c \
+       mystring.c nodes.c options.c parser.c redir.c show.c syntax.c \
+       trap.c output.c var.c
+OBJS+= init.o arith.o arith_lex.o
+LDADD+=        -ll -ledit -ltermcap
+LFLAGS= -8     # 8-bit lex scanner for arithmetic
+CFLAGS+=-DSHELL -I. -I${.CURDIR}
+.PATH: ${.CURDIR}/bltin ${.CURDIR}/../../usr.bin/printf
+CLEANFILES+=\
+       builtins.c builtins.h init.c mkinit mknodes mksyntax \
+       nodes.c nodes.h printf.o syntax.c syntax.h token.def y.tab.h
+
+.depend parser.o: token.def
+token.def: mktokens
+       sh ${.CURDIR}/mktokens
+
+builtins.h builtins.c: ${.CURDIR}/mkbuiltins ${.CURDIR}/builtins.def
+       cd ${.CURDIR}; sh mkbuiltins ${.OBJDIR}
+
+init.c: mkinit ${SRCS}
+       ./mkinit '${CC} -c ${CFLAGS} init.c' ${.ALLSRC:S/^mkinit$//}
+
+mkinit: ${.CURDIR}/mkinit.c
+       ${CC} ${CFLAGS} ${.CURDIR}/mkinit.c -o $@
+
+nodes.c nodes.h: mknodes ${.CURDIR}/nodetypes ${.CURDIR}/nodes.c.pat
+       ./mknodes ${.CURDIR}/nodetypes ${.CURDIR}/nodes.c.pat
+
+mknodes: ${.CURDIR}/mknodes.c
+       ${CC} ${CFLAGS} ${.CURDIR}/mknodes.c -o $@
+
+syntax.c syntax.h: mksyntax
+       ./mksyntax
+
+mksyntax: ${.CURDIR}/mksyntax.c ${.CURDIR}/parser.h
+       ${CC} ${CFLAGS} ${.CURDIR}/mksyntax.c -o $@
+
+.include <bsd.prog.mk>