aboutsummaryrefslogtreecommitdiff
path: root/lib/libedit/Makefile
blob: a11d89d8132395352419e9b471b1f30ca2b5630a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#	$NetBSD: Makefile,v 1.56 2016/03/02 19:24:20 christos Exp $
#	@(#)Makefile	8.1 (Berkeley) 6/4/93
# $FreeBSD$

PACKAGE=clibs
LIB=	edit
SHLIB_MAJOR=	7
SHLIBDIR?= /lib

WARNS?=	3

OSRCS=	chared.c common.c el.c eln.c emacs.c fcns.c filecomplete.c help.c \
	hist.c keymacro.c map.c chartype.c \
	parse.c prompt.c read.c refresh.c search.c sig.c terminal.c tty.c vi.c

LIBADD=	ncursesw

MAN=	editline.3 editrc.5

MLINKS=	editline.3 el_deletestr.3 editline.3 el_end.3 editline.3 el_init.3 \
	editline.3 el_get.3 editline.3 el_getc.3 editline.3 el_gets.3 \
	editline.3 history.3 editline.3 history_end.3 \
	editline.3 history_init.3 editline.3 el_insertstr.3 \
	editline.3 el_line.3 editline.3 el_parse.3 editline.3 el_push.3 \
	editline.3 el_reset.3 editline.3 el_resize.3 editline.3 el_set.3 \
	editline.3 el_source.3 \
	editline.3 tok_init.3 editline.3 tok_end.3 editline.3 tok_reset.3 \
	editline.3 tok_line.3 editline.3 tok_str.3

# For speed and debugging
#SRCS=   ${OSRCS}
# For protection
SRCS=	editline.c
SRCS+=	tokenizer.c history.c readline.c
SRCS+=	common.h emacs.h fcns.h help.h vi.h
CLEANFILES+= common.h editline.c emacs.h fcns.c fcns.h help.c help.h vi.h

INCS=	histedit.h

SRCS+=	tokenizern.c historyn.c
CLEANFILES+=	tokenizern.c historyn.c
CFLAGS+= -I. -I${.CURDIR} -I${.CURDIR}/edit -DWIDECHAR
#CFLAGS+= -DDEBUG_TTY -DDEBUG_KEY -DDEBUG_READ -DDEBUG -DDEBUG_REFRESH
#CFLAGS+= -DDEBUG_PASTE -DDEBUG_EDIT

SUBDIR= edit/readline

AHDR=	vi.h emacs.h common.h
ASRC=	${.CURDIR}/vi.c ${.CURDIR}/emacs.c ${.CURDIR}/common.c

.for hdr in vi emacs common
${hdr}.h: ${hdr}.c makelist
	sh ${.CURDIR}/makelist -h ${.CURDIR}/${hdr}.c > ${.TARGET}
.endfor

fcns.h: ${AHDR} makelist
	sh ${.CURDIR}/makelist -fh ${AHDR} > ${.TARGET}

fcns.c: ${AHDR} fcns.h makelist
	sh ${.CURDIR}/makelist -fc ${AHDR} > ${.TARGET}

help.c: ${ASRC} makelist
	sh ${.CURDIR}/makelist -bc ${ASRC} > ${.TARGET}

help.h: ${ASRC} makelist
	sh ${.CURDIR}/makelist -bh ${ASRC} > ${.TARGET}

editline.c: ${OSRCS}
	sh ${.CURDIR}/makelist -e ${.ALLSRC:T} > ${.TARGET}

tokenizern.c: makelist Makefile
	sh ${.CURDIR}/makelist -n tokenizer.c > ${.TARGET}

historyn.c: makelist Makefile
	sh ${.CURDIR}/makelist -n history.c > ${.TARGET}

# minimal dependency to make "make depend" optional
editline.o editline.po editline.pico editline.ln:	\
	common.h emacs.h fcns.c fcns.h help.c help.h vi.h

tc1.o: ${.CURDIR}/TEST/tc1.c

test: tc1.o libedit.a ${DPADD} ${LIBTERMCAP}
	${CC} ${CFLAGS} ${.ALLSRC} -o ${.TARGET} libedit.a ${LDADD}

.include <bsd.lib.mk>