1# @(#)Makefile 8.4 (Berkeley) 5/5/95 2# $FreeBSD$ 3 4.include <src.opts.mk> 5 6CONFGROUPS= ETC ROOT 7ETC= profile 8ROOT= dot.shrc dot.profile 9ROOTDIR= /root 10ROOTNAME_dot.shrc= .shrc 11ROOTNAME_dot.profile= .profile 12PACKAGE=runtime 13PROG= sh 14INSTALLFLAGS= -S 15SHSRCS= alias.c arith_yacc.c arith_yylex.c cd.c echo.c error.c eval.c \ 16 exec.c expand.c \ 17 histedit.c input.c jobs.c kill.c mail.c main.c memalloc.c miscbltin.c \ 18 mystring.c options.c output.c parser.c printf.c redir.c show.c \ 19 test.c trap.c var.c 20GENSRCS= builtins.c nodes.c syntax.c 21GENHDRS= builtins.h nodes.h syntax.h token.h 22SRCS= ${SHSRCS} ${GENSRCS} ${GENHDRS} 23 24# MLINKS for Shell built in commands for which there are no userland 25# utilities of the same name are handled with the associated manpage, 26# builtin.1 in share/man/man1/. 27 28LIBADD= edit 29 30CFLAGS+=-DSHELL -I. -I${.CURDIR} 31# for debug: 32# DEBUG_FLAGS+= -g -DDEBUG=2 -fno-inline 33 34.PATH: ${.CURDIR}/bltin \ 35 ${.CURDIR:H}/kill \ 36 ${.CURDIR:H}/test \ 37 ${SRCTOP}/usr.bin/printf 38 39CLEANFILES+= mknodes mksyntax 40CLEANFILES+= ${GENSRCS} ${GENHDRS} 41 42build-tools: mknodes mksyntax 43 44.ORDER: builtins.c builtins.h 45builtins.h: .NOMETA 46builtins.c builtins.h: mkbuiltins builtins.def 47 sh ${.CURDIR}/mkbuiltins ${.CURDIR} 48 49DEPENDOBJS+= mknodes mksyntax 50mknodes mksyntax: ${BUILD_TOOLS_META} 51 52.ORDER: nodes.c nodes.h 53nodes.h: .NOMETA 54nodes.c nodes.h: mknodes nodetypes nodes.c.pat 55 ${BTOOLSPATH:U.}/mknodes ${.CURDIR}/nodetypes ${.CURDIR}/nodes.c.pat 56 57.ORDER: syntax.c syntax.h 58syntax.h: .NOMETA 59syntax.c syntax.h: mksyntax 60 ${BTOOLSPATH:U.}/mksyntax 61 62token.h: mktokens 63 sh ${.CURDIR}/mktokens 64 65HAS_TESTS= 66SUBDIR.${MK_TESTS}+= tests 67 68beforeinstallconfig: 69 rm -f ${DESTDIR}/.profile 70 71LINKMODE=${CONFMODE} 72afterinstallconfig: 73 ${INSTALL_LINK} ${TAG_ARGS} ${DESTDIR}/root/.profile ${DESTDIR}/.profile 74 75.include <bsd.prog.mk> 76