Home | History | Annotate | Line # | Download | only in csh
      1 #	$NetBSD: Makefile,v 1.43 2025/09/18 03:35:59 mrg Exp $
      2 #	@(#)Makefile	8.1 (Berkeley) 5/31/93
      3 #
      4 # C Shell with process control; VM/UNIX VAX Makefile
      5 # Bill Joy UC Berkeley; Jim Kulp IIASA, Austria
      6 #
      7 # To profile, put -DPROF in DFLAGS and -pg in COPTS, and recompile.
      8 
      9 .include <bsd.own.mk>
     10 WARNS=6
     11 
     12 PROG=	csh
     13 DFLAGS=-DBUILTIN -DFILEC -DNLS -DSHORT_STRINGS
     14 # - Editor history not always aligned with shell history,
     15 #   should implement internally
     16 # - Does not handle escaped prompts.
     17 # - Does not do completion
     18 .ifndef SMALLPROG
     19 DFLAGS+=-DEDIT
     20 .endif
     21 CPPFLAGS+=-I${.CURDIR} -I. ${DFLAGS}
     22 SRCS=	alloc.c char.c const.c csh.c dir.c dol.c err.c exec.c exp.c file.c \
     23 	func.c glob.c hist.c init.c lex.c misc.c parse.c printf.c proc.c \
     24 	sem.c set.c str.c time.c
     25 .PATH:	${NETBSDSRCDIR}/usr.bin/printf
     26 
     27 MLINKS=	csh.1 limit.1 csh.1 alias.1 csh.1 bg.1 csh.1 dirs.1 csh.1 fg.1 \
     28 	csh.1 foreach.1 csh.1 history.1 csh.1 jobs.1 csh.1 popd.1 \
     29 	csh.1 pushd.1 csh.1 rehash.1 csh.1 repeat.1 csh.1 suspend.1 \
     30 	csh.1 stop.1 csh.1 source.1
     31 
     32 DPSRCS+=	errnum.h const.h
     33 CLEANFILES+=	errnum.h const.h
     34 
     35 errnum.h: err.c
     36 	${_MKTARGET_CREATE}
     37 	rm -f ${.TARGET}
     38 	(\
     39 	echo '/* Do not edit this file, make creates it. */' ;\
     40 	echo '#ifndef _h_sh_errnum' ;\
     41 	echo '#define _h_sh_errnum' ;\
     42 	egrep 'ERR_' ${.ALLSRC} | egrep '^#define' ;\
     43 	echo '#endif /* _h_sh_errnum */' ;\
     44 	) > ${.TARGET}
     45 
     46 const.c: errnum.h
     47 const.h: const.c
     48 	${_MKTARGET_CREATE}
     49 	rm -f ${.TARGET}
     50 	echo '/* Do not edit this file, make creates it. */' > ${.TARGET}
     51 	${CC} -E ${CPPFLAGS} ${.ALLSRC} | egrep 'Char STR' | \
     52 	    ${TOOL_SED} -e 's/Char \([a-zA-Z0-9_]*\)\(.*\)/extern Char \1[];/' | \
     53 	    sort >> ${.TARGET}
     54 
     55 SUBDIR.roff+=USD.doc
     56 
     57 COPTS.err.c = -Wno-format-nonliteral
     58 COPTS.printf.c = -Wno-format-nonliteral
     59 COPTS.proc.c = -Wno-format-nonliteral
     60 COPTS.glob.c = ${CC_WNO_DANGLING_POINTER}
     61 
     62 .if !empty(DFLAGS:M*EDIT)
     63 LDADD+=-ledit -lterminfo -lutil
     64 DPADD+=${LIBEDIT} ${LIBUTIL}
     65 .else
     66 LDADD+=-lutil
     67 DPADD+=${LIBUTIL}
     68 .endif
     69 
     70 .include <bsd.prog.mk>
     71 .include <bsd.subdir.mk>
     72