1 2PACKAGE= clibs 3SHLIBDIR?= /lib 4 5.include <src.opts.mk> 6 7.include "${.CURDIR:H}/config.mk" 8 9LIB= ncursesw 10SHLIB_MAJOR= 9 11 12NO_LINT= 13 14GENSRCS= \ 15 expanded.c \ 16 lib_gen.c 17 18SRCS= ${GENSRCS} 19 20.PATH: ${NCURSES_DIR}/ncurses/base 21SRCS+= \ 22 new_pair.c \ 23 lib_dft_fgbg.c \ 24 legacy_coding.c \ 25 lib_addch.c \ 26 lib_addstr.c \ 27 lib_beep.c \ 28 lib_bkgd.c \ 29 lib_box.c \ 30 lib_chgat.c \ 31 lib_clear.c \ 32 lib_clearok.c \ 33 lib_clrbot.c \ 34 lib_clreol.c \ 35 lib_color.c \ 36 lib_colorset.c \ 37 lib_delch.c \ 38 lib_delwin.c \ 39 lib_echo.c \ 40 lib_endwin.c \ 41 lib_erase.c \ 42 lib_flash.c \ 43 lib_getch.c \ 44 lib_getstr.c \ 45 lib_hline.c \ 46 lib_immedok.c \ 47 lib_inchstr.c \ 48 lib_initscr.c \ 49 lib_insch.c \ 50 lib_insdel.c \ 51 lib_insnstr.c \ 52 lib_instr.c \ 53 lib_isendwin.c \ 54 lib_leaveok.c \ 55 lib_mouse.c \ 56 lib_move.c \ 57 lib_mvwin.c \ 58 lib_newterm.c \ 59 lib_newwin.c \ 60 lib_nl.c \ 61 lib_overlay.c \ 62 lib_pad.c \ 63 lib_print.c \ 64 lib_printw.c \ 65 lib_redrawln.c \ 66 lib_refresh.c \ 67 lib_restart.c \ 68 lib_scanw.c \ 69 lib_screen.c \ 70 lib_scroll.c \ 71 lib_scrollok.c \ 72 lib_scrreg.c \ 73 lib_set_term.c \ 74 lib_slk.c \ 75 lib_slkatr_set.c \ 76 lib_slkatrof.c \ 77 lib_slkatron.c \ 78 lib_slkatrset.c \ 79 lib_slkattr.c \ 80 lib_slkclear.c \ 81 lib_slkcolor.c \ 82 lib_slkinit.c \ 83 lib_slklab.c \ 84 lib_slkrefr.c \ 85 lib_slkset.c \ 86 lib_slktouch.c \ 87 lib_touch.c \ 88 lib_ungetch.c \ 89 lib_vline.c \ 90 lib_wattroff.c \ 91 lib_wattron.c \ 92 lib_winch.c \ 93 lib_window.c \ 94 nc_panel.c \ 95 resizeterm.c \ 96 safe_sprintf.c \ 97 vsscanf.c \ 98 wresize.c \ 99 lib_freeall.c \ 100 101.PATH: ${NCURSES_DIR}/ncurses/tinfo 102SRCS+= \ 103 use_screen.c \ 104 use_window.c 105 106.PATH: ${NCURSES_DIR}/ncurses/trace 107SRCS+= \ 108 varargs.c 109 110# DONE 111.PATH: ${NCURSES_DIR}/ncurses/tty 112SRCS+= \ 113 hardscroll.c \ 114 hashmap.c \ 115 lib_mvcur.c \ 116 lib_tstp.c \ 117 lib_vidattr.c \ 118 tty_update.c 119 120.PATH: ${NCURSES_DIR}/ncurses/widechar 121SRCS+= \ 122 charable.c \ 123 lib_add_wch.c \ 124 lib_box_set.c \ 125 lib_cchar.c \ 126 lib_erasewchar.c \ 127 lib_get_wch.c \ 128 lib_get_wstr.c \ 129 lib_hline_set.c \ 130 lib_in_wch.c \ 131 lib_in_wchnstr.c \ 132 lib_ins_wch.c \ 133 lib_inwstr.c \ 134 lib_key_name.c \ 135 lib_pecho_wchar.c \ 136 lib_slk_wset.c \ 137 lib_unget_wch.c \ 138 lib_vid_attr.c \ 139 lib_vline_set.c \ 140 lib_wacs.c \ 141 lib_wunctrl.c 142 143# Currently unused, for debugging libncurses itself. 144DBGSRCS= \ 145 varargs.c 146 147CLEANFILES= ${GENSRCS} 148 149CWARNFLAGS.lib_set_term.c= ${NO_WUNUSED_BUT_SET_VARIABLE} 150 151.if ${MK_INSTALLLIB} != "no" 152SYMLINKS+= libncursesw.a ${LIBDIR}/libcursesw.a 153# backward compat 154SYMLINKS+= libncursesw.a ${LIBDIR}/libncurses.a 155SYMLINKS+= libncursesw.a ${LIBDIR}/libcurses.a 156.endif 157.if !defined(NO_PIC) 158# no need for major at all, it's an ld-time redirection only 159SYMLINKS+= libncursesw.so ${LIBDIR}/libcursesw.so 160# backward compat 161SYMLINKS+= libncursesw.so ${LIBDIR}/libncurses.so 162SYMLINKS+= libncursesw.so ${LIBDIR}/libcurses.so 163.endif 164.if ${MK_PROFILE} != "no" 165SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcursesw_p.a 166# backward compat 167SYMLINKS+= libncursesw_p.a ${LIBDIR}/libncurses_p.a 168SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcurses_p.a 169.endif 170 171LIBADD+= tinfow 172SHLIB_LDSCRIPT= libncursesw.ldscript 173STATIC_LDSCRIPT= libncursesw.aldscript 174CLEANFILES+= libncursesw.ald 175# Keep this for a while to ensure the file is removed during make clean 176CLEANFILES+= libncursesw.a 177 178libncursesw.ald: ${.CURDIR}/${STATIC_LDSCRIPT} 179 sed -e 's,@@LIB@@,${LIB},g' \ 180 -e 's,@@STATICLIB_SUFFIX@@,${_STATICLIB_SUFFIX},g' \ 181 ${.ALLSRC} > ${.TARGET} 182 183lib_gen.c: MKlib_gen.sh ${TINFO_OBJDIR}/curses.h ncurses_dll.h 184 LC_ALL=C sh ${NCURSES_DIR}/ncurses/base/MKlib_gen.sh "${CPP:N${CCACHE_BIN}} ${CFLAGS}" \ 185 "${AWK}" generated < ${TINFO_OBJDIR}/curses.h >$@ 186 187expanded.c: MKexpanded.sh 188 sh ${NCURSES_DIR}/ncurses/tty/MKexpanded.sh "${CC:N${CCACHE_BIN}} -E" ${CFLAGS} >expanded.c 189 190all: ${STATIC_LDSCRIPT} libncursesw.ald 191 192install-libncursesw.a: libncursesw.ald 193 ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},dev} -S -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ 194 ${_INSTALLFLAGS} libncursesw.ald ${DESTDIR}${_LIBDIR}/lib${LIB}.a 195 196realinstall: install-libncursesw.a 197 198 199.include <bsd.lib.mk> 200