Makefile revision 1.38
1#	$NetBSD: Makefile,v 1.38 2009/12/30 22:37:40 christos Exp $
2#	@(#)Makefile	8.1 (Berkeley) 6/4/93
3
4USE_SHLIBDIR=	yes
5
6WIDECHAR ?= no
7WARNS=	4
8LIB=	edit
9
10LIBDPLIBS+=     termcap ${.CURDIR}/../libterm
11
12OSRCS=	chared.c common.c el.c emacs.c fcns.c filecomplete.c help.c \
13	hist.c key.c map.c chartype.c \
14	parse.c prompt.c read.c refresh.c search.c sig.c term.c tty.c vi.c
15
16MAN=	editline.3 editrc.5
17
18MLINKS=	editline.3 el_init.3 editline.3 el_end.3 editline.3 el_reset.3 \
19	editline.3 el_gets.3 editline.3 el_getc.3 editline.3 el_push.3 \
20	editline.3 el_parse.3 editline.3 el_set.3 editline.3 el_get.3 \
21	editline.3 el_source.3 editline.3 el_resize.3 editline.3 el_line.3 \
22	editline.3 el_insertstr.3 editline.3 el_deletestr.3 \
23	editline.3 history_init.3 editline.3 history_end.3 \
24	editline.3 history.3 \
25	editline.3 tok_init.3 editline.3 tok_end.3 editline.3 tok_reset.3 \
26	editline.3 tok_line.3 editline.3 tok_str.3
27
28# For speed and debugging
29SRCS=   ${OSRCS} readline.c
30# For protection
31#SRCS=	editline.c readline.c
32
33.if ${WIDECHAR} == "yes"
34SRCS += tokenizern.c tokenizerw.c historyn.c historyw.c eln.c
35CLEANFILES+=tokenizern.c.tmp tokenizern.c tokenizerw.c.tmp tokenizerw.c
36CLEANFILES+=historyn.c.tmp historyn.c historyw.c.tmp historyw.c
37CPPFLAGS+=-DWIDECHAR
38.else
39SRCS += tokenizer.c history.c
40.endif
41
42LIBEDITDIR?=${.CURDIR}
43
44INCS= histedit.h
45INCSDIR=/usr/include
46
47CLEANFILES+=editline.c
48CLEANFILES+=common.h.tmp editline.c.tmp emacs.h.tmp fcns.c.tmp fcns.h.tmp
49CLEANFILES+=help.c.tmp help.h.tmp vi.h.tmp tc1.o tc1
50CLEANFILES+=tokenizern.c.tmp tokenizern.c tokenizerw.c.tmp tokenizerw.c
51CPPFLAGS+=-I. -I${LIBEDITDIR} 
52CPPFLAGS+=-I. -I${.CURDIR}
53CPPFLAGS+=#-DDEBUG_TTY -DDEBUG_KEY -DDEBUG_READ -DDEBUG -DDEBUG_REFRESH
54CPPFLAGS+=#-DDEBUG_PASTE -DDEBUG_EDIT
55
56AHDR=vi.h emacs.h common.h 
57ASRC=${LIBEDITDIR}/vi.c ${LIBEDITDIR}/emacs.c ${LIBEDITDIR}/common.c
58
59DPSRCS+=	${AHDR} fcns.h help.h fcns.c help.c
60CLEANFILES+=	${AHDR} fcns.h help.h fcns.c help.c
61
62SUBDIR=	readline
63
64vi.h: vi.c makelist Makefile
65	${_MKTARGET_CREATE}
66	${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/vi.c \
67	    > ${.TARGET}.tmp && \
68	    mv ${.TARGET}.tmp ${.TARGET}
69
70emacs.h: emacs.c makelist Makefile
71	${_MKTARGET_CREATE}
72	${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/emacs.c \
73	    > ${.TARGET}.tmp && \
74	    mv ${.TARGET}.tmp ${.TARGET}
75
76common.h: common.c makelist Makefile
77	${_MKTARGET_CREATE}
78	${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/common.c \
79	    > ${.TARGET}.tmp && \
80	    mv ${.TARGET}.tmp ${.TARGET}
81
82fcns.h: ${AHDR} makelist Makefile
83	${_MKTARGET_CREATE}
84	${HOST_SH} ${LIBEDITDIR}/makelist -fh ${AHDR} > ${.TARGET}.tmp && \
85	    mv ${.TARGET}.tmp ${.TARGET}
86
87fcns.c: ${AHDR} fcns.h help.h makelist Makefile
88	${_MKTARGET_CREATE}
89	${HOST_SH} ${LIBEDITDIR}/makelist -fc ${AHDR} > ${.TARGET}.tmp && \
90	    mv ${.TARGET}.tmp ${.TARGET}
91
92help.c: ${ASRC} makelist Makefile
93	${_MKTARGET_CREATE}
94	${HOST_SH} ${LIBEDITDIR}/makelist -bc ${ASRC} > ${.TARGET}.tmp && \
95	    mv ${.TARGET}.tmp ${.TARGET}
96
97help.h: ${ASRC} makelist Makefile
98	${_MKTARGET_CREATE}
99	${HOST_SH} ${LIBEDITDIR}/makelist -bh ${ASRC} > ${.TARGET}.tmp && \
100	    mv ${.TARGET}.tmp ${.TARGET}
101
102editline.c: ${OSRCS} makelist Makefile
103	${_MKTARGET_CREATE}
104	${HOST_SH} ${LIBEDITDIR}/makelist -e ${OSRCS:T} > ${.TARGET}.tmp && \
105	    mv ${.TARGET}.tmp ${.TARGET}
106
107tokenizern.c: makelist Makefile
108	${_MKTARGET_CREATE}
109	${HOST_SH} ${LIBEDITDIR}/makelist -t NARROW tokenizer > ${.TARGET}.tmp && \
110	    mv ${.TARGET}.tmp ${.TARGET}
111
112tokenizerw.c: makelist Makefile
113	${_MKTARGET_CREATE}
114	${HOST_SH} ${LIBEDITDIR}/makelist -t WIDE tokenizer > ${.TARGET}.tmp && \
115	    mv ${.TARGET}.tmp ${.TARGET}
116
117historyn.c: makelist Makefile
118	${_MKTARGET_CREATE}
119	${HOST_SH} ${LIBEDITDIR}/makelist -t NARROW history > ${.TARGET}.tmp && \
120	    mv ${.TARGET}.tmp ${.TARGET}
121
122historyw.c: makelist Makefile
123	${_MKTARGET_CREATE}
124	${HOST_SH} ${LIBEDITDIR}/makelist -t WIDE history > ${.TARGET}.tmp && \
125	    mv ${.TARGET}.tmp ${.TARGET}
126
127tc1.o:	${LIBEDITDIR}/TEST/tc1.c
128	
129tc1:	libedit.a tc1.o 
130	${_MKTARGET_LINK}
131	${CC} ${LDFLAGS} ${.ALLSRC} -o ${.TARGET} libedit.a ${LDADD} -ltermcap
132
133.include <bsd.lib.mk>
134.include <bsd.subdir.mk>
135