1 # $DragonFly: src/lib/libncurses/libncurses/Makefile,v 1.2 2005/03/12 20:57:07 joerg Exp $
7 .include "../Makefile.inc"
9 NCURSESBASEDIR=${NCURSESDIR}/ncurses/base
10 NCURSESSERIALDIR=${NCURSESDIR}/ncurses/tty
11 NCURSESTINFODIR=${NCURSESDIR}/ncurses/tinfo
12 NCURSESTRACEDIR=${NCURSESDIR}/ncurses/trace
13 .PATH: ${NCURSESBASEDIR} ${NCURSESSERIALDIR} ${NCURSESTINFODIR} \
14 ${NCURSESTRACEDIR} ${.OBJDIR} ${NCURSESDIR}/include/
16 CFLAGS+= -I${NCURSESDIR}/ncurses/
19 TERMINFO_CAPS= ${NCURSESDIR}/include/Caps
21 ${NCURSESDIR}/include/MKncurses_def.sh ${NCURSESDIR}/include/ncurses_defs > ${.TARGET}
23 cat ${.CURDIR}/../include/curses.head >$@
24 ${NCURSESDIR}/include/MKkey_defs.sh $(TERMINFO_CAPS) >>$@
25 cat ${NCURSESDIR}/include/curses.tail >>$@
27 awk -f ${.CURDIR}/../include/MKterm.h.awk ${TERMINFO_CAPS} > $@
28 ${NCURSESDIR}/include/edit_cfg.sh ${.CURDIR}/../include/ncurses_cfg.h $@
30 ${NCURSESDIR}/include/MKhashsize.sh ${TERMINFO_CAPS} >$@
32 ${NCURSESDIR}/include/MKparametrized.sh ${TERMINFO_CAPS} >$@
33 init_keytry.h: make_keys
34 ${.OBJDIR}/make_keys keys.list > $@
36 ${NCURSESTINFODIR}/MKkeys_list.sh ${TERMINFO_CAPS} | sort > $@
38 ${CC} -o $@ ${NCURSESTINFODIR}/make_keys.c ${CFLAGS}
40 awk -f ${NCURSESTINFODIR}/MKnames.awk ${TERMINFO_CAPS}
41 cat namehdr boolnames boolfnames numnames numfnames strnames strfnames nameftr >names.c
42 cat namehdr boolcodes numcodes strcodes codeftr >codes.c
43 comp_captab.c: make_hash
44 sh ${NCURSESTINFODIR}/MKcaptab.awk awk ${TERMINFO_CAPS} > $@
45 make_hash: hashsize.h ncurses_def.h curses.h
46 ${CC} -o $@ ${CFLAGS} -DMAIN_PROGRAM ${NCURSESTINFODIR}/comp_hash.c
48 sh ${NCURSESSERIALDIR}/MKexpanded.sh "${CC}" ${CFLAGS} > $@
50 sh ${NCURSESTINFODIR}/MKfallback.sh /usr/share/terminfo ${NCURSESDIR}/misc/terminfo.src >$@
52 sh ${NCURSESBASEDIR}/MKlib_gen.sh "${CC} ${CFLAGS}" awk generated <curses.h >$@
53 lib_keyname.c: keys.list
54 awk -f ${NCURSESBASEDIR}/MKkeyname.awk keys.list > $@
56 echo | awk -f ${NCURSESBASEDIR}/MKunctrl.awk >$@
58 CLEANFILES= curses.h ncurses_def.h term.h hashsize.h parametrized.h comp_captab.c
59 CLEANFILES+= namehdr boolnames boolfnames numnames numfnames strnames strfnames nameftr
60 CLEANFILES+= codes.c init_keytry.h numcodes strcodes boolcodes codeftr make_keys names.c
61 CLEANFILES+= make_hash expanded.c fallback.c lib_gen.c lib_keyname.c unctrl.c keys.list
233 # Use instead of read_termcap.c.
234 # From our old libtermcap.
237 SYMLINKS+=libncurses.a ${LIBDIR}/libcurses.a
238 SYMLINKS+=libncurses.a ${LIBDIR}/libtinfo.a
239 SYMLINKS+=libncurses.a ${LIBDIR}/libmytinfo.a
240 SYMLINKS+=libncurses.a ${LIBDIR}/libtermlib.a
241 SYMLINKS+=libncurses.a ${LIBDIR}/libtermcap.a
243 # no need for major at all, it's an ld-time redirection only
244 SYMLINKS+=libncurses.so ${SHLIBDIR}/libcurses.so
245 SYMLINKS+=libncurses.so ${SHLIBDIR}/libtermcap.so
246 SYMLINKS+=libncurses.so ${SHLIBDIR}/libtermlib.so
247 SYMLINKS+=libncurses.so ${SHLIBDIR}/libmytinfo.so
248 SYMLINKS+=libncurses.so ${SHLIBDIR}/libtinfo.so
250 .if !defined(NOPROFILE)
251 SYMLINKS+=libncurses_p.a ${LIBDIR}/libcurses_p.a
252 SYMLINKS+=libncurses_p.a ${LIBDIR}/libtermcap_p.a
253 SYMLINKS+=libncurses_p.a ${LIBDIR}/libtermlib_p.a
254 SYMLINKS+=libncurses_p.a ${LIBDIR}/libmytinfo_p.a
255 SYMLINKS+=libncurses_p.a ${LIBDIR}/libtinfo_p.a
258 INCS= term.h ${.CURDIR}/../include/termcap.h \
259 ${.CURDIR}/../include/unctrl.h curses.h
260 INCSLINKS=curses.h ${INCLUDEDIR}/ncurses.h
262 .include <bsd.lib.mk>