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