1 # $NetBSD: Makefile,v 1.57 2016/03/23 22:27:48 christos Exp $ 2 # @(#)Makefile 8.1 (Berkeley) 6/4/93 3 4 USE_SHLIBDIR= yes 5 6 WARNS?= 5 7 LIB= edit 8 9 LIBDPLIBS+= terminfo ${.CURDIR}/../libterminfo 10 11 .include "bsd.own.mk" 12 13 COPTS+= -Wunused-parameter 14 CWARNFLAGS.gcc+= -Wconversion 15 CWARNFLAGS.clang+= -Wno-cast-qual 16 17 OSRCS= chared.c common.c el.c eln.c emacs.c fcns.c filecomplete.c help.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 21 MAN= editline.3 editrc.5 22 23 MLINKS= editline.3 el_init.3 editline.3 el_end.3 editline.3 el_reset.3 \ 24 editline.3 el_gets.3 editline.3 el_getc.3 editline.3 el_push.3 \ 25 editline.3 el_parse.3 editline.3 el_set.3 editline.3 el_get.3 \ 26 editline.3 el_source.3 editline.3 el_resize.3 editline.3 el_line.3 \ 27 editline.3 el_insertstr.3 editline.3 el_deletestr.3 \ 28 editline.3 history_init.3 editline.3 history_end.3 \ 29 editline.3 history.3 \ 30 editline.3 tok_init.3 editline.3 tok_end.3 editline.3 tok_reset.3 \ 31 editline.3 tok_line.3 editline.3 tok_str.3 32 33 # For speed and debugging 34 #SRCS= ${OSRCS} readline.c tokenizer.c history.c 35 # For protection 36 SRCS= editline.c readline.c tokenizer.c history.c 37 38 SRCS += tokenizern.c historyn.c 39 CLEANFILES+=tokenizern.c.tmp tokenizern.c historyn.c.tmp historyn.c 40 41 LIBEDITDIR?=${.CURDIR} 42 43 INCS= histedit.h 44 INCSDIR=/usr/include 45 46 CLEANFILES+=editline.c 47 CLEANFILES+=common.h.tmp editline.c.tmp emacs.h.tmp fcns.c.tmp fcns.h.tmp 48 CLEANFILES+=help.c.tmp help.h.tmp vi.h.tmp tc1.o tc1 49 CLEANFILES+=tokenizern.c.tmp tokenizern.c tokenizerw.c.tmp tokenizerw.c 50 CPPFLAGS+=-I. -I${LIBEDITDIR} 51 CPPFLAGS+=-I. -I${.CURDIR} 52 #CPPFLAGS+=-DDEBUG_TTY -DDEBUG_KEY -DDEBUG_READ -DDEBUG -DDEBUG_REFRESH 53 #CPPFLAGS+=-DDEBUG_PASTE -DDEBUG_EDIT 54 55 AHDR=vi.h emacs.h common.h 56 ASRC=${LIBEDITDIR}/vi.c ${LIBEDITDIR}/emacs.c ${LIBEDITDIR}/common.c 57 58 DPSRCS+= ${AHDR} fcns.h help.h fcns.c help.c 59 CLEANFILES+= ${AHDR} fcns.h help.h fcns.c help.c 60 61 SUBDIR= readline 62 63 vi.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 69 emacs.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 75 common.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 81 fcns.h: ${AHDR} makelist Makefile 82 ${_MKTARGET_CREATE} 83 ${HOST_SH} ${LIBEDITDIR}/makelist -fh ${AHDR} > ${.TARGET}.tmp && \ 84 mv ${.TARGET}.tmp ${.TARGET} 85 86 fcns.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 91 help.c: ${ASRC} makelist Makefile 92 ${_MKTARGET_CREATE} 93 ${HOST_SH} ${LIBEDITDIR}/makelist -bc ${ASRC} > ${.TARGET}.tmp && \ 94 mv ${.TARGET}.tmp ${.TARGET} 95 96 help.h: ${ASRC} makelist Makefile 97 ${_MKTARGET_CREATE} 98 ${HOST_SH} ${LIBEDITDIR}/makelist -bh ${ASRC} > ${.TARGET}.tmp && \ 99 mv ${.TARGET}.tmp ${.TARGET} 100 101 editline.c: ${OSRCS} makelist Makefile 102 ${_MKTARGET_CREATE} 103 ${HOST_SH} ${LIBEDITDIR}/makelist -e ${OSRCS:T} > ${.TARGET}.tmp && \ 104 mv ${.TARGET}.tmp ${.TARGET} 105 106 tokenizern.c: makelist Makefile 107 ${_MKTARGET_CREATE} 108 ${HOST_SH} ${LIBEDITDIR}/makelist -n tokenizer.c > ${.TARGET}.tmp && \ 109 mv ${.TARGET}.tmp ${.TARGET} 110 111 historyn.c: makelist Makefile 112 ${_MKTARGET_CREATE} 113 ${HOST_SH} ${LIBEDITDIR}/makelist -n history.c > ${.TARGET}.tmp && \ 114 mv ${.TARGET}.tmp ${.TARGET} 115 116 tc1.o: ${LIBEDITDIR}/TEST/tc1.c 117 118 tc1: 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 defined(HAVE_GCC) 127 COPTS.editline.c+= -Wno-cast-qual 128 COPTS.tokenizer.c+= -Wno-cast-qual 129 COPTS.tokenizern.c+= -Wno-cast-qual 130 .endif 131