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