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