diff --git a/lib/ncurses/Makefile b/lib/ncurses/Makefile index be8697fbc609..da3791d01703 100644 --- a/lib/ncurses/Makefile +++ b/lib/ncurses/Makefile @@ -1,11 +1,11 @@ # $FreeBSD$ -SUBDIR= ncurses form menu panel +SUBDIR= tinfo ncurses form menu panel SUBDIR_PARALLEL= -.for subdir in ${SUBDIR:Nncurses*} -SUBDIR_DEPEND_${subdir}= ncurses +.for subdir in ${SUBDIR:Ntinfo*} +SUBDIR_DEPEND_${subdir}= tinfo .endfor .include diff --git a/lib/ncurses/config.mk b/lib/ncurses/config.mk index 0ca0e4547ba8..c322cbeaa681 100644 --- a/lib/ncurses/config.mk +++ b/lib/ncurses/config.mk @@ -1,57 +1,58 @@ # $FreeBSD$ # This Makefile is shared by libncurses, libform, libmenu, libpanel. NCURSES_DIR= ${SRCTOP}/contrib/ncurses NCURSES_MAJOR= 6 NCURSES_MINOR= 2 NCURSES_PATCH= 20210220 CFLAGS+= -D_XOPEN_SOURCE_EXTENDED NCURSES_CFG_H= ${.CURDIR}/ncurses_cfg.h CFLAGS+= -I. -CFLAGS+= -I${.CURDIR:H}/ncurses +CFLAGS+= -I${.CURDIR:H}/tinfo # for ${NCURSES_CFG_H} CFLAGS+= -I${.CURDIR:H}/ncurses CFLAGS+= -I${NCURSES_DIR}/include CFLAGS+= -I${NCURSES_DIR}/ncurses -CFLAGS+= -I${.OBJDIR:H}/ncurses/ +CFLAGS+= -I${.OBJDIR:H}/tinfo/ CFLAGS+= -Wall CFLAGS+= -DNDEBUG CFLAGS+= -DHAVE_CONFIG_H # everyone needs this .PATH: ${NCURSES_DIR}/include +.PATH: ${.OBJDIR:H}/tinfo/ # tools and directories AWK?= awk TERMINFODIR?= ${SHAREDIR}/misc # Generate headers ncurses_def.h: MKncurses_def.sh ncurses_defs AWK=${AWK} sh ${NCURSES_DIR}/include/MKncurses_def.sh \ ${NCURSES_DIR}/include/ncurses_defs > ncurses_def.h # Manual pages filter MANFILTER= sed -e 's%@TERMINFO@%${TERMINFODIR}/terminfo%g' \ -e 's%@DATADIR@%/usr/share%g' \ -e 's%@NCURSES_OSPEED@%${NCURSES_OSPEED}%g' \ -e 's%@NCURSES_MAJOR@%${NCURSES_MAJOR}%g' \ -e 's%@NCURSES_MINOR@%${NCURSES_MINOR}%g' \ -e 's%@NCURSES_PATCH@%${NCURSES_PATCH}%g' \ -e 's%@TPUT@%tput%g' \ -e 's%@TSET@%tset%g' \ -e 's%@RESET@%reset%g' \ -e 's%@CLEAR@%clear%g' \ -e 's%@TABS@%tabs%g' \ -e 's%@TIC@%tic%g' \ -e 's%@TOE@%toe%g' \ -e 's%@INFOCMP@%infocmp%g' \ -e 's%@CAPTOINFO@%captoinfo%g' \ -e 's%@INFOTOCAP@%infotocap%g' diff --git a/lib/ncurses/ncurses/Makefile b/lib/ncurses/ncurses/Makefile index 5a1fab7003a6..35b123a22292 100644 --- a/lib/ncurses/ncurses/Makefile +++ b/lib/ncurses/ncurses/Makefile @@ -1,1146 +1,183 @@ # $FreeBSD$ PACKAGE= clibs SHLIBDIR?= /lib .include .include "${.CURDIR:H}/config.mk" LIB= ncursesw SHLIB_MAJOR= 9 NO_LINT= -NCURSES_MAJOR!= egrep 'NCURSES_MAJOR[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%' -NCURSES_MINOR!= egrep 'NCURSES_MINOR[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%' -NCURSES_PATCH!= egrep 'NCURSES_PATCH[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%' - -# From autoconf (!) -NCURSES_CH_T= cchar_t -NCURSES_OK_WCHAR_T= 1 -NEED_WCHAR_H= 1 -NCURSES_EXT_COLORS= 1 -NCURSES_EXT_FUNCS= 1 -NCURSES_CONST= const -NCURSES_INLINE= inline -NCURSES_LIBUTF8= 0 -NCURSES_MBSTATE_T= 0 -NCURSES_MOUSE_VERSION= 2 -NCURSES_INTEROP_FUNCS= 1 -NCURSES_OPAQUE= 0 -NCURSES_OPAQUE= 0 -NCURSES_OPAQUE_FORM= 0 -NCURSES_OPAQUE_MENU= 0 -NCURSES_OPAQUE_PANEL= 0 -NCURSES_OSPEED= short -NCURSES_SBOOL= char -NCURSES_SIZE_T= short -NCURSES_TPARM_VARARGS= 1 -NCURSES_WCHAR_T= 0 -NCURSES_WINT_T= 0 -NCURSES_XNAMES= 1 -NCURSES_WCWIDTH_GRAPHICS= 1 -NCURSES_WATTR_MACROS= 1 -NCURSES_TPARM_ARG= intptr_t -NCURSES_SP_FUNCS= 1 -BROKEN_LINKER= 0 -BUILTIN_BOOL= 1 -ENABLE_LP64= 1 -ENABLE_OPAQUE= NCURSES_OPAQUE -ENABLE_REENTRANT= 0 -HAVE_TCGETATTR= 1 -HAVE_TERMIOS_H= 1 -HAVE_TERMIO_H= 0 -HAVE_VSSCANF= 1 -HAVE_STDINT_H= 1 -HEADER_STDBOOL= 1 -# XXX amd64 1L and int -ONEUL= 1U -TYPEOF_CHTYPE= uint32_t -TYPEOF_MMASK_T= uint32_t -TYPE_OF_BOOL= unsigned char -USE_BIG_STRINGS= 1 -USE_CXX_BOOL= defined(__cplusplus) - GENSRCS= \ - codes.c \ expanded.c \ - fallback.c \ - lib_gen.c \ - lib_keyname.c \ - names.c \ - unctrl.c + lib_gen.c -GENHDRS= \ - curses.h \ - hashsize.h \ - init_keytry.h \ - ncurses_def.h \ - nomacros.h \ - parametrized.h \ - term.h \ - termcap.h \ - unctrl.h - -SRCS= ${GENHDRS} ${GENSRCS} +SRCS= ${GENSRCS} .PATH: ${NCURSES_DIR}/ncurses/base SRCS+= \ - define_key.c \ - key_defined.c \ - keybound.c \ - keyok.c \ + new_pair.c \ + lib_dft_fgbg.c \ legacy_coding.c \ lib_addch.c \ lib_addstr.c \ lib_beep.c \ lib_bkgd.c \ lib_box.c \ lib_chgat.c \ lib_clear.c \ lib_clearok.c \ lib_clrbot.c \ lib_clreol.c \ lib_color.c \ lib_colorset.c \ lib_delch.c \ lib_delwin.c \ - lib_dft_fgbg.c \ lib_echo.c \ lib_endwin.c \ lib_erase.c \ lib_flash.c \ - lib_freeall.c \ lib_getch.c \ lib_getstr.c \ lib_hline.c \ lib_immedok.c \ lib_inchstr.c \ lib_initscr.c \ lib_insch.c \ lib_insdel.c \ lib_insnstr.c \ lib_instr.c \ lib_isendwin.c \ lib_leaveok.c \ lib_mouse.c \ lib_move.c \ lib_mvwin.c \ lib_newterm.c \ lib_newwin.c \ lib_nl.c \ lib_overlay.c \ lib_pad.c \ + lib_print.c \ lib_printw.c \ lib_redrawln.c \ lib_refresh.c \ lib_restart.c \ lib_scanw.c \ lib_screen.c \ lib_scroll.c \ lib_scrollok.c \ lib_scrreg.c \ lib_set_term.c \ lib_slk.c \ lib_slkatr_set.c \ lib_slkatrof.c \ lib_slkatron.c \ lib_slkatrset.c \ lib_slkattr.c \ lib_slkclear.c \ lib_slkcolor.c \ lib_slkinit.c \ lib_slklab.c \ lib_slkrefr.c \ lib_slkset.c \ lib_slktouch.c \ lib_touch.c \ lib_ungetch.c \ lib_vline.c \ lib_wattroff.c \ lib_wattron.c \ lib_winch.c \ lib_window.c \ - new_pair.c \ nc_panel.c \ resizeterm.c \ safe_sprintf.c \ - tries.c \ - version.c \ vsscanf.c \ - wresize.c + wresize.c \ + lib_freeall.c \ .PATH: ${NCURSES_DIR}/ncurses/tinfo SRCS+= \ - access.c \ - add_tries.c \ - alloc_entry.c \ - alloc_ttype.c \ - captoinfo.c \ - comp_captab.c \ - comp_error.c \ - comp_expand.c \ - comp_hash.c \ - comp_parse.c \ - comp_scan.c \ - comp_userdefs.c \ - db_iterator.c \ - doalloc.c \ - entries.c \ - free_ttype.c \ - getenv_num.c \ - hashed_db.c \ - home_terminfo.c \ - init_keytry.c \ - lib_acs.c \ - lib_baudrate.c \ - lib_cur_term.c \ - lib_data.c \ - lib_has_cap.c \ - lib_kernel.c \ - lib_longname.c \ - lib_napms.c \ - lib_options.c \ - lib_print.c \ - lib_raw.c \ - lib_setup.c \ - lib_termcap.c \ - lib_termname.c \ - lib_tgoto.c \ - lib_ti.c \ - lib_tparm.c \ - lib_tputs.c \ - lib_ttyflags.c \ - name_match.c \ - obsolete.c \ - parse_entry.c \ - read_entry.c \ - read_termcap.c \ - strings.c \ - trim_sgr0.c \ - write_entry.c + use_screen.c \ + use_window.c +.PATH: ${NCURSES_DIR}/ncurses/trace +SRCS+= \ + varargs.c + +# DONE .PATH: ${NCURSES_DIR}/ncurses/tty SRCS+= \ hardscroll.c \ hashmap.c \ lib_mvcur.c \ lib_tstp.c \ - lib_twait.c \ lib_vidattr.c \ tty_update.c .PATH: ${NCURSES_DIR}/ncurses/widechar SRCS+= \ charable.c \ lib_add_wch.c \ lib_box_set.c \ lib_cchar.c \ lib_erasewchar.c \ lib_get_wch.c \ lib_get_wstr.c \ lib_hline_set.c \ lib_in_wch.c \ lib_in_wchnstr.c \ lib_ins_wch.c \ lib_inwstr.c \ lib_key_name.c \ lib_pecho_wchar.c \ lib_slk_wset.c \ lib_unget_wch.c \ lib_vid_attr.c \ lib_vline_set.c \ lib_wacs.c \ lib_wunctrl.c -.PATH: ${NCURSES_DIR}/ncurses/trace -SRCS+= \ - lib_trace.c \ - visbuf.c - # Currently unused, for debugging libncurses itself. DBGSRCS= \ - lib_traceatr.c \ - lib_tracebits.c \ - lib_tracechr.c \ - lib_tracedmp.c \ - lib_tracemse.c \ - trace_buf.c \ - trace_tries.c \ - trace_xnames.c \ varargs.c -CLEANFILES= ${GENSRCS} ${GENHDRS} keys.list make_hash term.h.new \ - make_keys MKterm.h.awk comp_captab.c curses.head - -CFLAGS+= -DTERMIOS - -# Installed -HEADERS= curses.h term.h termcap.h unctrl.h -SRCHDRS= ncurses_dll.h -CLEANFILES+= ncurses_dll.h - -INCS= ${HEADERS} ${SRCHDRS} -INCSLINKS= curses.h ${INCLUDEDIR}/ncurses.h +CLEANFILES= ${GENSRCS} .if ${MK_INSTALLLIB} != "no" SYMLINKS+= libncursesw.a ${LIBDIR}/libcursesw.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermcapw.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermlibw.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtinfow.a # backward compat SYMLINKS+= libncursesw.a ${LIBDIR}/libncurses.a SYMLINKS+= libncursesw.a ${LIBDIR}/libcurses.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermcap.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermlib.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtinfo.a .endif .if !defined(NO_PIC) # no need for major at all, it's an ld-time redirection only SYMLINKS+= libncursesw.so ${LIBDIR}/libcursesw.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermcapw.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermlibw.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtinfow.so # backward compat SYMLINKS+= libncursesw.so ${LIBDIR}/libncurses.so SYMLINKS+= libncursesw.so ${LIBDIR}/libcurses.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermcap.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermlib.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtinfo.so .endif .if ${MK_PROFILE} != "no" SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcursesw_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermcapw_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermlibw_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtinfow_p.a # backward compat SYMLINKS+= libncursesw_p.a ${LIBDIR}/libncurses_p.a SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcurses_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermcap_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermlib_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtinfo_p.a .endif -DOCSDIR= ${SHAREDIR}/doc/ncurses -DOCS= ncurses-intro.html hackguide.html +LIBADD+= tinfow +SHLIB_LDSCRIPT= libncursesw.ldscript -.if ${MK_HTML} != "no" -.PATH: ${NCURSES_DIR}/doc/html -FILESGROUPS= DOCS -.endif - -# Generated source -.ORDER: names.c codes.c - -names.c: MKnames.awk - ${AWK} -f ${NCURSES_DIR}/ncurses/tinfo/MKnames.awk bigstrings=${USE_BIG_STRINGS} ${NCURSES_DIR}/include/Caps > names.c - -codes.c: MKcodes.awk - ${AWK} -f ${NCURSES_DIR}/ncurses/tinfo/MKcodes.awk bigstrings=${USE_BIG_STRINGS} ${NCURSES_DIR}/include/Caps > codes.c +libncurses.ldscript: + @${ECHO} "INPUT(${SHLIB_NAME} AS NEEDED(-ltinfow))" >$@ lib_gen.c: MKlib_gen.sh curses.h ncurses_dll.h LC_ALL=C sh ${NCURSES_DIR}/ncurses/base/MKlib_gen.sh "${CPP:N${CCACHE_BIN}} ${CFLAGS}" \ "${AWK}" generated < curses.h >$@ -lib_keyname.c: keys.list MKkeyname.awk - ${AWK} -f ${NCURSES_DIR}/ncurses/base/MKkeyname.awk bigstrings=${USE_BIG_STRINGS} keys.list > lib_keyname.c - -unctrl.c: MKunctrl.awk - echo | ${AWK} -f ${NCURSES_DIR}/ncurses/base/MKunctrl.awk bigstrings=${USE_BIG_STRINGS} > unctrl.c - -comp_captab.c: MKcaptab.sh MKcaptab.awk Caps Caps-ncurses make_hash - env PATH=${BTOOLSPATH:U.}:${PATH} sh ${NCURSES_DIR}/ncurses/tinfo/MKcaptab.sh "${AWK}" \ - ${USE_BIG_STRINGS} ${NCURSES_DIR}/ncurses/tinfo/MKcaptab.awk \ - ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > comp_captab.c - expanded.c: MKexpanded.sh sh ${NCURSES_DIR}/ncurses/tty/MKexpanded.sh "${CC:N${CCACHE_BIN}} -E" ${CFLAGS} >expanded.c -fallback.c: MKfallback.sh - sh ${NCURSES_DIR}/ncurses/tinfo/MKfallback.sh "" "" "" > ${.TARGET}.tmp && \ - mv -f ${.TARGET}.tmp ${.TARGET} - -comp_userdefs.c: MKuserdefs.sh Caps Caps-ncurses make_hash - env PATH=${BTOOLSPATH:U.}:${PATH} sh ${NCURSES_DIR}/ncurses/tinfo/MKuserdefs.sh "${AWK}" \ - ${USE_BIG_STRINGS} ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > ${.TARGET} - -# Generated headers -nomacros.h: MKlib_gen.sh curses.h - LC_ALL=C sh ${NCURSES_DIR}/ncurses/base/MKlib_gen.sh "${CC:N${CCACHE_BIN}} -E ${CFLAGS}" \ - "${AWK}" generated < curses.h | fgrep undef > $@ - -init_keytry.h: keys.list make_keys - ${BTOOLSPATH:U.}/make_keys keys.list > init_keytry.h - -hashsize.h: MKhashsize.sh Caps Caps-ncurses - sh ${NCURSES_DIR}/include/MKhashsize.sh ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > $@ - -parametrized.h: MKparametrized.sh Caps Caps-ncurses - AWK=${AWK} sh ${NCURSES_DIR}/include/MKparametrized.sh \ - ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > $@ - -term.h: MKterm.h.awk edit_cfg.sh Caps Caps-ncurses - ${AWK} -f MKterm.h.awk ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > $@.new - sh ${NCURSES_DIR}/include/edit_cfg.sh ${NCURSES_CFG_H} $@.new - mv -f $@.new $@ - -curses.h: curses.head MKkey_defs.sh Caps Caps-ncurses - cat curses.head > $@.new - AWK=${AWK} _POSIX2_VERSION=199209 sh ${NCURSES_DIR}/include/MKkey_defs.sh \ - ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses >> $@.new - cat ${NCURSES_DIR}/include/curses.wide >> $@.new - cat ${NCURSES_DIR}/include/curses.tail >> $@.new - mv -f $@.new $@ - -# Generated intermediate files -keys.list: MKkeys_list.sh Caps Caps-ncurses - AWK=${AWK} sh ${NCURSES_DIR}/ncurses/tinfo/MKkeys_list.sh \ - ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses | LC_ALL=C sort > keys.list - -# Build tools -DEPENDOBJS+= make_hash make_keys -build-tools: make_hash make_keys - -make_keys: make_keys.c names.c ncurses_def.h ${HEADERS} ${BUILD_TOOLS_META} - ${CC:N${CCACHE_BIN}} -o $@ ${CFLAGS} ${NCURSES_DIR}/ncurses/tinfo/make_keys.c - -make_hash: make_hash.c hashsize.h ncurses_def.h ${HEADERS} ${BUILD_TOOLS_META} - ${CC:N${CCACHE_BIN}} -o $@ ${CFLAGS} -DMAIN_PROGRAM \ - ${NCURSES_DIR}/ncurses/tinfo/make_hash.c - -# ./configure generated -MKterm.h.awk: MKterm.h.awk.in - sed <${NCURSES_DIR}/include/MKterm.h.awk.in >$@ \ - -e "/@BROKEN_LINKER@/s%%${BROKEN_LINKER}%" \ - -e "s%@NCURSES_USE_DATABASE@%1%g" \ - -e "s%@NCURSES_USE_TERMCAP@%1%g" \ - -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ - -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" \ - -e "/@NCURSES_CONST@/s%%${NCURSES_CONST}%" \ - -e "/@NCURSES_TPARM_VARARGS@/s%%${NCURSES_TPARM_VARARGS}%" \ - -e "/@NCURSES_SBOOL@/s%%${NCURSES_SBOOL}%" \ - -e "/@NCURSES_XNAMES@/s%%${NCURSES_XNAMES}%" \ - -e "/@NCURSES_EXT_COLORS@/s%%${NCURSES_EXT_COLORS}%" \ - -e "/@HAVE_TERMIOS_H@/s%%${HAVE_TERMIOS_H}%" \ - -e "/@HAVE_TERMIO_H@/s%%${HAVE_TERMIO_H}%" \ - -e "/@HAVE_TCGETATTR@/s%%${HAVE_TCGETATTR}%" \ - -e "s%@cf_cv_enable_reentrant@%${ENABLE_REENTRANT}%g" \ - -e "s%@NCURSES_SP_FUNCS@%1%" \ - -e "s%@NCURSES_PATCH@%${NCURSES_PATCH}%" - -termcap.h: termcap.h.in - sed <${NCURSES_DIR}/include/termcap.h.in >$@ \ - -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ - -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" \ - -e "/@NCURSES_CONST@/s%%${NCURSES_CONST}%" \ - -e "/@NCURSES_OSPEED@/s%%${NCURSES_OSPEED}%" - -ncurses_dll.h: ncurses_dll.h.in - sed <${NCURSES_DIR}/include/ncurses_dll.h.in >$@ \ - -e "s%@NCURSES_WRAP_PREFIX@%_nc_%g" - -curses.head: curses.h.in - sed <${NCURSES_DIR}/include/curses.h.in >$@ \ - -e "/@BROKEN_LINKER@/s%%${BROKEN_LINKER}%" \ - -e "/@HAVE_VSSCANF@/s%%${HAVE_VSSCANF}%" \ - -e "/@HAVE_STDINT_H@/s%%${HAVE_STDINT_H}%" \ - -e "/@NCURSES_CH_T@/s%%${NCURSES_CH_T}%" \ - -e "/@NCURSES_CONST@/s%%${NCURSES_CONST}%" \ - -e "/@NCURSES_EXT_COLORS@/s%%${NCURSES_EXT_COLORS}%" \ - -e "/@NCURSES_EXT_FUNCS@/s%%${NCURSES_EXT_FUNCS}%" \ - -e "/@NCURSES_INLINE@/s%%${NCURSES_INLINE}%" \ - -e "/@NCURSES_LIBUTF8@/s%%${NCURSES_LIBUTF8}%" \ - -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ - -e "/@NCURSES_MBSTATE_T@/s%%${NCURSES_MBSTATE_T}%" \ - -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" \ - -e "/@NCURSES_MOUSE_VERSION@/s%%${NCURSES_MOUSE_VERSION}%" \ - -e "/@NCURSES_OK_WCHAR_T@/s%%${NCURSES_OK_WCHAR_T}%" \ - -e "/@NCURSES_OPAQUE@/s%%${NCURSES_OPAQUE}%" \ - -e "/@NCURSES_OPAQUE_FORM@/s%%${NCURSES_OPAQUE_FORM}%" \ - -e "/@NCURSES_OPAQUE_MENU@/s%%${NCURSES_OPAQUE_MENU}%" \ - -e "/@NCURSES_OPAQUE_PANEL@/s%%${NCURSES_OPAQUE_PANEL}%" \ - -e "/@NCURSES_PATCH@/s%%${NCURSES_PATCH}%" \ - -e "/@NCURSES_SIZE_T@/s%%${NCURSES_SIZE_T}%" \ - -e "/@NCURSES_TPARM_VARARGS@/s%%${NCURSES_TPARM_VARARGS}%" \ - -e "/@NCURSES_WATTR_MACROS@/s%%${NCURSES_WATTR_MACROS}%"\ - -e "/@NCURSES_WCHAR_T@/s%%${NCURSES_WCHAR_T}%" \ - -e "/@NCURSES_WCHAR_T@/s%%${NCURSES_WCHAR_T}%" \ - -e "/@NCURSES_WCWIDTH_GRAPHICS@/s%%${NCURSES_WCWIDTH_GRAPHICS}%g" \ - -e "/@NCURSES_WINT_T@/s%%${NCURSES_WINT_T}%" \ - -e "/@NCURSES_INTEROP_FUNCS@/s%%${NCURSES_INTEROP_FUNCS}%g" \ - -e "/@NCURSES_TPARM_ARG@/s%%${NCURSES_TPARM_ARG}%g" \ - -e "/@NCURSES_SP_FUNCS@/s%%${NCURSES_SP_FUNCS}%g" \ - -e "/@NEED_WCHAR_H@/s%%${NEED_WCHAR_H}%" \ - -e "/@USE_CXX_BOOL@/s%%${USE_CXX_BOOL}%" \ - -e "/@GENERATED_EXT_FUNCS@/s%%generated%g" \ - -e "s%@NCURSES_CCHARW_MAX@%5%g" \ - -e "s%@cf_cv_1UL@%${ONEUL}%g" \ - -e "s%@cf_cv_builtin_bool@%${BUILTIN_BOOL}%g" \ - -e "s%@cf_cv_enable_lp64@%${ENABLE_LP64}%g" \ - -e "s%@cf_cv_enable_opaque@%${ENABLE_OPAQUE}%g" \ - -e "s%@cf_cv_enable_reentrant@%${ENABLE_REENTRANT}%g" \ - -e "s%@cf_cv_header_stdbool_h@%${HEADER_STDBOOL}%g" \ - -e "s%@cf_cv_type_of_bool@%${TYPE_OF_BOOL}%g" \ - -e "s%@cf_cv_typeof_chtype@%${TYPEOF_CHTYPE}%g" \ - -e "s%@cf_cv_typeof_mmask_t@%${TYPEOF_MMASK_T}%g" \ - -e "s/ _WCHAR_T/ __wchar_t/g" \ - -e "s/ _WINT_T/ __wint_t/g" - -unctrl.h: unctrl.h.in - sed <${NCURSES_DIR}/include/$@.in >$@ \ - -e "s%@NCURSES_SP_FUNCS@%${NCURSES_SP_FUNCS}%g" \ - -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ - -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" - -# MAN page gunk -terminfo.5: MKterminfo.sh terminfo.head Caps - sh ${NCURSES_DIR}/man/MKterminfo.sh ${NCURSES_DIR}/man/terminfo.head \ - ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/man/terminfo.tail >$@ - -CLEANFILES+= terminfo.5 - -.PATH: ${NCURSES_DIR}/man -MAN= \ - curs_addch.3 \ - curs_addchstr.3 \ - curs_addstr.3 \ - curs_attr.3 \ - curs_beep.3 \ - curs_bkgd.3 \ - curs_bkgrnd.3 \ - curs_border.3 \ - curs_border_set.3 \ - curs_clear.3 \ - curs_color.3 \ - curs_delch.3 \ - curs_deleteln.3 \ - curs_extend.3 \ - curs_getcchar.3 \ - curs_getch.3 \ - curs_getstr.3 \ - curs_getyx.3 \ - curs_inch.3 \ - curs_inchstr.3 \ - curs_initscr.3 \ - curs_inopts.3 \ - curs_insch.3 \ - curs_insstr.3 \ - curs_instr.3 \ - curs_inwstr.3 \ - curs_kernel.3 \ - curs_legacy.3 \ - curs_memleaks.3 \ - curs_mouse.3 \ - curs_move.3 \ - curs_opaque.3 \ - curs_outopts.3 \ - curs_overlay.3 \ - curs_pad.3 \ - curs_print.3 \ - curs_refresh.3 \ - curs_scr_dump.3 \ - curs_scroll.3 \ - curs_slk.3 \ - curs_sp_funcs.3 \ - curs_termattrs.3 \ - curs_termcap.3 \ - curs_terminfo.3 \ - curs_threads.3 \ - curs_touch.3 \ - curs_trace.3 \ - curs_util.3 \ - curs_variables.3 \ - curs_window.3 \ - default_colors.3 \ - define_key.3 \ - key_defined.3 \ - keybound.3 \ - keyok.3 \ - legacy_coding.3 \ - ncurses.3 \ - new_pair.3 \ - resizeterm.3 \ - term_variables.3 \ - wresize.3 - -MAN+= \ - curs_add_wch.3 \ - curs_add_wchstr.3 \ - curs_addwstr.3 \ - curs_get_wch.3 \ - curs_get_wstr.3 \ - curs_in_wch.3 \ - curs_in_wchstr.3 \ - curs_ins_wch.3 \ - curs_ins_wstr.3 \ - curs_printw.3 \ - curs_scanw.3 - -MAN+= term.5 terminfo.5 scr_dump.5 user_caps.5 -MAN+= term.7 - -CLEANFILES+= ${MAN:M*.3} - -MLINKS= ncurses.3 curses.3 \ - curs_addch.3 addch.3 \ - curs_addch.3 echochar.3 \ - curs_addch.3 mvaddch.3 \ - curs_addch.3 mvwaddch.3 \ - curs_addch.3 waddch.3 \ - curs_addch.3 wechochar.3 \ - curs_addchstr.3 addchnstr.3 \ - curs_addchstr.3 addchstr.3 \ - curs_addchstr.3 mvaddchnstr.3 \ - curs_addchstr.3 mvaddchstr.3 \ - curs_addchstr.3 mvwaddchnstr.3 \ - curs_addchstr.3 mvwaddchstr.3 \ - curs_addchstr.3 waddchnstr.3 \ - curs_addchstr.3 waddchstr.3 \ - curs_addstr.3 addnstr.3 \ - curs_addstr.3 addstr.3 \ - curs_addstr.3 mvaddnstr.3 \ - curs_addstr.3 mvaddstr.3 \ - curs_addstr.3 mvwaddnstr.3 \ - curs_addstr.3 mvwaddstr.3 \ - curs_addstr.3 waddnstr.3 \ - curs_addstr.3 waddstr.3 \ - curs_attr.3 PAIR_NUMBER.3 \ - curs_attr.3 attr_get.3 \ - curs_attr.3 attr_off.3 \ - curs_attr.3 attr_on.3 \ - curs_attr.3 attr_set.3 \ - curs_attr.3 attroff.3 \ - curs_attr.3 attron.3 \ - curs_attr.3 attrset.3 \ - curs_attr.3 chgat.3 \ - curs_attr.3 color_set.3 \ - curs_attr.3 mvchgat.3 \ - curs_attr.3 mvwchgat.3 \ - curs_attr.3 standend.3 \ - curs_attr.3 standout.3 \ - curs_attr.3 wattr_get.3 \ - curs_attr.3 wattr_off.3 \ - curs_attr.3 wattr_on.3 \ - curs_attr.3 wattr_set.3 \ - curs_attr.3 wattroff.3 \ - curs_attr.3 wattron.3 \ - curs_attr.3 wattrset.3 \ - curs_attr.3 wchgat.3 \ - curs_attr.3 wcolor_set.3 \ - curs_attr.3 wstandend.3 \ - curs_attr.3 wstandout.3 \ - curs_beep.3 beep.3 \ - curs_beep.3 flash.3 \ - curs_bkgd.3 bkgd.3 \ - curs_bkgd.3 bkgdset.3 \ - curs_bkgd.3 getbkgd.3 \ - curs_bkgd.3 wbkgd.3 \ - curs_bkgd.3 wbkgdset.3 \ - curs_bkgrnd.3 bkgrnd.3 \ - curs_bkgrnd.3 bkgrndset.3 \ - curs_bkgrnd.3 getbkgrnd.3 \ - curs_bkgrnd.3 wbkgrnd.3 \ - curs_bkgrnd.3 wbkgrndset.3 \ - curs_bkgrnd.3 wgetbkgrnd.3 \ - curs_border.3 border.3 \ - curs_border.3 box.3 \ - curs_border.3 hline.3 \ - curs_border.3 mvhline.3 \ - curs_border.3 mvvline.3 \ - curs_border.3 mvwhline.3 \ - curs_border.3 mvwvline.3 \ - curs_border.3 vline.3 \ - curs_border.3 wborder.3 \ - curs_border.3 whline.3 \ - curs_border.3 wvline.3 \ - curs_border_set.3 border_set.3 \ - curs_border_set.3 box_set.3 \ - curs_border_set.3 hline_set.3 \ - curs_border_set.3 mvhline_set.3 \ - curs_border_set.3 mvvline_set.3 \ - curs_border_set.3 mvwhline_set.3 \ - curs_border_set.3 mvwvline_set.3 \ - curs_border_set.3 vline_set.3 \ - curs_border_set.3 wborder_set.3 \ - curs_border_set.3 whline_set.3 \ - curs_border_set.3 wvline_set.3 \ - curs_clear.3 clear.3 \ - curs_clear.3 clrtobot.3 \ - curs_clear.3 clrtoeol.3 \ - curs_clear.3 erase.3 \ - curs_clear.3 wclear.3 \ - curs_clear.3 wclrtobot.3 \ - curs_clear.3 wclrtoeol.3 \ - curs_clear.3 werase.3 \ - curs_color.3 COLOR_PAIR.3 \ - curs_color.3 can_change_color.3 \ - curs_color.3 color_content.3 \ - curs_color.3 has_colors.3 \ - curs_color.3 init_color.3 \ - curs_color.3 init_pair.3 \ - curs_color.3 pair_content.3 \ - curs_color.3 start_color.3 \ - curs_delch.3 delch.3 \ - curs_delch.3 mvdelch.3 \ - curs_delch.3 mvwdelch.3 \ - curs_delch.3 wdelch.3 \ - curs_deleteln.3 deleteln.3 \ - curs_deleteln.3 insdelln.3 \ - curs_deleteln.3 insertln.3 \ - curs_deleteln.3 wdeleteln.3 \ - curs_deleteln.3 winsdelln.3 \ - curs_deleteln.3 winsertln.3 \ - curs_extend.3 curses_version.3 \ - curs_extend.3 use_extended_names.3 \ - curs_getcchar.3 getcchar.3 \ - curs_getcchar.3 setcchar.3 \ - curs_getch.3 getch.3 \ - curs_getch.3 has_key.3 \ - curs_getch.3 mvgetch.3 \ - curs_getch.3 mvwgetch.3 \ - curs_getch.3 ungetch.3 \ - curs_getch.3 wgetch.3 \ - curs_getstr.3 getnstr.3 \ - curs_getstr.3 getstr.3 \ - curs_getstr.3 mvgetnstr.3 \ - curs_getstr.3 mvgetstr.3 \ - curs_getstr.3 mvwgetnstr.3 \ - curs_getstr.3 mvwgetstr.3 \ - curs_getstr.3 wgetnstr.3 \ - curs_getstr.3 wgetstr.3 \ - curs_getyx.3 getbegyx.3 \ - curs_getyx.3 getmaxyx.3 \ - curs_getyx.3 getparyx.3 \ - curs_getyx.3 getyx.3 \ - curs_inch.3 inch.3 \ - curs_inch.3 mvinch.3 \ - curs_inch.3 mvwinch.3 \ - curs_inch.3 winch.3 \ - curs_inchstr.3 inchnstr.3 \ - curs_inchstr.3 inchstr.3 \ - curs_inchstr.3 mvinchnstr.3 \ - curs_inchstr.3 mvinchstr.3 \ - curs_inchstr.3 mvwinchnstr.3 \ - curs_inchstr.3 mvwinchstr.3 \ - curs_inchstr.3 winchnstr.3 \ - curs_inchstr.3 winchstr.3 \ - curs_initscr.3 delscreen.3 \ - curs_initscr.3 endwin.3 \ - curs_initscr.3 initscr.3 \ - curs_initscr.3 isendwin.3 \ - curs_initscr.3 newterm.3 \ - curs_initscr.3 set_term.3 \ - curs_inopts.3 cbreak.3 \ - curs_inopts.3 echo.3 \ - curs_inopts.3 halfdelay.3 \ - curs_inopts.3 intrflush.3 \ - curs_inopts.3 keypad.3 \ - curs_inopts.3 meta.3 \ - curs_inopts.3 nocbreak.3 \ - curs_inopts.3 nodelay.3 \ - curs_inopts.3 noecho.3 \ - curs_inopts.3 noqiflush.3 \ - curs_inopts.3 noraw.3 \ - curs_inopts.3 notimeout.3 \ - curs_inopts.3 qiflush.3 \ - curs_inopts.3 raw.3 \ - curs_inopts.3 timeout.3 \ - curs_inopts.3 typeahead.3 \ - curs_inopts.3 wtimeout.3 \ - curs_insch.3 insch.3 \ - curs_insch.3 mvinsch.3 \ - curs_insch.3 mvwinsch.3 \ - curs_insch.3 winsch.3 \ - curs_insstr.3 insnstr.3 \ - curs_insstr.3 insstr.3 \ - curs_insstr.3 mvinsnstr.3 \ - curs_insstr.3 mvinsstr.3 \ - curs_insstr.3 mvwinsnstr.3 \ - curs_insstr.3 mvwinsstr.3 \ - curs_insstr.3 winsnstr.3 \ - curs_insstr.3 winsstr.3 \ - curs_instr.3 innstr.3 \ - curs_instr.3 instr.3 \ - curs_instr.3 mvinnstr.3 \ - curs_instr.3 mvinstr.3 \ - curs_instr.3 mvwinnstr.3 \ - curs_instr.3 mvwinstr.3 \ - curs_instr.3 winnstr.3 \ - curs_instr.3 winstr.3 \ - curs_kernel.3 curs_set.3 \ - curs_kernel.3 def_prog_mode.3 \ - curs_kernel.3 def_shell_mode.3 \ - curs_kernel.3 getsyx.3 \ - curs_kernel.3 napms.3 \ - curs_kernel.3 reset_prog_mode.3 \ - curs_kernel.3 reset_shell_mode.3 \ - curs_kernel.3 resetty.3 \ - curs_kernel.3 ripoffline.3 \ - curs_kernel.3 savetty.3 \ - curs_kernel.3 setsyx.3 \ - curs_legacy.3 getbegx.3 \ - curs_legacy.3 getbegy.3 \ - curs_legacy.3 getcurx.3 \ - curs_legacy.3 getcury.3 \ - curs_legacy.3 getmaxx.3 \ - curs_legacy.3 getmaxy.3 \ - curs_legacy.3 getparx.3 \ - curs_legacy.3 getpary.3 \ - curs_memleaks.3 _nc_free_and_exit.3 \ - curs_memleaks.3 _nc_freeall.3 \ - curs_mouse.3 getmouse.3 \ - curs_mouse.3 mouse_trafo.3 \ - curs_mouse.3 mouseinterval.3 \ - curs_mouse.3 mousemask.3 \ - curs_mouse.3 ungetmouse.3 \ - curs_mouse.3 wenclose.3 \ - curs_mouse.3 wmouse_trafo.3 \ - curs_move.3 move.3 \ - curs_move.3 wmove.3 \ - curs_opaque.3 is_cleared.3 \ - curs_opaque.3 is_idcok.3 \ - curs_opaque.3 is_idlok.3 \ - curs_opaque.3 is_immedok.3 \ - curs_opaque.3 is_keypad.3 \ - curs_opaque.3 is_leaveok.3 \ - curs_opaque.3 is_nodelay.3 \ - curs_opaque.3 is_notimeout.3 \ - curs_opaque.3 is_scrollok.3 \ - curs_opaque.3 is_syncok.3 \ - curs_opaque.3 is_timeout.3 \ - curs_opaque.3 wgetparent.3 \ - curs_opaque.3 wgetscrreg.3 \ - curs_outopts.3 clearok.3 \ - curs_outopts.3 idcok.3 \ - curs_outopts.3 idlok.3 \ - curs_outopts.3 immedok.3 \ - curs_outopts.3 leaveok.3 \ - curs_outopts.3 nl.3 \ - curs_outopts.3 nonl.3 \ - curs_outopts.3 scrollok.3 \ - curs_outopts.3 setscrreg.3 \ - curs_outopts.3 wsetscrreg.3 \ - curs_overlay.3 copywin.3 \ - curs_overlay.3 overlay.3 \ - curs_overlay.3 overwrite.3 \ - curs_pad.3 newpad.3 \ - curs_pad.3 pecho_wchar.3 \ - curs_pad.3 pechochar.3 \ - curs_pad.3 pnoutrefresh.3 \ - curs_pad.3 prefresh.3 \ - curs_pad.3 subpad.3 \ - curs_print.3 mcprint.3 \ - curs_refresh.3 doupdate.3 \ - curs_refresh.3 redrawwin.3 \ - curs_refresh.3 refresh.3 \ - curs_refresh.3 wnoutrefresh.3 \ - curs_refresh.3 wredrawln.3 \ - curs_refresh.3 wrefresh.3 \ - curs_scr_dump.3 scr_dump.3 \ - curs_scr_dump.3 scr_init.3 \ - curs_scr_dump.3 scr_restore.3 \ - curs_scr_dump.3 scr_set.3 \ - curs_scroll.3 scrl.3 \ - curs_scroll.3 scroll.3 \ - curs_scroll.3 wscrl.3 \ - curs_slk.3 slk_attr.3 \ - curs_slk.3 slk_attr_off.3 \ - curs_slk.3 slk_attr_on.3 \ - curs_slk.3 slk_attr_set.3 \ - curs_slk.3 slk_attroff.3 \ - curs_slk.3 slk_attron.3 \ - curs_slk.3 slk_attrset.3 \ - curs_slk.3 slk_clear.3 \ - curs_slk.3 slk_color.3 \ - curs_slk.3 slk_init.3 \ - curs_slk.3 slk_label.3 \ - curs_slk.3 slk_noutrefresh.3 \ - curs_slk.3 slk_refresh.3 \ - curs_slk.3 slk_restore.3 \ - curs_slk.3 slk_set.3 \ - curs_slk.3 slk_touch.3 \ - curs_sp_funcs.3 sp_funcs.3 \ - curs_sp_funcs.3 assume_default_colors_sp.3 \ - curs_sp_funcs.3 baudrate_sp.3 \ - curs_sp_funcs.3 beep_sp.3 \ - curs_sp_funcs.3 can_change_color_sp.3 \ - curs_sp_funcs.3 cbreak_sp.3 \ - curs_sp_funcs.3 ceiling_panel.3 \ - curs_sp_funcs.3 color_content_sp.3 \ - curs_sp_funcs.3 curs_set_sp.3 \ - curs_sp_funcs.3 def_prog_mode_sp.3 \ - curs_sp_funcs.3 def_shell_mode_sp.3 \ - curs_sp_funcs.3 define_key_sp.3 \ - curs_sp_funcs.3 del_curterm_sp.3 \ - curs_sp_funcs.3 delay_output_sp.3 \ - curs_sp_funcs.3 doupdate_sp.3 \ - curs_sp_funcs.3 echo_sp.3 \ - curs_sp_funcs.3 endwin_sp.3 \ - curs_sp_funcs.3 erasechar_sp.3 \ - curs_sp_funcs.3 filter_sp.3 \ - curs_sp_funcs.3 flash_sp.3 \ - curs_sp_funcs.3 flushinp_sp.3 \ - curs_sp_funcs.3 get_escdelay_sp.3 \ - curs_sp_funcs.3 getmouse_sp.3 \ - curs_sp_funcs.3 getwin_sp.3 \ - curs_sp_funcs.3 ground_panel.3 \ - curs_sp_funcs.3 halfdelay_sp.3 \ - curs_sp_funcs.3 has_colors_sp.3 \ - curs_sp_funcs.3 has_ic_sp.3 \ - curs_sp_funcs.3 has_il_sp.3 \ - curs_sp_funcs.3 has_key_sp.3 \ - curs_sp_funcs.3 has_mouse_sp.3 \ - curs_sp_funcs.3 init_color_sp.3 \ - curs_sp_funcs.3 init_pair_sp.3 \ - curs_sp_funcs.3 intrflush_sp.3 \ - curs_sp_funcs.3 is_term_resized_sp.3 \ - curs_sp_funcs.3 isendwin_sp.3 \ - curs_sp_funcs.3 key_defined_sp.3 \ - curs_sp_funcs.3 keybound_sp.3 \ - curs_sp_funcs.3 keyname_sp.3 \ - curs_sp_funcs.3 keyok_sp.3 \ - curs_sp_funcs.3 killchar_sp.3 \ - curs_sp_funcs.3 mcprint_sp.3 \ - curs_sp_funcs.3 mouseinterval_sp.3 \ - curs_sp_funcs.3 mousemask_sp.3 \ - curs_sp_funcs.3 mvcur_sp.3 \ - curs_sp_funcs.3 napms_sp.3 \ - curs_sp_funcs.3 new_form_sp.3 \ - curs_sp_funcs.3 new_menu_sp.3 \ - curs_sp_funcs.3 new_prescr.3 \ - curs_sp_funcs.3 newpad_sp.3 \ - curs_sp_funcs.3 newterm_sp.3 \ - curs_sp_funcs.3 newwin_sp.3 \ - curs_sp_funcs.3 nl_sp.3 \ - curs_sp_funcs.3 nocbreak_sp.3 \ - curs_sp_funcs.3 noecho_sp.3 \ - curs_sp_funcs.3 nofilter_sp.3 \ - curs_sp_funcs.3 nonl_sp.3 \ - curs_sp_funcs.3 noqiflush_sp.3 \ - curs_sp_funcs.3 noraw_sp.3 \ - curs_sp_funcs.3 pair_content_sp.3 \ - curs_sp_funcs.3 putp_sp.3 \ - curs_sp_funcs.3 qiflush_sp.3 \ - curs_sp_funcs.3 raw_sp.3 \ - curs_sp_funcs.3 reset_prog_mode_sp.3 \ - curs_sp_funcs.3 reset_shell_mode_sp.3 \ - curs_sp_funcs.3 resetty_sp.3 \ - curs_sp_funcs.3 resize_term_sp.3 \ - curs_sp_funcs.3 resizeterm_sp.3 \ - curs_sp_funcs.3 restartterm_sp.3 \ - curs_sp_funcs.3 ripoffline_sp.3 \ - curs_sp_funcs.3 savetty_sp.3 \ - curs_sp_funcs.3 scr_init_sp.3 \ - curs_sp_funcs.3 scr_restore_sp.3 \ - curs_sp_funcs.3 scr_set_sp.3 \ - curs_sp_funcs.3 set_curterm_sp.3 \ - curs_sp_funcs.3 set_escdelay_sp.3 \ - curs_sp_funcs.3 set_tabsize_sp.3 \ - curs_sp_funcs.3 slk_attr_set_sp.3 \ - curs_sp_funcs.3 slk_attr_sp.3 \ - curs_sp_funcs.3 slk_attroff_sp.3 \ - curs_sp_funcs.3 slk_attron_sp.3 \ - curs_sp_funcs.3 slk_attrset_sp.3 \ - curs_sp_funcs.3 slk_clear_sp.3 \ - curs_sp_funcs.3 slk_color_sp.3 \ - curs_sp_funcs.3 slk_init_sp.3 \ - curs_sp_funcs.3 slk_label_sp.3 \ - curs_sp_funcs.3 slk_noutrefresh_sp.3 \ - curs_sp_funcs.3 slk_refresh_sp.3 \ - curs_sp_funcs.3 slk_restore_sp.3 \ - curs_sp_funcs.3 slk_set_sp.3 \ - curs_sp_funcs.3 slk_touch_sp.3 \ - curs_sp_funcs.3 start_color_sp.3 \ - curs_sp_funcs.3 term_attrs_sp.3 \ - curs_sp_funcs.3 termattrs_sp.3 \ - curs_sp_funcs.3 termname_sp.3 \ - curs_sp_funcs.3 tgetent_sp.3 \ - curs_sp_funcs.3 tgetflag_sp.3 \ - curs_sp_funcs.3 tgetnum_sp.3 \ - curs_sp_funcs.3 tgetstr_sp.3 \ - curs_sp_funcs.3 tigetflag_sp.3 \ - curs_sp_funcs.3 tigetnum_sp.3 \ - curs_sp_funcs.3 tigetstr_sp.3 \ - curs_sp_funcs.3 tputs_sp.3 \ - curs_sp_funcs.3 typeahead_sp.3 \ - curs_sp_funcs.3 unctrl_sp.3 \ - curs_sp_funcs.3 unget_wch_sp.3 \ - curs_sp_funcs.3 ungetch_sp.3 \ - curs_sp_funcs.3 ungetmouse_sp.3 \ - curs_sp_funcs.3 update_panels_sp.3 \ - curs_sp_funcs.3 use_default_colors_sp.3 \ - curs_sp_funcs.3 use_env_sp.3 \ - curs_sp_funcs.3 use_legacy_coding_sp.3 \ - curs_sp_funcs.3 vid_attr_sp.3 \ - curs_sp_funcs.3 vid_puts_sp.3 \ - curs_sp_funcs.3 vidattr_sp.3 \ - curs_sp_funcs.3 vidputs_sp.3 \ - curs_sp_funcs.3 wunctrl_sp.3 \ - curs_termattrs.3 baudrate.3 \ - curs_termattrs.3 erasechar.3 \ - curs_termattrs.3 erasewchar.3 \ - curs_termattrs.3 has_ic.3 \ - curs_termattrs.3 has_il.3 \ - curs_termattrs.3 killchar.3 \ - curs_termattrs.3 killwchar.3 \ - curs_termattrs.3 longname.3 \ - curs_termattrs.3 term_attrs.3 \ - curs_termattrs.3 termattrs.3 \ - curs_termattrs.3 termname.3 \ - curs_termcap.3 termcap.3 \ - curs_termcap.3 tgetent.3 \ - curs_termcap.3 tgetflag.3 \ - curs_termcap.3 tgetnum.3 \ - curs_termcap.3 tgetstr.3 \ - curs_termcap.3 tgoto.3 \ - curs_termcap.3 tputs.3 \ - curs_terminfo.3 del_curterm.3 \ - curs_terminfo.3 mvcur.3 \ - curs_terminfo.3 putp.3 \ - curs_terminfo.3 restartterm.3 \ - curs_terminfo.3 set_curterm.3 \ - curs_terminfo.3 setterm.3 \ - curs_terminfo.3 setupterm.3 \ - curs_terminfo.3 tigetflag.3 \ - curs_terminfo.3 tigetnum.3 \ - curs_terminfo.3 tigetstr.3 \ - curs_terminfo.3 tparm.3 \ - curs_terminfo.3 vid_attr.3 \ - curs_terminfo.3 vid_puts.3 \ - curs_terminfo.3 vidattr.3 \ - curs_terminfo.3 vidputs.3 \ - curs_threads.3 set_escdelay.3 \ - curs_threads.3 set_tabsize.3 \ - curs_threads.3 use_screen.3 \ - curs_threads.3 use_window.3 \ - curs_touch.3 is_linetouched.3 \ - curs_touch.3 is_wintouched.3 \ - curs_touch.3 touchline.3 \ - curs_touch.3 touchwin.3 \ - curs_touch.3 untouchwin.3 \ - curs_touch.3 wtouchln.3 \ - curs_trace.3 _nc_tracebits.3 \ - curs_trace.3 _traceattr.3 \ - curs_trace.3 _traceattr2.3 \ - curs_trace.3 _tracechar.3 \ - curs_trace.3 _tracechtype.3 \ - curs_trace.3 _tracechtype2.3 \ - curs_trace.3 _tracedump.3 \ - curs_trace.3 _tracef.3 \ - curs_trace.3 _tracemouse.3 \ - curs_trace.3 trace.3 \ - curs_util.3 delay_output.3 \ - curs_util.3 filter.3 \ - curs_util.3 flushinp.3 \ - curs_util.3 getwin.3 \ - curs_util.3 key_name.3 \ - curs_util.3 keyname.3 \ - curs_util.3 nofilter.3 \ - curs_util.3 putwin.3 \ - curs_util.3 unctrl.3 \ - curs_util.3 use_env.3 \ - curs_util.3 wunctrl.3 \ - curs_window.3 delwin.3 \ - curs_window.3 derwin.3 \ - curs_window.3 dupwin.3 \ - curs_window.3 mvderwin.3 \ - curs_window.3 mvwin.3 \ - curs_window.3 newwin.3 \ - curs_window.3 subwin.3 \ - curs_window.3 syncok.3 \ - curs_window.3 wcursyncup.3 \ - curs_window.3 wsyncdown.3 \ - curs_window.3 wsyncup.3 \ - default_colors.3 assume_default_colors.3 \ - default_colors.3 use_default_colors.3 \ - legacy_coding.3 use_legacy_coding.3 \ - resizeterm.3 is_term_resized.3 \ - resizeterm.3 resize_term.3 - -MLINKS+=curs_add_wch.3 add_wch.3 \ - curs_add_wch.3 echo_wchar.3 \ - curs_add_wch.3 mvadd_wch.3 \ - curs_add_wch.3 mvwadd_wch.3 \ - curs_add_wch.3 wadd_wch.3 \ - curs_add_wch.3 wecho_wchar.3 \ - curs_add_wchstr.3 add_wchnstr.3 \ - curs_add_wchstr.3 add_wchstr.3 \ - curs_add_wchstr.3 mvadd_wchnstr.3 \ - curs_add_wchstr.3 mvadd_wchstr.3 \ - curs_add_wchstr.3 mvwadd_wchnstr.3 \ - curs_add_wchstr.3 mvwadd_wchstr.3 \ - curs_add_wchstr.3 wadd_wchnstr.3 \ - curs_add_wchstr.3 wadd_wchstr.3 \ - curs_addwstr.3 addnwstr.3 \ - curs_addwstr.3 addwstr.3 \ - curs_addwstr.3 mvaddnwstr.3 \ - curs_addwstr.3 mvaddwstr.3 \ - curs_addwstr.3 mvwaddnwstr.3 \ - curs_addwstr.3 mvwaddwstr.3 \ - curs_addwstr.3 waddnwstr.3 \ - curs_addwstr.3 waddwstr.3 \ - curs_get_wch.3 get_wch.3 \ - curs_get_wch.3 mvget_wch.3 \ - curs_get_wch.3 mvwget_wch.3 \ - curs_get_wch.3 unget_wch.3 \ - curs_get_wch.3 wget_wch.3 \ - curs_get_wstr.3 get_wstr.3 \ - curs_get_wstr.3 getn_wstr.3 \ - curs_get_wstr.3 mvget_wstr.3 \ - curs_get_wstr.3 mvgetn_wstr.3 \ - curs_get_wstr.3 mvwget_wstr.3 \ - curs_get_wstr.3 mvwgetn_wstr.3 \ - curs_get_wstr.3 wget_wstr.3 \ - curs_get_wstr.3 wgetn_wstr.3 \ - curs_in_wch.3 in_wch.3 \ - curs_in_wch.3 mvin_wch.3 \ - curs_in_wch.3 mvwin_wch.3 \ - curs_in_wch.3 win_wch.3 \ - curs_in_wchstr.3 in_wchnstr.3 \ - curs_in_wchstr.3 in_wchstr.3 \ - curs_in_wchstr.3 mvin_wchnstr.3 \ - curs_in_wchstr.3 mvin_wchstr.3 \ - curs_in_wchstr.3 mvwin_wchnstr.3 \ - curs_in_wchstr.3 mvwin_wchstr.3 \ - curs_in_wchstr.3 win_wchnstr.3 \ - curs_in_wchstr.3 win_wchstr.3 \ - curs_ins_wch.3 ins_wch.3 \ - curs_ins_wch.3 mvins_wch.3 \ - curs_ins_wch.3 mvwins_wch.3 \ - curs_ins_wch.3 wins_wch.3 \ - curs_ins_wstr.3 ins_nwstr.3 \ - curs_ins_wstr.3 ins_wstr.3 \ - curs_ins_wstr.3 mvins_nwstr.3 \ - curs_ins_wstr.3 mvins_wstr.3 \ - curs_ins_wstr.3 mvwins_nwstr.3 \ - curs_ins_wstr.3 mvwins_wstr.3 \ - curs_ins_wstr.3 wins_nwstr.3 \ - curs_ins_wstr.3 wins_wstr.3 \ - curs_inwstr.3 innwstr.3 \ - curs_inwstr.3 inwstr.3 \ - curs_inwstr.3 mvinnwstr.3 \ - curs_inwstr.3 mvinwstr.3 \ - curs_inwstr.3 mvwinnwstr.3 \ - curs_inwstr.3 mvwinwstr.3 \ - curs_inwstr.3 winnwstr.3 \ - curs_inwstr.3 winwstr.3 \ - curs_printw.3 mvprintw.3 \ - curs_printw.3 mvwprintw.3 \ - curs_printw.3 printw.3 \ - curs_printw.3 vw_printw.3 \ - curs_printw.3 vwprintw.3 \ - curs_printw.3 wprintw.3 \ - curs_scanw.3 mvscanw.3 \ - curs_scanw.3 mvwscanw.3 \ - curs_scanw.3 scanw.3 \ - curs_scanw.3 vw_scanw.3 \ - curs_scanw.3 vwscanw.3 \ - curs_scanw.3 wscanw.3 - .include - -# Keep the .SUFFIXES line after the include of bsd.lib.mk -.SUFFIXES: .3 .3x -.3x.3: - cat ${.IMPSRC} > ${.TARGET} diff --git a/lib/ncurses/ncurses/libncursesw.ldscript b/lib/ncurses/ncurses/libncursesw.ldscript new file mode 100644 index 000000000000..ee02c6f0c386 --- /dev/null +++ b/lib/ncurses/ncurses/libncursesw.ldscript @@ -0,0 +1 @@ +INPUT(@@SHLIB@@ AS_NEEDED(-ltinfow)) diff --git a/lib/ncurses/ncurses/Makefile b/lib/ncurses/tinfo/Makefile similarity index 89% copy from lib/ncurses/ncurses/Makefile copy to lib/ncurses/tinfo/Makefile index 5a1fab7003a6..b02b8ee532c1 100644 --- a/lib/ncurses/ncurses/Makefile +++ b/lib/ncurses/tinfo/Makefile @@ -1,1146 +1,1066 @@ # $FreeBSD$ PACKAGE= clibs SHLIBDIR?= /lib .include .include "${.CURDIR:H}/config.mk" -LIB= ncursesw +LIB= tinfow SHLIB_MAJOR= 9 NO_LINT= NCURSES_MAJOR!= egrep 'NCURSES_MAJOR[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%' NCURSES_MINOR!= egrep 'NCURSES_MINOR[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%' NCURSES_PATCH!= egrep 'NCURSES_PATCH[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%' # From autoconf (!) NCURSES_CH_T= cchar_t NCURSES_OK_WCHAR_T= 1 NEED_WCHAR_H= 1 NCURSES_EXT_COLORS= 1 NCURSES_EXT_FUNCS= 1 NCURSES_CONST= const NCURSES_INLINE= inline NCURSES_LIBUTF8= 0 NCURSES_MBSTATE_T= 0 NCURSES_MOUSE_VERSION= 2 NCURSES_INTEROP_FUNCS= 1 NCURSES_OPAQUE= 0 NCURSES_OPAQUE= 0 NCURSES_OPAQUE_FORM= 0 NCURSES_OPAQUE_MENU= 0 NCURSES_OPAQUE_PANEL= 0 NCURSES_OSPEED= short NCURSES_SBOOL= char NCURSES_SIZE_T= short NCURSES_TPARM_VARARGS= 1 NCURSES_WCHAR_T= 0 NCURSES_WINT_T= 0 NCURSES_XNAMES= 1 NCURSES_WCWIDTH_GRAPHICS= 1 NCURSES_WATTR_MACROS= 1 NCURSES_TPARM_ARG= intptr_t NCURSES_SP_FUNCS= 1 BROKEN_LINKER= 0 BUILTIN_BOOL= 1 ENABLE_LP64= 1 ENABLE_OPAQUE= NCURSES_OPAQUE ENABLE_REENTRANT= 0 HAVE_TCGETATTR= 1 HAVE_TERMIOS_H= 1 HAVE_TERMIO_H= 0 HAVE_VSSCANF= 1 HAVE_STDINT_H= 1 HEADER_STDBOOL= 1 # XXX amd64 1L and int ONEUL= 1U TYPEOF_CHTYPE= uint32_t TYPEOF_MMASK_T= uint32_t TYPE_OF_BOOL= unsigned char USE_BIG_STRINGS= 1 USE_CXX_BOOL= defined(__cplusplus) GENSRCS= \ codes.c \ - expanded.c \ fallback.c \ - lib_gen.c \ lib_keyname.c \ names.c \ unctrl.c GENHDRS= \ curses.h \ hashsize.h \ init_keytry.h \ ncurses_def.h \ nomacros.h \ parametrized.h \ term.h \ termcap.h \ unctrl.h SRCS= ${GENHDRS} ${GENSRCS} .PATH: ${NCURSES_DIR}/ncurses/base SRCS+= \ define_key.c \ key_defined.c \ keybound.c \ keyok.c \ - legacy_coding.c \ - lib_addch.c \ - lib_addstr.c \ - lib_beep.c \ - lib_bkgd.c \ - lib_box.c \ - lib_chgat.c \ - lib_clear.c \ - lib_clearok.c \ - lib_clrbot.c \ - lib_clreol.c \ - lib_color.c \ - lib_colorset.c \ - lib_delch.c \ - lib_delwin.c \ - lib_dft_fgbg.c \ - lib_echo.c \ - lib_endwin.c \ - lib_erase.c \ - lib_flash.c \ - lib_freeall.c \ - lib_getch.c \ - lib_getstr.c \ - lib_hline.c \ - lib_immedok.c \ - lib_inchstr.c \ - lib_initscr.c \ - lib_insch.c \ - lib_insdel.c \ - lib_insnstr.c \ - lib_instr.c \ - lib_isendwin.c \ - lib_leaveok.c \ - lib_mouse.c \ - lib_move.c \ - lib_mvwin.c \ - lib_newterm.c \ - lib_newwin.c \ - lib_nl.c \ - lib_overlay.c \ - lib_pad.c \ - lib_printw.c \ - lib_redrawln.c \ - lib_refresh.c \ - lib_restart.c \ - lib_scanw.c \ - lib_screen.c \ - lib_scroll.c \ - lib_scrollok.c \ - lib_scrreg.c \ - lib_set_term.c \ - lib_slk.c \ - lib_slkatr_set.c \ - lib_slkatrof.c \ - lib_slkatron.c \ - lib_slkatrset.c \ - lib_slkattr.c \ - lib_slkclear.c \ - lib_slkcolor.c \ - lib_slkinit.c \ - lib_slklab.c \ - lib_slkrefr.c \ - lib_slkset.c \ - lib_slktouch.c \ - lib_touch.c \ - lib_ungetch.c \ - lib_vline.c \ - lib_wattroff.c \ - lib_wattron.c \ - lib_winch.c \ - lib_window.c \ - new_pair.c \ - nc_panel.c \ - resizeterm.c \ - safe_sprintf.c \ tries.c \ - version.c \ - vsscanf.c \ - wresize.c + version.c .PATH: ${NCURSES_DIR}/ncurses/tinfo SRCS+= \ access.c \ add_tries.c \ alloc_entry.c \ alloc_ttype.c \ captoinfo.c \ comp_captab.c \ comp_error.c \ comp_expand.c \ comp_hash.c \ comp_parse.c \ comp_scan.c \ comp_userdefs.c \ db_iterator.c \ doalloc.c \ entries.c \ free_ttype.c \ getenv_num.c \ hashed_db.c \ home_terminfo.c \ init_keytry.c \ lib_acs.c \ lib_baudrate.c \ lib_cur_term.c \ lib_data.c \ lib_has_cap.c \ lib_kernel.c \ lib_longname.c \ lib_napms.c \ lib_options.c \ - lib_print.c \ lib_raw.c \ lib_setup.c \ lib_termcap.c \ lib_termname.c \ lib_tgoto.c \ lib_ti.c \ lib_tparm.c \ lib_tputs.c \ lib_ttyflags.c \ name_match.c \ obsolete.c \ parse_entry.c \ read_entry.c \ read_termcap.c \ strings.c \ trim_sgr0.c \ write_entry.c .PATH: ${NCURSES_DIR}/ncurses/tty SRCS+= \ - hardscroll.c \ - hashmap.c \ - lib_mvcur.c \ - lib_tstp.c \ - lib_twait.c \ - lib_vidattr.c \ - tty_update.c - -.PATH: ${NCURSES_DIR}/ncurses/widechar -SRCS+= \ - charable.c \ - lib_add_wch.c \ - lib_box_set.c \ - lib_cchar.c \ - lib_erasewchar.c \ - lib_get_wch.c \ - lib_get_wstr.c \ - lib_hline_set.c \ - lib_in_wch.c \ - lib_in_wchnstr.c \ - lib_ins_wch.c \ - lib_inwstr.c \ - lib_key_name.c \ - lib_pecho_wchar.c \ - lib_slk_wset.c \ - lib_unget_wch.c \ - lib_vid_attr.c \ - lib_vline_set.c \ - lib_wacs.c \ - lib_wunctrl.c + lib_twait.c .PATH: ${NCURSES_DIR}/ncurses/trace SRCS+= \ lib_trace.c \ visbuf.c # Currently unused, for debugging libncurses itself. DBGSRCS= \ lib_traceatr.c \ lib_tracebits.c \ lib_tracechr.c \ lib_tracedmp.c \ lib_tracemse.c \ trace_buf.c \ trace_tries.c \ trace_xnames.c \ varargs.c CLEANFILES= ${GENSRCS} ${GENHDRS} keys.list make_hash term.h.new \ make_keys MKterm.h.awk comp_captab.c curses.head CFLAGS+= -DTERMIOS # Installed HEADERS= curses.h term.h termcap.h unctrl.h SRCHDRS= ncurses_dll.h CLEANFILES+= ncurses_dll.h INCS= ${HEADERS} ${SRCHDRS} INCSLINKS= curses.h ${INCLUDEDIR}/ncurses.h .if ${MK_INSTALLLIB} != "no" -SYMLINKS+= libncursesw.a ${LIBDIR}/libcursesw.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermcapw.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermlibw.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtinfow.a +SYMLINKS+= libtinfow.a ${LIBDIR}/libtermcapw.a +SYMLINKS+= libtinfow.a ${LIBDIR}/libtermlibw.a # backward compat -SYMLINKS+= libncursesw.a ${LIBDIR}/libncurses.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libcurses.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermcap.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtermlib.a -SYMLINKS+= libncursesw.a ${LIBDIR}/libtinfo.a +SYMLINKS+= libtinfow.a ${LIBDIR}/libtermcap.a +SYMLINKS+= libtinfow.a ${LIBDIR}/libtermlib.a +SYMLINKS+= libtinfow.a ${LIBDIR}/libtinfo.a .endif .if !defined(NO_PIC) # no need for major at all, it's an ld-time redirection only -SYMLINKS+= libncursesw.so ${LIBDIR}/libcursesw.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermcapw.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermlibw.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtinfow.so +SYMLINKS+= libtinfow.so ${LIBDIR}/libtermcapw.so +SYMLINKS+= libtinfow.so ${LIBDIR}/libtermlibw.so # backward compat -SYMLINKS+= libncursesw.so ${LIBDIR}/libncurses.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libcurses.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermcap.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtermlib.so -SYMLINKS+= libncursesw.so ${LIBDIR}/libtinfo.so +SYMLINKS+= libtinfow.so ${LIBDIR}/libtermcap.so +SYMLINKS+= libtinfow.so ${LIBDIR}/libtermlib.so +SYMLINKS+= libtinfow.so ${LIBDIR}/libtinfo.so .endif .if ${MK_PROFILE} != "no" -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcursesw_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermcapw_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermlibw_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtinfow_p.a +SYMLINKS+= libtinfow_p.a ${LIBDIR}/libtermcapw_p.a +SYMLINKS+= libtinfow_p.a ${LIBDIR}/libtermlibw_p.a # backward compat -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libncurses_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcurses_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermcap_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermlib_p.a -SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtinfo_p.a +SYMLINKS+= libtinfow_p.a ${LIBDIR}/libtermcap_p.a +SYMLINKS+= libtinfow_p.a ${LIBDIR}/libtermlib_p.a +SYMLINKS+= libtinfow_p.a ${LIBDIR}/libtinfo_p.a .endif DOCSDIR= ${SHAREDIR}/doc/ncurses DOCS= ncurses-intro.html hackguide.html .if ${MK_HTML} != "no" .PATH: ${NCURSES_DIR}/doc/html FILESGROUPS= DOCS .endif # Generated source .ORDER: names.c codes.c names.c: MKnames.awk ${AWK} -f ${NCURSES_DIR}/ncurses/tinfo/MKnames.awk bigstrings=${USE_BIG_STRINGS} ${NCURSES_DIR}/include/Caps > names.c codes.c: MKcodes.awk ${AWK} -f ${NCURSES_DIR}/ncurses/tinfo/MKcodes.awk bigstrings=${USE_BIG_STRINGS} ${NCURSES_DIR}/include/Caps > codes.c -lib_gen.c: MKlib_gen.sh curses.h ncurses_dll.h - LC_ALL=C sh ${NCURSES_DIR}/ncurses/base/MKlib_gen.sh "${CPP:N${CCACHE_BIN}} ${CFLAGS}" \ - "${AWK}" generated < curses.h >$@ - lib_keyname.c: keys.list MKkeyname.awk ${AWK} -f ${NCURSES_DIR}/ncurses/base/MKkeyname.awk bigstrings=${USE_BIG_STRINGS} keys.list > lib_keyname.c unctrl.c: MKunctrl.awk echo | ${AWK} -f ${NCURSES_DIR}/ncurses/base/MKunctrl.awk bigstrings=${USE_BIG_STRINGS} > unctrl.c comp_captab.c: MKcaptab.sh MKcaptab.awk Caps Caps-ncurses make_hash env PATH=${BTOOLSPATH:U.}:${PATH} sh ${NCURSES_DIR}/ncurses/tinfo/MKcaptab.sh "${AWK}" \ ${USE_BIG_STRINGS} ${NCURSES_DIR}/ncurses/tinfo/MKcaptab.awk \ ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > comp_captab.c -expanded.c: MKexpanded.sh - sh ${NCURSES_DIR}/ncurses/tty/MKexpanded.sh "${CC:N${CCACHE_BIN}} -E" ${CFLAGS} >expanded.c - fallback.c: MKfallback.sh sh ${NCURSES_DIR}/ncurses/tinfo/MKfallback.sh "" "" "" > ${.TARGET}.tmp && \ mv -f ${.TARGET}.tmp ${.TARGET} comp_userdefs.c: MKuserdefs.sh Caps Caps-ncurses make_hash env PATH=${BTOOLSPATH:U.}:${PATH} sh ${NCURSES_DIR}/ncurses/tinfo/MKuserdefs.sh "${AWK}" \ ${USE_BIG_STRINGS} ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > ${.TARGET} # Generated headers nomacros.h: MKlib_gen.sh curses.h LC_ALL=C sh ${NCURSES_DIR}/ncurses/base/MKlib_gen.sh "${CC:N${CCACHE_BIN}} -E ${CFLAGS}" \ "${AWK}" generated < curses.h | fgrep undef > $@ init_keytry.h: keys.list make_keys ${BTOOLSPATH:U.}/make_keys keys.list > init_keytry.h hashsize.h: MKhashsize.sh Caps Caps-ncurses sh ${NCURSES_DIR}/include/MKhashsize.sh ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > $@ parametrized.h: MKparametrized.sh Caps Caps-ncurses AWK=${AWK} sh ${NCURSES_DIR}/include/MKparametrized.sh \ ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > $@ term.h: MKterm.h.awk edit_cfg.sh Caps Caps-ncurses ${AWK} -f MKterm.h.awk ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses > $@.new sh ${NCURSES_DIR}/include/edit_cfg.sh ${NCURSES_CFG_H} $@.new mv -f $@.new $@ curses.h: curses.head MKkey_defs.sh Caps Caps-ncurses cat curses.head > $@.new AWK=${AWK} _POSIX2_VERSION=199209 sh ${NCURSES_DIR}/include/MKkey_defs.sh \ ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses >> $@.new cat ${NCURSES_DIR}/include/curses.wide >> $@.new cat ${NCURSES_DIR}/include/curses.tail >> $@.new mv -f $@.new $@ # Generated intermediate files keys.list: MKkeys_list.sh Caps Caps-ncurses AWK=${AWK} sh ${NCURSES_DIR}/ncurses/tinfo/MKkeys_list.sh \ ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses | LC_ALL=C sort > keys.list # Build tools DEPENDOBJS+= make_hash make_keys build-tools: make_hash make_keys make_keys: make_keys.c names.c ncurses_def.h ${HEADERS} ${BUILD_TOOLS_META} ${CC:N${CCACHE_BIN}} -o $@ ${CFLAGS} ${NCURSES_DIR}/ncurses/tinfo/make_keys.c make_hash: make_hash.c hashsize.h ncurses_def.h ${HEADERS} ${BUILD_TOOLS_META} ${CC:N${CCACHE_BIN}} -o $@ ${CFLAGS} -DMAIN_PROGRAM \ ${NCURSES_DIR}/ncurses/tinfo/make_hash.c # ./configure generated MKterm.h.awk: MKterm.h.awk.in sed <${NCURSES_DIR}/include/MKterm.h.awk.in >$@ \ -e "/@BROKEN_LINKER@/s%%${BROKEN_LINKER}%" \ -e "s%@NCURSES_USE_DATABASE@%1%g" \ -e "s%@NCURSES_USE_TERMCAP@%1%g" \ -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" \ -e "/@NCURSES_CONST@/s%%${NCURSES_CONST}%" \ -e "/@NCURSES_TPARM_VARARGS@/s%%${NCURSES_TPARM_VARARGS}%" \ -e "/@NCURSES_SBOOL@/s%%${NCURSES_SBOOL}%" \ -e "/@NCURSES_XNAMES@/s%%${NCURSES_XNAMES}%" \ -e "/@NCURSES_EXT_COLORS@/s%%${NCURSES_EXT_COLORS}%" \ -e "/@HAVE_TERMIOS_H@/s%%${HAVE_TERMIOS_H}%" \ -e "/@HAVE_TERMIO_H@/s%%${HAVE_TERMIO_H}%" \ -e "/@HAVE_TCGETATTR@/s%%${HAVE_TCGETATTR}%" \ -e "s%@cf_cv_enable_reentrant@%${ENABLE_REENTRANT}%g" \ -e "s%@NCURSES_SP_FUNCS@%1%" \ -e "s%@NCURSES_PATCH@%${NCURSES_PATCH}%" termcap.h: termcap.h.in sed <${NCURSES_DIR}/include/termcap.h.in >$@ \ -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" \ -e "/@NCURSES_CONST@/s%%${NCURSES_CONST}%" \ -e "/@NCURSES_OSPEED@/s%%${NCURSES_OSPEED}%" ncurses_dll.h: ncurses_dll.h.in sed <${NCURSES_DIR}/include/ncurses_dll.h.in >$@ \ -e "s%@NCURSES_WRAP_PREFIX@%_nc_%g" curses.head: curses.h.in sed <${NCURSES_DIR}/include/curses.h.in >$@ \ -e "/@BROKEN_LINKER@/s%%${BROKEN_LINKER}%" \ -e "/@HAVE_VSSCANF@/s%%${HAVE_VSSCANF}%" \ -e "/@HAVE_STDINT_H@/s%%${HAVE_STDINT_H}%" \ -e "/@NCURSES_CH_T@/s%%${NCURSES_CH_T}%" \ -e "/@NCURSES_CONST@/s%%${NCURSES_CONST}%" \ -e "/@NCURSES_EXT_COLORS@/s%%${NCURSES_EXT_COLORS}%" \ -e "/@NCURSES_EXT_FUNCS@/s%%${NCURSES_EXT_FUNCS}%" \ -e "/@NCURSES_INLINE@/s%%${NCURSES_INLINE}%" \ -e "/@NCURSES_LIBUTF8@/s%%${NCURSES_LIBUTF8}%" \ -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ -e "/@NCURSES_MBSTATE_T@/s%%${NCURSES_MBSTATE_T}%" \ -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" \ -e "/@NCURSES_MOUSE_VERSION@/s%%${NCURSES_MOUSE_VERSION}%" \ -e "/@NCURSES_OK_WCHAR_T@/s%%${NCURSES_OK_WCHAR_T}%" \ -e "/@NCURSES_OPAQUE@/s%%${NCURSES_OPAQUE}%" \ -e "/@NCURSES_OPAQUE_FORM@/s%%${NCURSES_OPAQUE_FORM}%" \ -e "/@NCURSES_OPAQUE_MENU@/s%%${NCURSES_OPAQUE_MENU}%" \ -e "/@NCURSES_OPAQUE_PANEL@/s%%${NCURSES_OPAQUE_PANEL}%" \ -e "/@NCURSES_PATCH@/s%%${NCURSES_PATCH}%" \ -e "/@NCURSES_SIZE_T@/s%%${NCURSES_SIZE_T}%" \ -e "/@NCURSES_TPARM_VARARGS@/s%%${NCURSES_TPARM_VARARGS}%" \ -e "/@NCURSES_WATTR_MACROS@/s%%${NCURSES_WATTR_MACROS}%"\ -e "/@NCURSES_WCHAR_T@/s%%${NCURSES_WCHAR_T}%" \ -e "/@NCURSES_WCHAR_T@/s%%${NCURSES_WCHAR_T}%" \ -e "/@NCURSES_WCWIDTH_GRAPHICS@/s%%${NCURSES_WCWIDTH_GRAPHICS}%g" \ -e "/@NCURSES_WINT_T@/s%%${NCURSES_WINT_T}%" \ -e "/@NCURSES_INTEROP_FUNCS@/s%%${NCURSES_INTEROP_FUNCS}%g" \ -e "/@NCURSES_TPARM_ARG@/s%%${NCURSES_TPARM_ARG}%g" \ -e "/@NCURSES_SP_FUNCS@/s%%${NCURSES_SP_FUNCS}%g" \ -e "/@NEED_WCHAR_H@/s%%${NEED_WCHAR_H}%" \ -e "/@USE_CXX_BOOL@/s%%${USE_CXX_BOOL}%" \ -e "/@GENERATED_EXT_FUNCS@/s%%generated%g" \ -e "s%@NCURSES_CCHARW_MAX@%5%g" \ -e "s%@cf_cv_1UL@%${ONEUL}%g" \ -e "s%@cf_cv_builtin_bool@%${BUILTIN_BOOL}%g" \ -e "s%@cf_cv_enable_lp64@%${ENABLE_LP64}%g" \ -e "s%@cf_cv_enable_opaque@%${ENABLE_OPAQUE}%g" \ -e "s%@cf_cv_enable_reentrant@%${ENABLE_REENTRANT}%g" \ -e "s%@cf_cv_header_stdbool_h@%${HEADER_STDBOOL}%g" \ -e "s%@cf_cv_type_of_bool@%${TYPE_OF_BOOL}%g" \ -e "s%@cf_cv_typeof_chtype@%${TYPEOF_CHTYPE}%g" \ -e "s%@cf_cv_typeof_mmask_t@%${TYPEOF_MMASK_T}%g" \ -e "s/ _WCHAR_T/ __wchar_t/g" \ -e "s/ _WINT_T/ __wint_t/g" unctrl.h: unctrl.h.in sed <${NCURSES_DIR}/include/$@.in >$@ \ -e "s%@NCURSES_SP_FUNCS@%${NCURSES_SP_FUNCS}%g" \ -e "/@NCURSES_MAJOR@/s%%${NCURSES_MAJOR}%" \ -e "/@NCURSES_MINOR@/s%%${NCURSES_MINOR}%" # MAN page gunk terminfo.5: MKterminfo.sh terminfo.head Caps sh ${NCURSES_DIR}/man/MKterminfo.sh ${NCURSES_DIR}/man/terminfo.head \ ${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/man/terminfo.tail >$@ CLEANFILES+= terminfo.5 .PATH: ${NCURSES_DIR}/man MAN= \ curs_addch.3 \ curs_addchstr.3 \ curs_addstr.3 \ curs_attr.3 \ curs_beep.3 \ curs_bkgd.3 \ curs_bkgrnd.3 \ curs_border.3 \ curs_border_set.3 \ curs_clear.3 \ curs_color.3 \ curs_delch.3 \ curs_deleteln.3 \ curs_extend.3 \ curs_getcchar.3 \ curs_getch.3 \ curs_getstr.3 \ curs_getyx.3 \ curs_inch.3 \ curs_inchstr.3 \ curs_initscr.3 \ curs_inopts.3 \ curs_insch.3 \ curs_insstr.3 \ curs_instr.3 \ curs_inwstr.3 \ curs_kernel.3 \ curs_legacy.3 \ curs_memleaks.3 \ curs_mouse.3 \ curs_move.3 \ curs_opaque.3 \ curs_outopts.3 \ curs_overlay.3 \ curs_pad.3 \ curs_print.3 \ curs_refresh.3 \ curs_scr_dump.3 \ curs_scroll.3 \ curs_slk.3 \ curs_sp_funcs.3 \ curs_termattrs.3 \ curs_termcap.3 \ curs_terminfo.3 \ curs_threads.3 \ curs_touch.3 \ curs_trace.3 \ curs_util.3 \ curs_variables.3 \ curs_window.3 \ default_colors.3 \ define_key.3 \ key_defined.3 \ keybound.3 \ keyok.3 \ legacy_coding.3 \ ncurses.3 \ new_pair.3 \ resizeterm.3 \ term_variables.3 \ wresize.3 MAN+= \ curs_add_wch.3 \ curs_add_wchstr.3 \ curs_addwstr.3 \ curs_get_wch.3 \ curs_get_wstr.3 \ curs_in_wch.3 \ curs_in_wchstr.3 \ curs_ins_wch.3 \ curs_ins_wstr.3 \ curs_printw.3 \ curs_scanw.3 MAN+= term.5 terminfo.5 scr_dump.5 user_caps.5 MAN+= term.7 CLEANFILES+= ${MAN:M*.3} MLINKS= ncurses.3 curses.3 \ curs_addch.3 addch.3 \ curs_addch.3 echochar.3 \ curs_addch.3 mvaddch.3 \ curs_addch.3 mvwaddch.3 \ curs_addch.3 waddch.3 \ curs_addch.3 wechochar.3 \ curs_addchstr.3 addchnstr.3 \ curs_addchstr.3 addchstr.3 \ curs_addchstr.3 mvaddchnstr.3 \ curs_addchstr.3 mvaddchstr.3 \ curs_addchstr.3 mvwaddchnstr.3 \ curs_addchstr.3 mvwaddchstr.3 \ curs_addchstr.3 waddchnstr.3 \ curs_addchstr.3 waddchstr.3 \ curs_addstr.3 addnstr.3 \ curs_addstr.3 addstr.3 \ curs_addstr.3 mvaddnstr.3 \ curs_addstr.3 mvaddstr.3 \ curs_addstr.3 mvwaddnstr.3 \ curs_addstr.3 mvwaddstr.3 \ curs_addstr.3 waddnstr.3 \ curs_addstr.3 waddstr.3 \ curs_attr.3 PAIR_NUMBER.3 \ curs_attr.3 attr_get.3 \ curs_attr.3 attr_off.3 \ curs_attr.3 attr_on.3 \ curs_attr.3 attr_set.3 \ curs_attr.3 attroff.3 \ curs_attr.3 attron.3 \ curs_attr.3 attrset.3 \ curs_attr.3 chgat.3 \ curs_attr.3 color_set.3 \ curs_attr.3 mvchgat.3 \ curs_attr.3 mvwchgat.3 \ curs_attr.3 standend.3 \ curs_attr.3 standout.3 \ curs_attr.3 wattr_get.3 \ curs_attr.3 wattr_off.3 \ curs_attr.3 wattr_on.3 \ curs_attr.3 wattr_set.3 \ curs_attr.3 wattroff.3 \ curs_attr.3 wattron.3 \ curs_attr.3 wattrset.3 \ curs_attr.3 wchgat.3 \ curs_attr.3 wcolor_set.3 \ curs_attr.3 wstandend.3 \ curs_attr.3 wstandout.3 \ curs_beep.3 beep.3 \ curs_beep.3 flash.3 \ curs_bkgd.3 bkgd.3 \ curs_bkgd.3 bkgdset.3 \ curs_bkgd.3 getbkgd.3 \ curs_bkgd.3 wbkgd.3 \ curs_bkgd.3 wbkgdset.3 \ curs_bkgrnd.3 bkgrnd.3 \ curs_bkgrnd.3 bkgrndset.3 \ curs_bkgrnd.3 getbkgrnd.3 \ curs_bkgrnd.3 wbkgrnd.3 \ curs_bkgrnd.3 wbkgrndset.3 \ curs_bkgrnd.3 wgetbkgrnd.3 \ curs_border.3 border.3 \ curs_border.3 box.3 \ curs_border.3 hline.3 \ curs_border.3 mvhline.3 \ curs_border.3 mvvline.3 \ curs_border.3 mvwhline.3 \ curs_border.3 mvwvline.3 \ curs_border.3 vline.3 \ curs_border.3 wborder.3 \ curs_border.3 whline.3 \ curs_border.3 wvline.3 \ curs_border_set.3 border_set.3 \ curs_border_set.3 box_set.3 \ curs_border_set.3 hline_set.3 \ curs_border_set.3 mvhline_set.3 \ curs_border_set.3 mvvline_set.3 \ curs_border_set.3 mvwhline_set.3 \ curs_border_set.3 mvwvline_set.3 \ curs_border_set.3 vline_set.3 \ curs_border_set.3 wborder_set.3 \ curs_border_set.3 whline_set.3 \ curs_border_set.3 wvline_set.3 \ curs_clear.3 clear.3 \ curs_clear.3 clrtobot.3 \ curs_clear.3 clrtoeol.3 \ curs_clear.3 erase.3 \ curs_clear.3 wclear.3 \ curs_clear.3 wclrtobot.3 \ curs_clear.3 wclrtoeol.3 \ curs_clear.3 werase.3 \ curs_color.3 COLOR_PAIR.3 \ curs_color.3 can_change_color.3 \ curs_color.3 color_content.3 \ curs_color.3 has_colors.3 \ curs_color.3 init_color.3 \ curs_color.3 init_pair.3 \ curs_color.3 pair_content.3 \ curs_color.3 start_color.3 \ curs_delch.3 delch.3 \ curs_delch.3 mvdelch.3 \ curs_delch.3 mvwdelch.3 \ curs_delch.3 wdelch.3 \ curs_deleteln.3 deleteln.3 \ curs_deleteln.3 insdelln.3 \ curs_deleteln.3 insertln.3 \ curs_deleteln.3 wdeleteln.3 \ curs_deleteln.3 winsdelln.3 \ curs_deleteln.3 winsertln.3 \ curs_extend.3 curses_version.3 \ curs_extend.3 use_extended_names.3 \ curs_getcchar.3 getcchar.3 \ curs_getcchar.3 setcchar.3 \ curs_getch.3 getch.3 \ curs_getch.3 has_key.3 \ curs_getch.3 mvgetch.3 \ curs_getch.3 mvwgetch.3 \ curs_getch.3 ungetch.3 \ curs_getch.3 wgetch.3 \ curs_getstr.3 getnstr.3 \ curs_getstr.3 getstr.3 \ curs_getstr.3 mvgetnstr.3 \ curs_getstr.3 mvgetstr.3 \ curs_getstr.3 mvwgetnstr.3 \ curs_getstr.3 mvwgetstr.3 \ curs_getstr.3 wgetnstr.3 \ curs_getstr.3 wgetstr.3 \ curs_getyx.3 getbegyx.3 \ curs_getyx.3 getmaxyx.3 \ curs_getyx.3 getparyx.3 \ curs_getyx.3 getyx.3 \ curs_inch.3 inch.3 \ curs_inch.3 mvinch.3 \ curs_inch.3 mvwinch.3 \ curs_inch.3 winch.3 \ curs_inchstr.3 inchnstr.3 \ curs_inchstr.3 inchstr.3 \ curs_inchstr.3 mvinchnstr.3 \ curs_inchstr.3 mvinchstr.3 \ curs_inchstr.3 mvwinchnstr.3 \ curs_inchstr.3 mvwinchstr.3 \ curs_inchstr.3 winchnstr.3 \ curs_inchstr.3 winchstr.3 \ curs_initscr.3 delscreen.3 \ curs_initscr.3 endwin.3 \ curs_initscr.3 initscr.3 \ curs_initscr.3 isendwin.3 \ curs_initscr.3 newterm.3 \ curs_initscr.3 set_term.3 \ curs_inopts.3 cbreak.3 \ curs_inopts.3 echo.3 \ curs_inopts.3 halfdelay.3 \ curs_inopts.3 intrflush.3 \ curs_inopts.3 keypad.3 \ curs_inopts.3 meta.3 \ curs_inopts.3 nocbreak.3 \ curs_inopts.3 nodelay.3 \ curs_inopts.3 noecho.3 \ curs_inopts.3 noqiflush.3 \ curs_inopts.3 noraw.3 \ curs_inopts.3 notimeout.3 \ curs_inopts.3 qiflush.3 \ curs_inopts.3 raw.3 \ curs_inopts.3 timeout.3 \ curs_inopts.3 typeahead.3 \ curs_inopts.3 wtimeout.3 \ curs_insch.3 insch.3 \ curs_insch.3 mvinsch.3 \ curs_insch.3 mvwinsch.3 \ curs_insch.3 winsch.3 \ curs_insstr.3 insnstr.3 \ curs_insstr.3 insstr.3 \ curs_insstr.3 mvinsnstr.3 \ curs_insstr.3 mvinsstr.3 \ curs_insstr.3 mvwinsnstr.3 \ curs_insstr.3 mvwinsstr.3 \ curs_insstr.3 winsnstr.3 \ curs_insstr.3 winsstr.3 \ curs_instr.3 innstr.3 \ curs_instr.3 instr.3 \ curs_instr.3 mvinnstr.3 \ curs_instr.3 mvinstr.3 \ curs_instr.3 mvwinnstr.3 \ curs_instr.3 mvwinstr.3 \ curs_instr.3 winnstr.3 \ curs_instr.3 winstr.3 \ curs_kernel.3 curs_set.3 \ curs_kernel.3 def_prog_mode.3 \ curs_kernel.3 def_shell_mode.3 \ curs_kernel.3 getsyx.3 \ curs_kernel.3 napms.3 \ curs_kernel.3 reset_prog_mode.3 \ curs_kernel.3 reset_shell_mode.3 \ curs_kernel.3 resetty.3 \ curs_kernel.3 ripoffline.3 \ curs_kernel.3 savetty.3 \ curs_kernel.3 setsyx.3 \ curs_legacy.3 getbegx.3 \ curs_legacy.3 getbegy.3 \ curs_legacy.3 getcurx.3 \ curs_legacy.3 getcury.3 \ curs_legacy.3 getmaxx.3 \ curs_legacy.3 getmaxy.3 \ curs_legacy.3 getparx.3 \ curs_legacy.3 getpary.3 \ curs_memleaks.3 _nc_free_and_exit.3 \ curs_memleaks.3 _nc_freeall.3 \ curs_mouse.3 getmouse.3 \ curs_mouse.3 mouse_trafo.3 \ curs_mouse.3 mouseinterval.3 \ curs_mouse.3 mousemask.3 \ curs_mouse.3 ungetmouse.3 \ curs_mouse.3 wenclose.3 \ curs_mouse.3 wmouse_trafo.3 \ curs_move.3 move.3 \ curs_move.3 wmove.3 \ curs_opaque.3 is_cleared.3 \ curs_opaque.3 is_idcok.3 \ curs_opaque.3 is_idlok.3 \ curs_opaque.3 is_immedok.3 \ curs_opaque.3 is_keypad.3 \ curs_opaque.3 is_leaveok.3 \ curs_opaque.3 is_nodelay.3 \ curs_opaque.3 is_notimeout.3 \ curs_opaque.3 is_scrollok.3 \ curs_opaque.3 is_syncok.3 \ curs_opaque.3 is_timeout.3 \ curs_opaque.3 wgetparent.3 \ curs_opaque.3 wgetscrreg.3 \ curs_outopts.3 clearok.3 \ curs_outopts.3 idcok.3 \ curs_outopts.3 idlok.3 \ curs_outopts.3 immedok.3 \ curs_outopts.3 leaveok.3 \ curs_outopts.3 nl.3 \ curs_outopts.3 nonl.3 \ curs_outopts.3 scrollok.3 \ curs_outopts.3 setscrreg.3 \ curs_outopts.3 wsetscrreg.3 \ curs_overlay.3 copywin.3 \ curs_overlay.3 overlay.3 \ curs_overlay.3 overwrite.3 \ curs_pad.3 newpad.3 \ curs_pad.3 pecho_wchar.3 \ curs_pad.3 pechochar.3 \ curs_pad.3 pnoutrefresh.3 \ curs_pad.3 prefresh.3 \ curs_pad.3 subpad.3 \ curs_print.3 mcprint.3 \ curs_refresh.3 doupdate.3 \ curs_refresh.3 redrawwin.3 \ curs_refresh.3 refresh.3 \ curs_refresh.3 wnoutrefresh.3 \ curs_refresh.3 wredrawln.3 \ curs_refresh.3 wrefresh.3 \ curs_scr_dump.3 scr_dump.3 \ curs_scr_dump.3 scr_init.3 \ curs_scr_dump.3 scr_restore.3 \ curs_scr_dump.3 scr_set.3 \ curs_scroll.3 scrl.3 \ curs_scroll.3 scroll.3 \ curs_scroll.3 wscrl.3 \ curs_slk.3 slk_attr.3 \ curs_slk.3 slk_attr_off.3 \ curs_slk.3 slk_attr_on.3 \ curs_slk.3 slk_attr_set.3 \ curs_slk.3 slk_attroff.3 \ curs_slk.3 slk_attron.3 \ curs_slk.3 slk_attrset.3 \ curs_slk.3 slk_clear.3 \ curs_slk.3 slk_color.3 \ curs_slk.3 slk_init.3 \ curs_slk.3 slk_label.3 \ curs_slk.3 slk_noutrefresh.3 \ curs_slk.3 slk_refresh.3 \ curs_slk.3 slk_restore.3 \ curs_slk.3 slk_set.3 \ curs_slk.3 slk_touch.3 \ curs_sp_funcs.3 sp_funcs.3 \ curs_sp_funcs.3 assume_default_colors_sp.3 \ curs_sp_funcs.3 baudrate_sp.3 \ curs_sp_funcs.3 beep_sp.3 \ curs_sp_funcs.3 can_change_color_sp.3 \ curs_sp_funcs.3 cbreak_sp.3 \ curs_sp_funcs.3 ceiling_panel.3 \ curs_sp_funcs.3 color_content_sp.3 \ curs_sp_funcs.3 curs_set_sp.3 \ curs_sp_funcs.3 def_prog_mode_sp.3 \ curs_sp_funcs.3 def_shell_mode_sp.3 \ curs_sp_funcs.3 define_key_sp.3 \ curs_sp_funcs.3 del_curterm_sp.3 \ curs_sp_funcs.3 delay_output_sp.3 \ curs_sp_funcs.3 doupdate_sp.3 \ curs_sp_funcs.3 echo_sp.3 \ curs_sp_funcs.3 endwin_sp.3 \ curs_sp_funcs.3 erasechar_sp.3 \ curs_sp_funcs.3 filter_sp.3 \ curs_sp_funcs.3 flash_sp.3 \ curs_sp_funcs.3 flushinp_sp.3 \ curs_sp_funcs.3 get_escdelay_sp.3 \ curs_sp_funcs.3 getmouse_sp.3 \ curs_sp_funcs.3 getwin_sp.3 \ curs_sp_funcs.3 ground_panel.3 \ curs_sp_funcs.3 halfdelay_sp.3 \ curs_sp_funcs.3 has_colors_sp.3 \ curs_sp_funcs.3 has_ic_sp.3 \ curs_sp_funcs.3 has_il_sp.3 \ curs_sp_funcs.3 has_key_sp.3 \ curs_sp_funcs.3 has_mouse_sp.3 \ curs_sp_funcs.3 init_color_sp.3 \ curs_sp_funcs.3 init_pair_sp.3 \ curs_sp_funcs.3 intrflush_sp.3 \ curs_sp_funcs.3 is_term_resized_sp.3 \ curs_sp_funcs.3 isendwin_sp.3 \ curs_sp_funcs.3 key_defined_sp.3 \ curs_sp_funcs.3 keybound_sp.3 \ curs_sp_funcs.3 keyname_sp.3 \ curs_sp_funcs.3 keyok_sp.3 \ curs_sp_funcs.3 killchar_sp.3 \ curs_sp_funcs.3 mcprint_sp.3 \ curs_sp_funcs.3 mouseinterval_sp.3 \ curs_sp_funcs.3 mousemask_sp.3 \ curs_sp_funcs.3 mvcur_sp.3 \ curs_sp_funcs.3 napms_sp.3 \ curs_sp_funcs.3 new_form_sp.3 \ curs_sp_funcs.3 new_menu_sp.3 \ curs_sp_funcs.3 new_prescr.3 \ curs_sp_funcs.3 newpad_sp.3 \ curs_sp_funcs.3 newterm_sp.3 \ curs_sp_funcs.3 newwin_sp.3 \ curs_sp_funcs.3 nl_sp.3 \ curs_sp_funcs.3 nocbreak_sp.3 \ curs_sp_funcs.3 noecho_sp.3 \ curs_sp_funcs.3 nofilter_sp.3 \ curs_sp_funcs.3 nonl_sp.3 \ curs_sp_funcs.3 noqiflush_sp.3 \ curs_sp_funcs.3 noraw_sp.3 \ curs_sp_funcs.3 pair_content_sp.3 \ curs_sp_funcs.3 putp_sp.3 \ curs_sp_funcs.3 qiflush_sp.3 \ curs_sp_funcs.3 raw_sp.3 \ curs_sp_funcs.3 reset_prog_mode_sp.3 \ curs_sp_funcs.3 reset_shell_mode_sp.3 \ curs_sp_funcs.3 resetty_sp.3 \ curs_sp_funcs.3 resize_term_sp.3 \ curs_sp_funcs.3 resizeterm_sp.3 \ curs_sp_funcs.3 restartterm_sp.3 \ curs_sp_funcs.3 ripoffline_sp.3 \ curs_sp_funcs.3 savetty_sp.3 \ curs_sp_funcs.3 scr_init_sp.3 \ curs_sp_funcs.3 scr_restore_sp.3 \ curs_sp_funcs.3 scr_set_sp.3 \ curs_sp_funcs.3 set_curterm_sp.3 \ curs_sp_funcs.3 set_escdelay_sp.3 \ curs_sp_funcs.3 set_tabsize_sp.3 \ curs_sp_funcs.3 slk_attr_set_sp.3 \ curs_sp_funcs.3 slk_attr_sp.3 \ curs_sp_funcs.3 slk_attroff_sp.3 \ curs_sp_funcs.3 slk_attron_sp.3 \ curs_sp_funcs.3 slk_attrset_sp.3 \ curs_sp_funcs.3 slk_clear_sp.3 \ curs_sp_funcs.3 slk_color_sp.3 \ curs_sp_funcs.3 slk_init_sp.3 \ curs_sp_funcs.3 slk_label_sp.3 \ curs_sp_funcs.3 slk_noutrefresh_sp.3 \ curs_sp_funcs.3 slk_refresh_sp.3 \ curs_sp_funcs.3 slk_restore_sp.3 \ curs_sp_funcs.3 slk_set_sp.3 \ curs_sp_funcs.3 slk_touch_sp.3 \ curs_sp_funcs.3 start_color_sp.3 \ curs_sp_funcs.3 term_attrs_sp.3 \ curs_sp_funcs.3 termattrs_sp.3 \ curs_sp_funcs.3 termname_sp.3 \ curs_sp_funcs.3 tgetent_sp.3 \ curs_sp_funcs.3 tgetflag_sp.3 \ curs_sp_funcs.3 tgetnum_sp.3 \ curs_sp_funcs.3 tgetstr_sp.3 \ curs_sp_funcs.3 tigetflag_sp.3 \ curs_sp_funcs.3 tigetnum_sp.3 \ curs_sp_funcs.3 tigetstr_sp.3 \ curs_sp_funcs.3 tputs_sp.3 \ curs_sp_funcs.3 typeahead_sp.3 \ curs_sp_funcs.3 unctrl_sp.3 \ curs_sp_funcs.3 unget_wch_sp.3 \ curs_sp_funcs.3 ungetch_sp.3 \ curs_sp_funcs.3 ungetmouse_sp.3 \ curs_sp_funcs.3 update_panels_sp.3 \ curs_sp_funcs.3 use_default_colors_sp.3 \ curs_sp_funcs.3 use_env_sp.3 \ curs_sp_funcs.3 use_legacy_coding_sp.3 \ curs_sp_funcs.3 vid_attr_sp.3 \ curs_sp_funcs.3 vid_puts_sp.3 \ curs_sp_funcs.3 vidattr_sp.3 \ curs_sp_funcs.3 vidputs_sp.3 \ curs_sp_funcs.3 wunctrl_sp.3 \ curs_termattrs.3 baudrate.3 \ curs_termattrs.3 erasechar.3 \ curs_termattrs.3 erasewchar.3 \ curs_termattrs.3 has_ic.3 \ curs_termattrs.3 has_il.3 \ curs_termattrs.3 killchar.3 \ curs_termattrs.3 killwchar.3 \ curs_termattrs.3 longname.3 \ curs_termattrs.3 term_attrs.3 \ curs_termattrs.3 termattrs.3 \ curs_termattrs.3 termname.3 \ curs_termcap.3 termcap.3 \ curs_termcap.3 tgetent.3 \ curs_termcap.3 tgetflag.3 \ curs_termcap.3 tgetnum.3 \ curs_termcap.3 tgetstr.3 \ curs_termcap.3 tgoto.3 \ curs_termcap.3 tputs.3 \ curs_terminfo.3 del_curterm.3 \ curs_terminfo.3 mvcur.3 \ curs_terminfo.3 putp.3 \ curs_terminfo.3 restartterm.3 \ curs_terminfo.3 set_curterm.3 \ curs_terminfo.3 setterm.3 \ curs_terminfo.3 setupterm.3 \ curs_terminfo.3 tigetflag.3 \ curs_terminfo.3 tigetnum.3 \ curs_terminfo.3 tigetstr.3 \ curs_terminfo.3 tparm.3 \ curs_terminfo.3 vid_attr.3 \ curs_terminfo.3 vid_puts.3 \ curs_terminfo.3 vidattr.3 \ curs_terminfo.3 vidputs.3 \ curs_threads.3 set_escdelay.3 \ curs_threads.3 set_tabsize.3 \ curs_threads.3 use_screen.3 \ curs_threads.3 use_window.3 \ curs_touch.3 is_linetouched.3 \ curs_touch.3 is_wintouched.3 \ curs_touch.3 touchline.3 \ curs_touch.3 touchwin.3 \ curs_touch.3 untouchwin.3 \ curs_touch.3 wtouchln.3 \ curs_trace.3 _nc_tracebits.3 \ curs_trace.3 _traceattr.3 \ curs_trace.3 _traceattr2.3 \ curs_trace.3 _tracechar.3 \ curs_trace.3 _tracechtype.3 \ curs_trace.3 _tracechtype2.3 \ curs_trace.3 _tracedump.3 \ curs_trace.3 _tracef.3 \ curs_trace.3 _tracemouse.3 \ curs_trace.3 trace.3 \ curs_util.3 delay_output.3 \ curs_util.3 filter.3 \ curs_util.3 flushinp.3 \ curs_util.3 getwin.3 \ curs_util.3 key_name.3 \ curs_util.3 keyname.3 \ curs_util.3 nofilter.3 \ curs_util.3 putwin.3 \ curs_util.3 unctrl.3 \ curs_util.3 use_env.3 \ curs_util.3 wunctrl.3 \ curs_window.3 delwin.3 \ curs_window.3 derwin.3 \ curs_window.3 dupwin.3 \ curs_window.3 mvderwin.3 \ curs_window.3 mvwin.3 \ curs_window.3 newwin.3 \ curs_window.3 subwin.3 \ curs_window.3 syncok.3 \ curs_window.3 wcursyncup.3 \ curs_window.3 wsyncdown.3 \ curs_window.3 wsyncup.3 \ default_colors.3 assume_default_colors.3 \ default_colors.3 use_default_colors.3 \ legacy_coding.3 use_legacy_coding.3 \ resizeterm.3 is_term_resized.3 \ resizeterm.3 resize_term.3 MLINKS+=curs_add_wch.3 add_wch.3 \ curs_add_wch.3 echo_wchar.3 \ curs_add_wch.3 mvadd_wch.3 \ curs_add_wch.3 mvwadd_wch.3 \ curs_add_wch.3 wadd_wch.3 \ curs_add_wch.3 wecho_wchar.3 \ curs_add_wchstr.3 add_wchnstr.3 \ curs_add_wchstr.3 add_wchstr.3 \ curs_add_wchstr.3 mvadd_wchnstr.3 \ curs_add_wchstr.3 mvadd_wchstr.3 \ curs_add_wchstr.3 mvwadd_wchnstr.3 \ curs_add_wchstr.3 mvwadd_wchstr.3 \ curs_add_wchstr.3 wadd_wchnstr.3 \ curs_add_wchstr.3 wadd_wchstr.3 \ curs_addwstr.3 addnwstr.3 \ curs_addwstr.3 addwstr.3 \ curs_addwstr.3 mvaddnwstr.3 \ curs_addwstr.3 mvaddwstr.3 \ curs_addwstr.3 mvwaddnwstr.3 \ curs_addwstr.3 mvwaddwstr.3 \ curs_addwstr.3 waddnwstr.3 \ curs_addwstr.3 waddwstr.3 \ curs_get_wch.3 get_wch.3 \ curs_get_wch.3 mvget_wch.3 \ curs_get_wch.3 mvwget_wch.3 \ curs_get_wch.3 unget_wch.3 \ curs_get_wch.3 wget_wch.3 \ curs_get_wstr.3 get_wstr.3 \ curs_get_wstr.3 getn_wstr.3 \ curs_get_wstr.3 mvget_wstr.3 \ curs_get_wstr.3 mvgetn_wstr.3 \ curs_get_wstr.3 mvwget_wstr.3 \ curs_get_wstr.3 mvwgetn_wstr.3 \ curs_get_wstr.3 wget_wstr.3 \ curs_get_wstr.3 wgetn_wstr.3 \ curs_in_wch.3 in_wch.3 \ curs_in_wch.3 mvin_wch.3 \ curs_in_wch.3 mvwin_wch.3 \ curs_in_wch.3 win_wch.3 \ curs_in_wchstr.3 in_wchnstr.3 \ curs_in_wchstr.3 in_wchstr.3 \ curs_in_wchstr.3 mvin_wchnstr.3 \ curs_in_wchstr.3 mvin_wchstr.3 \ curs_in_wchstr.3 mvwin_wchnstr.3 \ curs_in_wchstr.3 mvwin_wchstr.3 \ curs_in_wchstr.3 win_wchnstr.3 \ curs_in_wchstr.3 win_wchstr.3 \ curs_ins_wch.3 ins_wch.3 \ curs_ins_wch.3 mvins_wch.3 \ curs_ins_wch.3 mvwins_wch.3 \ curs_ins_wch.3 wins_wch.3 \ curs_ins_wstr.3 ins_nwstr.3 \ curs_ins_wstr.3 ins_wstr.3 \ curs_ins_wstr.3 mvins_nwstr.3 \ curs_ins_wstr.3 mvins_wstr.3 \ curs_ins_wstr.3 mvwins_nwstr.3 \ curs_ins_wstr.3 mvwins_wstr.3 \ curs_ins_wstr.3 wins_nwstr.3 \ curs_ins_wstr.3 wins_wstr.3 \ curs_inwstr.3 innwstr.3 \ curs_inwstr.3 inwstr.3 \ curs_inwstr.3 mvinnwstr.3 \ curs_inwstr.3 mvinwstr.3 \ curs_inwstr.3 mvwinnwstr.3 \ curs_inwstr.3 mvwinwstr.3 \ curs_inwstr.3 winnwstr.3 \ curs_inwstr.3 winwstr.3 \ curs_printw.3 mvprintw.3 \ curs_printw.3 mvwprintw.3 \ curs_printw.3 printw.3 \ curs_printw.3 vw_printw.3 \ curs_printw.3 vwprintw.3 \ curs_printw.3 wprintw.3 \ curs_scanw.3 mvscanw.3 \ curs_scanw.3 mvwscanw.3 \ curs_scanw.3 scanw.3 \ curs_scanw.3 vw_scanw.3 \ curs_scanw.3 vwscanw.3 \ curs_scanw.3 wscanw.3 +PCFILES= ncursesw.pc \ + tinfow.pc \ + panelw.pc \ + formw.pc \ + menuw.pc +CLEANFILES+= ${PCFILES} +SYMLINKS+= ncursesw.pc ${LIBDATADIR}/pkgconfig/ncurses.pc \ + tinfow.pc ${LIBDATADIR}/pkgconfig/tinfo.pc \ + formw.pc ${LIBDATADIR}/pkgconfig/form.pc \ + menuw.pc ${LIBDATADIR}/pkgconfig/menu.pc \ + panelw.pc ${LIBDATADIR}/pkgconfig/panel.pc + + +.PATH: ${NCURSES_DIR}/misc +gen-pkgconfig: gen-pkgconfig.in + sed -e 's,@SHELL@,/bin/sh,g ; \ + s,@LIB_NAME@,ncursesw,g ; \ + s,@TINFO_NAME@,tinfow,g ; \ + s,@PANEL_NAME@,panelw,g ; \ + s,@MENU_NAME@,menuw,g ; \ + s,@FORM_NAME@,formw,g ; \ + s,@CXX_NAME@,ncurses++,g ; \ + s,@DFT_DEP_SUFFIX@,.so,g ; \ + s,@TINFO_ARG_SUFFIX@,tinfow,g ; \ + s,@CXX_LIB_SUFFIX@,.a,g ; \ + s,@PC_MODULE_SUFFIX@,,g ; \ + s,@prefix@,/usr,g ; \ + s,@exec_prefix@,$${prefix},g ; \ + s,@includedir@,/usr/include,g ; \ + s,@includesubdir@,,g ; \ + s,@libdir@,/usr/lib,g ; \ + s,@RPATH_LIST@,$${libdir},g ; \ + s,@PRIVATE_LIBS@,,g ; \ + s,@USE_ARG_SUFFIX@,,g ; \ + s,@NCURSES_MAJOR@,${NCURSES_MAJOR},g ; \ + s,@NCURSES_MINOR@,${NCURSES_MINOR},g ; \ + s,@NCURSES_PATCH@,${NCURSES_PATCH},g ; \ + s,@PKG_CFLAGS@,,g ; \ + s,@EXTRA_PKG_LDFLAGS@,${SSP_CFLAGS},g ; \ + s,@LDFLAGS@,,g; \ + s,@LIBS@,,g ; \ + s,@LD_SEARCHPATH@,/usr/lib|/lib,g ; \ + s,@PC_MODULES_TO_MAKE@,$$1,g' \ + ${.ALLSRC} > ${.TARGET} + +${PCFILES}: gen-pkgconfig + sh ${.OBJDIR}/gen-pkgconfig ${.TARGET:R} + .include # Keep the .SUFFIXES line after the include of bsd.lib.mk .SUFFIXES: .3 .3x .3x.3: cat ${.IMPSRC} > ${.TARGET} diff --git a/lib/ncurses/tinfo/Makefile.depend b/lib/ncurses/tinfo/Makefile.depend new file mode 100644 index 000000000000..9b2a343de2dc --- /dev/null +++ b/lib/ncurses/tinfo/Makefile.depend @@ -0,0 +1,18 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + gnu/lib/csu \ + include \ + include/xlocale \ + lib/${CSU_DIR} \ + lib/libc \ + lib/libcompiler_rt \ + lib/ncurses/ncursesw \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif diff --git a/lib/ncurses/ncurses/ncurses_cfg.h b/lib/ncurses/tinfo/ncurses_cfg.h similarity index 100% rename from lib/ncurses/ncurses/ncurses_cfg.h rename to lib/ncurses/tinfo/ncurses_cfg.h diff --git a/lib/ncurses/tinfo/pathnames.h b/lib/ncurses/tinfo/pathnames.h new file mode 100644 index 000000000000..582d7e8b4b02 --- /dev/null +++ b/lib/ncurses/tinfo/pathnames.h @@ -0,0 +1,36 @@ +/*- + * SPDX-License-Identifier: BSD-3-Clause + * + * Copyright (c) 1989, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)pathnames.h 8.1 (Berkeley) 6/4/93 + * $FreeBSD$ + */ + +#define _PATH_DEF ".termcap /usr/share/misc/termcap /etc/termcap.small" +#define _PATH_DEF_SEC "/usr/share/misc/termcap" diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk index 7f591d3fd3f7..bc59c4babfd4 100644 --- a/share/mk/bsd.libnames.mk +++ b/share/mk/bsd.libnames.mk @@ -1,220 +1,220 @@ # $FreeBSD$ # The include file define library names. # Other include files (e.g. bsd.prog.mk, bsd.lib.mk) include this # file where necessary. .if !target(____) .error bsd.libnames.mk cannot be included directly. .endif LIBDESTDIR?= ${SYSROOT:U${DESTDIR}} .sinclude # Src directory locations are also defined in src.libnames.mk. LIBCRT0?= ${LIBDESTDIR}${LIBDIR_BASE}/crt0.o LIB80211?= ${LIBDESTDIR}${LIBDIR_BASE}/lib80211.a LIB9P?= ${LIBDESTDIR}${LIBDIR_BASE}/lib9p.a LIBALIAS?= ${LIBDESTDIR}${LIBDIR_BASE}/libalias.a LIBARCHIVE?= ${LIBDESTDIR}${LIBDIR_BASE}/libarchive.a LIBASN1?= ${LIBDESTDIR}${LIBDIR_BASE}/libasn1.a LIBATM?= ${LIBDESTDIR}${LIBDIR_BASE}/libatm.a LIBAUDITD?= ${LIBDESTDIR}${LIBDIR_BASE}/libauditd.a LIBAVL?= ${LIBDESTDIR}${LIBDIR_BASE}/libavl.a LIBBE?= ${LIBDESTDIR}${LIBDIR_BASE}/libbe.a LIBBEGEMOT?= ${LIBDESTDIR}${LIBDIR_BASE}/libbegemot.a LIBBLACKLIST?= ${LIBDESTDIR}${LIBDIR_BASE}/libblacklist.a LIBBLUETOOTH?= ${LIBDESTDIR}${LIBDIR_BASE}/libbluetooth.a LIBBSDXML?= ${LIBDESTDIR}${LIBDIR_BASE}/libbsdxml.a LIBBSM?= ${LIBDESTDIR}${LIBDIR_BASE}/libbsm.a LIBBSNMP?= ${LIBDESTDIR}${LIBDIR_BASE}/libbsnmp.a LIBBZ2?= ${LIBDESTDIR}${LIBDIR_BASE}/libbz2.a LIBC?= ${LIBDESTDIR}${LIBDIR_BASE}/libc.a LIBCALENDAR?= ${LIBDESTDIR}${LIBDIR_BASE}/libcalendar.a LIBCAM?= ${LIBDESTDIR}${LIBDIR_BASE}/libcam.a LIBCOMPAT?= ${LIBDESTDIR}${LIBDIR_BASE}/libcompat.a LIBCOMPILER_RT?=${LIBDESTDIR}${LIBDIR_BASE}/libcompiler_rt.a LIBCOM_ERR?= ${LIBDESTDIR}${LIBDIR_BASE}/libcom_err.a LIBCPLUSPLUS?= ${LIBDESTDIR}${LIBDIR_BASE}/libc++.a LIBCRYPT?= ${LIBDESTDIR}${LIBDIR_BASE}/libcrypt.a LIBCRYPTO?= ${LIBDESTDIR}${LIBDIR_BASE}/libcrypto.a LIBCTF?= ${LIBDESTDIR}${LIBDIR_BASE}/libctf.a LIBCURSES?= ${LIBDESTDIR}${LIBDIR_BASE}/libcurses.a LIBCUSE?= ${LIBDESTDIR}${LIBDIR_BASE}/libcuse.a LIBCXGB4?= ${LIBDESTDIR}${LIBDIR_BASE}/libcxgb4.a LIBCXXRT?= ${LIBDESTDIR}${LIBDIR_BASE}/libcxxrt.a LIBC_PIC?= ${LIBDESTDIR}${LIBDIR_BASE}/libc_pic.a LIBDEVCTL?= ${LIBDESTDIR}${LIBDIR_BASE}/libdevctl.a LIBDEVDCTL?= ${LIBDESTDIR}${LIBDIR_BASE}/libdevdctl.a LIBDEVINFO?= ${LIBDESTDIR}${LIBDIR_BASE}/libdevinfo.a LIBDEVSTAT?= ${LIBDESTDIR}${LIBDIR_BASE}/libdevstat.a LIBDIALOG?= ${LIBDESTDIR}${LIBDIR_BASE}/libdialog.a LIBDL?= ${LIBDESTDIR}${LIBDIR_BASE}/libdl.a LIBDNS?= ${LIBDESTDIR}${LIBDIR_BASE}/libdns.a LIBDPV?= ${LIBDESTDIR}${LIBDIR_BASE}/libdpv.a LIBDTRACE?= ${LIBDESTDIR}${LIBDIR_BASE}/libdtrace.a LIBDWARF?= ${LIBDESTDIR}${LIBDIR_BASE}/libdwarf.a LIBEDIT?= ${LIBDESTDIR}${LIBDIR_BASE}/libedit.a LIBEFIVAR?= ${LIBDESTDIR}${LIBDIR_BASE}/libefivar.a LIBELF?= ${LIBDESTDIR}${LIBDIR_BASE}/libelf.a LIBEXECINFO?= ${LIBDESTDIR}${LIBDIR_BASE}/libexecinfo.a LIBFETCH?= ${LIBDESTDIR}${LIBDIR_BASE}/libfetch.a LIBFIGPAR?= ${LIBDESTDIR}${LIBDIR_BASE}/libfigpar.a LIBFL?= "don't use LIBFL, use LIBL" LIBFORM?= ${LIBDESTDIR}${LIBDIR_BASE}/libform.a LIBG2C?= ${LIBDESTDIR}${LIBDIR_BASE}/libg2c.a LIBGEOM?= ${LIBDESTDIR}${LIBDIR_BASE}/libgeom.a LIBGPIO?= ${LIBDESTDIR}${LIBDIR_BASE}/libgpio.a LIBGSSAPI?= ${LIBDESTDIR}${LIBDIR_BASE}/libgssapi.a LIBGSSAPI_KRB5?= ${LIBDESTDIR}${LIBDIR_BASE}/libgssapi_krb5.a LIBHDB?= ${LIBDESTDIR}${LIBDIR_BASE}/libhdb.a LIBHEIMBASE?= ${LIBDESTDIR}${LIBDIR_BASE}/libheimbase.a LIBHEIMNTLM?= ${LIBDESTDIR}${LIBDIR_BASE}/libheimntlm.a LIBHEIMSQLITE?= ${LIBDESTDIR}${LIBDIR_BASE}/libheimsqlite.a LIBHX509?= ${LIBDESTDIR}${LIBDIR_BASE}/libhx509.a LIBIBCM?= ${LIBDESTDIR}${LIBDIR_BASE}/libibcm.a LIBIBMAD?= ${LIBDESTDIR}${LIBDIR_BASE}/libibmad.a LIBIBNETDISC?= ${LIBDESTDIR}${LIBDIR_BASE}/libibnetdisc.a LIBIBUMAD?= ${LIBDESTDIR}${LIBDIR_BASE}/libibumad.a LIBIBVERBS?= ${LIBDESTDIR}${LIBDIR_BASE}/libibverbs.a LIBICP?= ${LIBDESTDIR}${LIBDIR_BASE}/libicp.a LIBIPSEC?= ${LIBDESTDIR}${LIBDIR_BASE}/libipsec.a LIBIPT?= ${LIBDESTDIR}${LIBDIR_BASE}/libipt.a LIBJAIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libjail.a LIBKADM5CLNT?= ${LIBDESTDIR}${LIBDIR_BASE}/libkadm5clnt.a LIBKADM5SRV?= ${LIBDESTDIR}${LIBDIR_BASE}/libkadm5srv.a LIBKAFS5?= ${LIBDESTDIR}${LIBDIR_BASE}/libkafs5.a LIBKDC?= ${LIBDESTDIR}${LIBDIR_BASE}/libkdc.a LIBKEYCAP?= ${LIBDESTDIR}${LIBDIR_BASE}/libkeycap.a LIBKICONV?= ${LIBDESTDIR}${LIBDIR_BASE}/libkiconv.a LIBKRB5?= ${LIBDESTDIR}${LIBDIR_BASE}/libkrb5.a LIBKVM?= ${LIBDESTDIR}${LIBDIR_BASE}/libkvm.a LIBL?= ${LIBDESTDIR}${LIBDIR_BASE}/libl.a LIBLN?= "don't use LIBLN, use LIBL" LIBLZMA?= ${LIBDESTDIR}${LIBDIR_BASE}/liblzma.a LIBM?= ${LIBDESTDIR}${LIBDIR_BASE}/libm.a LIBMAGIC?= ${LIBDESTDIR}${LIBDIR_BASE}/libmagic.a LIBMD?= ${LIBDESTDIR}${LIBDIR_BASE}/libmd.a LIBMEMSTAT?= ${LIBDESTDIR}${LIBDIR_BASE}/libmemstat.a LIBMENU?= ${LIBDESTDIR}${LIBDIR_BASE}/libmenu.a LIBMILTER?= ${LIBDESTDIR}${LIBDIR_BASE}/libmilter.a LIBMLX4?= ${LIBDESTDIR}${LIBDIR_BASE}/libmlx4.a LIBMLX5?= ${LIBDESTDIR}${LIBDIR_BASE}/libmlx5.a LIBMP?= ${LIBDESTDIR}${LIBDIR_BASE}/libmp.a LIBMT?= ${LIBDESTDIR}${LIBDIR_BASE}/libmt.a LIBNCURSES?= ${LIBDESTDIR}${LIBDIR_BASE}/libncurses.a LIBNCURSESW?= ${LIBDESTDIR}${LIBDIR_BASE}/libncursesw.a LIBNETGRAPH?= ${LIBDESTDIR}${LIBDIR_BASE}/libnetgraph.a LIBNETMAP?= ${LIBDESTDIR}${LIBDIR_BASE}/libnetmap.a LIBNGATM?= ${LIBDESTDIR}${LIBDIR_BASE}/libngatm.a LIBNV?= ${LIBDESTDIR}${LIBDIR_BASE}/libnv.a LIBNVPAIR?= ${LIBDESTDIR}${LIBDIR_BASE}/libnvpair.a LIBOPENCSD?= ${LIBDESTDIR}${LIBDIR_BASE}/libopencsd.a LIBOPENSM?= ${LIBDESTDIR}${LIBDIR_BASE}/libopensm.a LIBOPIE?= ${LIBDESTDIR}${LIBDIR_BASE}/libopie.a LIBOSMCOMP?= ${LIBDESTDIR}${LIBDIR_BASE}/libosmcomp.a LIBOSMVENDOR?= ${LIBDESTDIR}${LIBDIR_BASE}/libosmvendor.a LIBPAM?= ${LIBDESTDIR}${LIBDIR_BASE}/libpam.a LIBPANEL?= ${LIBDESTDIR}${LIBDIR_BASE}/libpanel.a LIBPANELW?= ${LIBDESTDIR}${LIBDIR_BASE}/libpanelw.a LIBPCAP?= ${LIBDESTDIR}${LIBDIR_BASE}/libpcap.a LIBPJDLOG?= ${LIBDESTDIR}${LIBDIR_BASE}/libpjdlog.a LIBPMC?= ${LIBDESTDIR}${LIBDIR_BASE}/libpmc.a LIBPROC?= ${LIBDESTDIR}${LIBDIR_BASE}/libproc.a LIBPROCSTAT?= ${LIBDESTDIR}${LIBDIR_BASE}/libprocstat.a LIBPTHREAD?= ${LIBDESTDIR}${LIBDIR_BASE}/libpthread.a LIBRADIUS?= ${LIBDESTDIR}${LIBDIR_BASE}/libradius.a LIBRDMACM?= ${LIBDESTDIR}${LIBDIR_BASE}/librdmacm.a LIBREGEX?= ${LIBDESTDIR}${LIBDIR_BASE}/libregex.a LIBROKEN?= ${LIBDESTDIR}${LIBDIR_BASE}/libroken.a LIBRPCSEC_GSS?= ${LIBDESTDIR}${LIBDIR_BASE}/librpcsec_gss.a LIBRPCSVC?= ${LIBDESTDIR}${LIBDIR_BASE}/librpcsvc.a LIBRT?= ${LIBDESTDIR}${LIBDIR_BASE}/librt.a LIBRTLD_DB?= ${LIBDESTDIR}${LIBDIR_BASE}/librtld_db.a LIBSBUF?= ${LIBDESTDIR}${LIBDIR_BASE}/libsbuf.a LIBSDP?= ${LIBDESTDIR}${LIBDIR_BASE}/libsdp.a LIBSMB?= ${LIBDESTDIR}${LIBDIR_BASE}/libsmb.a LIBSPL?= ${LIBDESTDIR}${LIBDIR_BASE}/libspl.a LIBSSL?= ${LIBDESTDIR}${LIBDIR_BASE}/libssl.a LIBSSP_NONSHARED?= ${LIBDESTDIR}${LIBDIR_BASE}/libssp_nonshared.a LIBSTATS?= ${LIBDESTDIR}${LIBDIR_BASE}/libstats.a LIBSTDTHREADS?= ${LIBDESTDIR}${LIBDIR_BASE}/libstdthreads.a LIBSYSDECODE?= ${LIBDESTDIR}${LIBDIR_BASE}/libsysdecode.a LIBTACPLUS?= ${LIBDESTDIR}${LIBDIR_BASE}/libtacplus.a LIBTERMCAP?= ${LIBDESTDIR}${LIBDIR_BASE}/libtermcap.a LIBTERMCAPW?= ${LIBDESTDIR}${LIBDIR_BASE}/libtermcapw.a LIBTERMLIB?= "don't use LIBTERMLIB, use LIBTERMCAP" -LIBTINFO?= "don't use LIBTINFO, use LIBNCURSES" +LIBTINFOW= ${LIBDESTDIR}${LIBDIR_BASE}/libtinfow.a LIBTPOOL?= ${LIBDESTDIR}${LIBDIR_BASE}/libtpool.a LIBUFS?= ${LIBDESTDIR}${LIBDIR_BASE}/libufs.a LIBUGIDFW?= ${LIBDESTDIR}${LIBDIR_BASE}/libugidfw.a LIBULOG?= ${LIBDESTDIR}${LIBDIR_BASE}/libulog.a LIBUMEM?= ${LIBDESTDIR}${LIBDIR_BASE}/libumem.a LIBUSB?= ${LIBDESTDIR}${LIBDIR_BASE}/libusb.a LIBUSBHID?= ${LIBDESTDIR}${LIBDIR_BASE}/libusbhid.a LIBUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libutil.a LIBUUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libuutil.a LIBVGL?= ${LIBDESTDIR}${LIBDIR_BASE}/libvgl.a LIBVMMAPI?= ${LIBDESTDIR}${LIBDIR_BASE}/libvmmapi.a LIBWIND?= ${LIBDESTDIR}${LIBDIR_BASE}/libwind.a LIBWRAP?= ${LIBDESTDIR}${LIBDIR_BASE}/libwrap.a LIBXO?= ${LIBDESTDIR}${LIBDIR_BASE}/libxo.a LIBXPG4?= ${LIBDESTDIR}${LIBDIR_BASE}/libxpg4.a LIBY?= ${LIBDESTDIR}${LIBDIR_BASE}/liby.a LIBYPCLNT?= ${LIBDESTDIR}${LIBDIR_BASE}/libypclnt.a LIBZ?= ${LIBDESTDIR}${LIBDIR_BASE}/libz.a LIBZFS?= ${LIBDESTDIR}${LIBDIR_BASE}/libzfs.a LIBZFS_CORE?= ${LIBDESTDIR}${LIBDIR_BASE}/libzfs_core.a LIBZFSBOOTENV?= ${LIBDESTDIR}${LIBDIR_BASE}/libzfsbootenv.a LIBZPOOL?= ${LIBDESTDIR}${LIBDIR_BASE}/libzpool.a LIBZUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libzutil.a # enforce the 2 -lpthread and -lc to always be the last in that exact order .if defined(LDADD) .if ${LDADD:M-lpthread} LDADD:= ${LDADD:N-lpthread} -lpthread .endif .if ${LDADD:M-lc} LDADD:= ${LDADD:N-lc} -lc .endif .endif # Only do this for src builds. .if defined(SRCTOP) .if defined(_LIBRARIES) && defined(LIB) && \ ${_LIBRARIES:M${LIB}} != "" .if !defined(LIB${LIB:tu}) .error ${.CURDIR}: Missing value for LIB${LIB:tu} in ${_this:T}. Likely should be: LIB${LIB:tu}?= $${LIBDESTDIR}$${LIBDIR_BASE}/lib${LIB}.a .endif .endif # Derive LIB*SRCDIR from LIB*DIR .for lib in ${_LIBRARIES} LIB${lib:tu}SRCDIR?= ${SRCTOP}/${LIB${lib:tu}DIR:S,^${OBJTOP}/,,} .endfor .else # Out of tree builds # There are LIBADD defined in an out-of-tree build. Are they *all* # in-tree libraries? If so convert them to LDADD to support # partial checkouts. .if !empty(LIBADD) _convert_libadd= 1 .for l in ${LIBADD} .if empty(LIB${l:tu}) _convert_libadd= 0 .endif .endfor .if ${_convert_libadd} == 1 .warning Converting out-of-tree build LIBADDs into LDADD. This is not fully supported. .for l in ${LIBADD} LDADD+= -l${l} .endfor .endif .endif .endif # defined(SRCTOP) diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index 2db4a0dee4d8..77f32c8cecb1 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -1,737 +1,740 @@ # $FreeBSD$ # # The include file define library names suitable # for INTERNALLIB and PRIVATELIB definition .if !target(____) .error src.libnames.mk cannot be included directly. .endif .if !target(____) ____: .include _PRIVATELIBS= \ atf_c \ atf_cxx \ auditd \ bsdstat \ devdctl \ event1 \ gmock \ gtest \ gmock_main \ gtest_main \ heimipcc \ heimipcs \ ldns \ sqlite3 \ ssh \ ucl \ unbound \ zstd _INTERNALLIBS= \ amu \ bsnmptools \ c_nossp_pic \ cron \ elftc \ fifolog \ ifconfig \ ipf \ lpr \ lua \ lutok \ netbsd \ ntp \ ntpevent \ openbsd \ opts \ parse \ pe \ pfctl \ pmcstat \ sl \ sm \ smdb \ smutil \ telnet \ vers \ wpaap \ wpacommon \ wpacrypto \ wpadrivers \ wpaeap_common \ wpaeap_peer \ wpaeap_server \ wpaeapol_auth \ wpaeapol_supp \ wpal2_packet \ wparadius \ wparsn_supp \ wpatls \ wpautils \ wpawps _LIBRARIES= \ ${_PRIVATELIBS} \ ${_INTERNALLIBS} \ ${LOCAL_LIBRARIES} \ 80211 \ 9p \ alias \ archive \ asn1 \ avl \ be \ begemot \ bluetooth \ bsdxml \ bsm \ bsnmp \ bz2 \ c \ c_pic \ calendar \ cam \ casper \ cap_dns \ cap_fileargs \ cap_grp \ cap_net \ cap_netdb \ cap_pwd \ cap_sysctl \ cap_syslog \ com_err \ compiler_rt \ crypt \ crypto \ ctf \ cuse \ cxxrt \ devctl \ devdctl \ devinfo \ devstat \ dialog \ dl \ dpv \ dtrace \ dwarf \ edit \ efivar \ elf \ execinfo \ fetch \ figpar \ geom \ gpio \ gssapi \ gssapi_krb5 \ hdb \ heimbase \ heimntlm \ heimsqlite \ hx509 \ icp \ ipsec \ ipt \ jail \ kadm5clnt \ kadm5srv \ kafs5 \ kdc \ kiconv \ krb5 \ kvm \ l \ lzma \ m \ magic \ md \ memstat \ mp \ mt \ ncursesw \ netgraph \ netmap \ ngatm \ nv \ nvpair \ opencsd \ opie \ pam \ panel \ panelw \ pcap \ pcsclite \ pjdlog \ pmc \ proc \ procstat \ pthread \ radius \ regex \ roken \ rpcsec_gss \ rpcsvc \ rt \ rtld_db \ sbuf \ sdp \ sm \ smb \ spl \ ssl \ ssp_nonshared \ stats \ stdthreads \ supcplusplus \ sysdecode \ tacplus \ termcapw \ + tinfow \ tpool \ ufs \ ugidfw \ ulog \ umem \ usb \ usbhid \ util \ uutil \ vmmapi \ wind \ wrap \ xo \ y \ ypclnt \ z \ zfs_core \ zfs \ zfsbootenv \ zpool \ zutil .if ${MK_BLACKLIST} != "no" _LIBRARIES+= \ blacklist \ .endif .if ${MK_OFED} != "no" _LIBRARIES+= \ cxgb4 \ ibcm \ ibmad \ ibnetdisc \ ibumad \ ibverbs \ mlx4 \ mlx5 \ rdmacm \ osmcomp \ opensm \ osmvendor .endif .if ${MK_BEARSSL} == "yes" _LIBRARIES+= \ bearssl \ secureboot \ LIBBEARSSL?= ${LIBBEARSSLDIR}/libbearssl.a LIBSECUREBOOT?= ${LIBSECUREBOOTDIR}/libsecureboot.a .endif .if ${MK_VERIEXEC} == "yes" _LIBRARIES+= veriexec LIBVERIEXEC?= ${LIBVERIEXECDIR}/libveriexec.a .endif # Each library's LIBADD needs to be duplicated here for static linkage of # 2nd+ order consumers. Auto-generating this would be better. _DP_80211= sbuf bsdxml _DP_9p= sbuf _DP_archive= z bz2 lzma bsdxml zstd _DP_zstd= pthread .if ${MK_BLACKLIST} != "no" _DP_blacklist+= pthread .endif _DP_crypto= pthread .if ${MK_OPENSSL} != "no" _DP_archive+= crypto .else _DP_archive+= md .endif _DP_sqlite3= pthread _DP_ssl= crypto _DP_ssh= crypto crypt z .if ${MK_LDNS} != "no" _DP_ssh+= ldns .endif _DP_edit= ncursesw .if ${MK_OPENSSL} != "no" _DP_bsnmp= crypto .endif _DP_geom= bsdxml sbuf _DP_cam= sbuf _DP_kvm= elf _DP_casper= nv _DP_cap_dns= nv _DP_cap_fileargs= nv _DP_cap_grp= nv _DP_cap_pwd= nv _DP_cap_sysctl= nv _DP_cap_syslog= nv .if ${MK_OFED} != "no" _DP_pcap= ibverbs mlx5 .endif _DP_pjdlog= util _DP_opie= md _DP_usb= pthread _DP_unbound= ssl crypto pthread _DP_rt= pthread .if ${MK_OPENSSL} == "no" _DP_radius= md .else _DP_radius= crypto .endif _DP_rtld_db= elf procstat _DP_procstat= kvm util elf .if ${MK_CXX} == "yes" _DP_proc= cxxrt .endif .if ${MK_CDDL} != "no" _DP_proc+= ctf .endif _DP_proc+= elf procstat rtld_db util _DP_mp= crypto _DP_memstat= kvm _DP_magic= z _DP_mt= sbuf bsdxml _DP_ldns= ssl crypto _DP_lua= m _DP_lutok= lua .if ${MK_OPENSSL} != "no" _DP_fetch= ssl crypto .else _DP_fetch= md .endif _DP_execinfo= elf _DP_dwarf= elf _DP_dpv= dialog figpar util ncursesw _DP_dialog= ncursesw m _DP_cuse= pthread _DP_atf_cxx= atf_c _DP_gtest= pthread regex _DP_gmock= gtest _DP_gmock_main= gmock _DP_gtest_main= gtest _DP_devstat= kvm _DP_pam= radius tacplus opie md util .if ${MK_KERBEROS} != "no" _DP_pam+= krb5 .endif .if ${MK_OPENSSH} != "no" _DP_pam+= ssh .endif .if ${MK_NIS} != "no" _DP_pam+= ypclnt .endif _DP_roken= crypt _DP_kadm5clnt= com_err krb5 roken _DP_kadm5srv= com_err hdb krb5 roken _DP_heimntlm= crypto com_err krb5 roken _DP_hx509= asn1 com_err crypto roken wind _DP_hdb= asn1 com_err krb5 roken sqlite3 _DP_asn1= com_err roken _DP_kdc= roken hdb hx509 krb5 heimntlm asn1 crypto _DP_wind= com_err roken _DP_heimbase= pthread _DP_heimipcc= heimbase roken pthread _DP_heimipcs= heimbase roken pthread _DP_kafs5= asn1 krb5 roken _DP_krb5+= asn1 com_err crypt crypto hx509 roken wind heimbase heimipcc _DP_gssapi_krb5+= gssapi krb5 crypto roken asn1 com_err _DP_lzma= md pthread _DP_ucl= m _DP_vmmapi= util _DP_opencsd= cxxrt _DP_ctf= spl z _DP_dtrace= ctf elf proc pthread rtld_db _DP_xo= util _DP_ztest= geom m nvpair umem zpool pthread avl zfs_core spl zutil zfs uutil icp # The libc dependencies are not strictly needed but are defined to make the # assert happy. _DP_c= compiler_rt .if ${MK_SSP} != "no" && \ (${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH:Mpower*} != "") _DP_c+= ssp_nonshared .endif _DP_stats= sbuf pthread _DP_stdthreads= pthread _DP_tacplus= md +_DP_ncursesw= tinfow _DP_panelw= ncursesw _DP_rpcsec_gss= gssapi _DP_smb= kiconv _DP_ulog= md _DP_fifolog= z _DP_ipf= kvm _DP_tpool= spl _DP_uutil= avl spl _DP_zfs= md pthread umem util uutil m avl bsdxml crypto geom nvpair \ z zfs_core zutil _DP_zfsbootenv= zfs nvpair _DP_zfs_core= nvpair _DP_zpool= md pthread z icp spl nvpair avl umem _DP_zutil= avl tpool _DP_be= zfs spl nvpair zfsbootenv _DP_netmap= _DP_ifconfig= m _DP_pfctl= nv # OFED support .if ${MK_OFED} != "no" _DP_cxgb4= ibverbs pthread _DP_ibcm= ibverbs _DP_ibmad= ibumad _DP_ibnetdisc= osmcomp ibmad ibumad _DP_ibumad= _DP_ibverbs= _DP_mlx4= ibverbs pthread _DP_mlx5= ibverbs pthread _DP_rdmacm= ibverbs _DP_osmcomp= pthread _DP_opensm= pthread _DP_osmvendor= ibumad pthread .endif # Define special cases LDADD_supcplusplus= -lsupc++ LIBATF_C= ${LIBDESTDIR}${LIBDIR_BASE}/libprivateatf-c.a LIBATF_CXX= ${LIBDESTDIR}${LIBDIR_BASE}/libprivateatf-c++.a LDADD_atf_c= -lprivateatf-c LDADD_atf_cxx= -lprivateatf-c++ LIBGMOCK= ${LIBDESTDIR}${LIBDIR_BASE}/libprivategmock.a LIBGMOCK_MAIN= ${LIBDESTDIR}${LIBDIR_BASE}/libprivategmock_main.a LIBGTEST= ${LIBDESTDIR}${LIBDIR_BASE}/libprivategtest.a LIBGTEST_MAIN= ${LIBDESTDIR}${LIBDIR_BASE}/libprivategtest_main.a LDADD_gmock= -lprivategmock LDADD_gtest= -lprivategtest LDADD_gmock_main= -lprivategmock_main LDADD_gtest_main= -lprivategtest_main .for _l in ${_PRIVATELIBS} LIB${_l:tu}?= ${LIBDESTDIR}${LIBDIR_BASE}/libprivate${_l}.a .endfor .if ${MK_PIE} != "no" PIE_SUFFIX= _pie .endif .for _l in ${_LIBRARIES} .if ${_INTERNALLIBS:M${_l}} || !defined(SYSROOT) LDADD_${_l}_L+= -L${LIB${_l:tu}DIR} .endif DPADD_${_l}?= ${LIB${_l:tu}} .if ${_PRIVATELIBS:M${_l}} LDADD_${_l}?= -lprivate${_l} .elif ${_INTERNALLIBS:M${_l}} LDADD_${_l}?= ${LDADD_${_l}_L} -l${_l:S/${PIE_SUFFIX}//}${PIE_SUFFIX} .else LDADD_${_l}?= ${LDADD_${_l}_L} -l${_l} .endif # Add in all dependencies for static linkage. .if defined(_DP_${_l}) && (${_INTERNALLIBS:M${_l}} || \ (defined(NO_SHARED) && ${NO_SHARED:tl} != "no")) .for _d in ${_DP_${_l}} DPADD_${_l}+= ${DPADD_${_d}} LDADD_${_l}+= ${LDADD_${_d}} .endfor .endif .endfor # These are special cases where the library is broken and anything that uses # it needs to add more dependencies. Broken usually means that it has a # cyclic dependency and cannot link its own dependencies. This is bad, please # fix the library instead. # Unless the library itself is broken then the proper place to define # dependencies is _DP_* above. # libatf-c++ exposes libatf-c abi hence we need to explicit link to atf_c for # atf_cxx DPADD_atf_cxx+= ${DPADD_atf_c} LDADD_atf_cxx+= ${LDADD_atf_c} DPADD_gmock+= ${DPADD_gtest} LDADD_gmock+= ${LDADD_gtest} DPADD_gmock_main+= ${DPADD_gmock} LDADD_gmock_main+= ${LDADD_gmock} DPADD_gtest_main+= ${DPADD_gtest} LDADD_gtest_main+= ${LDADD_gtest} # Detect LDADD/DPADD that should be LIBADD, before modifying LDADD here. _BADLDADD= .for _l in ${LDADD:M-l*:N-l*/*:C,^-l,,} .if ${_LIBRARIES:M${_l}} && !${_PRIVATELIBS:M${_l}} _BADLDADD+= ${_l} .endif .endfor .if !empty(_BADLDADD) .error ${.CURDIR}: These libraries should be LIBADD+=foo rather than DPADD/LDADD+=-lfoo: ${_BADLDADD} .endif .for _l in ${LIBADD} DPADD+= ${DPADD_${_l}} LDADD+= ${LDADD_${_l}} .endfor _LIB_OBJTOP?= ${OBJTOP} # INTERNALLIB definitions. LIBELFTCDIR= ${_LIB_OBJTOP}/lib/libelftc LIBELFTC?= ${LIBELFTCDIR}/libelftc${PIE_SUFFIX}.a LIBLUADIR= ${_LIB_OBJTOP}/lib/liblua LIBLUA?= ${LIBLUADIR}/liblua${PIE_SUFFIX}.a LIBLUTOKDIR= ${_LIB_OBJTOP}/lib/liblutok LIBLUTOK?= ${LIBLUTOKDIR}/liblutok${PIE_SUFFIX}.a LIBPEDIR= ${_LIB_OBJTOP}/lib/libpe LIBPE?= ${LIBPEDIR}/libpe${PIE_SUFFIX}.a LIBOPENBSDDIR= ${_LIB_OBJTOP}/lib/libopenbsd LIBOPENBSD?= ${LIBOPENBSDDIR}/libopenbsd${PIE_SUFFIX}.a LIBSMDIR= ${_LIB_OBJTOP}/lib/libsm LIBSM?= ${LIBSMDIR}/libsm${PIE_SUFFIX}.a LIBSMDBDIR= ${_LIB_OBJTOP}/lib/libsmdb LIBSMDB?= ${LIBSMDBDIR}/libsmdb${PIE_SUFFIX}.a LIBSMUTILDIR= ${_LIB_OBJTOP}/lib/libsmutil LIBSMUTIL?= ${LIBSMUTILDIR}/libsmutil${PIE_SUFFIX}.a LIBNETBSDDIR?= ${_LIB_OBJTOP}/lib/libnetbsd LIBNETBSD?= ${LIBNETBSDDIR}/libnetbsd${PIE_SUFFIX}.a LIBVERSDIR?= ${_LIB_OBJTOP}/kerberos5/lib/libvers LIBVERS?= ${LIBVERSDIR}/libvers${PIE_SUFFIX}.a LIBSLDIR= ${_LIB_OBJTOP}/kerberos5/lib/libsl LIBSL?= ${LIBSLDIR}/libsl${PIE_SUFFIX}.a LIBIFCONFIGDIR= ${_LIB_OBJTOP}/lib/libifconfig LIBIFCONFIG?= ${LIBIFCONFIGDIR}/libifconfig${PIE_SUFFIX}.a LIBIPFDIR= ${_LIB_OBJTOP}/sbin/ipf/libipf LIBIPF?= ${LIBIPFDIR}/libipf${PIE_SUFFIX}.a LIBTELNETDIR= ${_LIB_OBJTOP}/lib/libtelnet LIBTELNET?= ${LIBTELNETDIR}/libtelnet${PIE_SUFFIX}.a LIBCRONDIR= ${_LIB_OBJTOP}/usr.sbin/cron/lib LIBCRON?= ${LIBCRONDIR}/libcron${PIE_SUFFIX}.a LIBNTPDIR= ${_LIB_OBJTOP}/usr.sbin/ntp/libntp LIBNTP?= ${LIBNTPDIR}/libntp${PIE_SUFFIX}.a LIBNTPEVENTDIR= ${_LIB_OBJTOP}/usr.sbin/ntp/libntpevent LIBNTPEVENT?= ${LIBNTPEVENTDIR}/libntpevent${PIE_SUFFIX}.a LIBOPTSDIR= ${_LIB_OBJTOP}/usr.sbin/ntp/libopts LIBOPTS?= ${LIBOPTSDIR}/libopts${PIE_SUFFIX}.a LIBPARSEDIR= ${_LIB_OBJTOP}/usr.sbin/ntp/libparse LIBPARSE?= ${LIBPARSEDIR}/libparse${PIE_SUFFIX}.a LIBPFCTL= ${_LIB_OBJTOP}/lib/libpfctl LIBPFCTL?= ${LIBPFCTLDIR}/libpfctl${PIE_SUFFIX}.a LIBLPRDIR= ${_LIB_OBJTOP}/usr.sbin/lpr/common_source LIBLPR?= ${LIBLPRDIR}/liblpr${PIE_SUFFIX}.a LIBFIFOLOGDIR= ${_LIB_OBJTOP}/usr.sbin/fifolog/lib LIBFIFOLOG?= ${LIBFIFOLOGDIR}/libfifolog${PIE_SUFFIX}.a LIBBSNMPTOOLSDIR= ${_LIB_OBJTOP}/usr.sbin/bsnmpd/tools/libbsnmptools LIBBSNMPTOOLS?= ${LIBBSNMPTOOLSDIR}/libbsnmptools${PIE_SUFFIX}.a LIBBE?= ${LIBBEDIR}/libbe${PIE_SUFFIX}.a LIBPMCSTATDIR= ${_LIB_OBJTOP}/lib/libpmcstat LIBPMCSTAT?= ${LIBPMCSTATDIR}/libpmcstat${PIE_SUFFIX}.a LIBWPAAPDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/ap LIBWPAAP?= ${LIBWPAAPDIR}/libwpaap${PIE_SUFFIX}.a LIBWPACOMMONDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/common LIBWPACOMMON?= ${LIBWPACOMMONDIR}/libwpacommon${PIE_SUFFIX}.a LIBWPACRYPTODIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/crypto LIBWPACRYPTO?= ${LIBWPACRYPTODIR}/libwpacrypto${PIE_SUFFIX}.a LIBWPADRIVERSDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/drivers LIBWPADRIVERS?= ${LIBWPADRIVERSDIR}/libwpadrivers${PIE_SUFFIX}.a LIBWPAEAP_COMMONDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/eap_common LIBWPAEAP_COMMON?= ${LIBWPAEAP_COMMONDIR}/libwpaeap_common${PIE_SUFFIX}.a LIBWPAEAP_PEERDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/eap_peer LIBWPAEAP_PEER?= ${LIBWPAEAP_PEERDIR}/libwpaeap_peer${PIE_SUFFIX}.a LIBWPAEAP_SERVERDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/eap_server LIBWPAEAP_SERVER?= ${LIBWPAEAP_SERVERDIR}/libwpaeap_server${PIE_SUFFIX}.a LIBWPAEAPOL_AUTHDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/eapol_auth LIBWPAEAPOL_AUTH?= ${LIBWPAEAPOL_AUTHDIR}/libwpaeapol_auth${PIE_SUFFIX}.a LIBWPAEAPOL_SUPPDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/eapol_supp LIBWPAEAPOL_SUPP?= ${LIBWPAEAPOL_SUPPDIR}/libwpaeapol_supp${PIE_SUFFIX}.a LIBWPAL2_PACKETDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/l2_packet LIBWPAL2_PACKET?= ${LIBWPAL2_PACKETDIR}/libwpal2_packet${PIE_SUFFIX}.a LIBWPARADIUSDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/radius LIBWPARADIUS?= ${LIBWPARADIUSDIR}/libwparadius${PIE_SUFFIX}.a LIBWPARSN_SUPPDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/rsn_supp LIBWPARSN_SUPP?= ${LIBWPARSN_SUPPDIR}/libwparsn_supp${PIE_SUFFIX}.a LIBWPATLSDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/tls LIBWPATLS?= ${LIBWPATLSDIR}/libwpatls${PIE_SUFFIX}.a LIBWPAUTILSDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/utils LIBWPAUTILS?= ${LIBWPAUTILSDIR}/libwpautils${PIE_SUFFIX}.a LIBWPAWPSDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/wps LIBWPAWPS?= ${LIBWPAWPSDIR}/libwpawps${PIE_SUFFIX}.a LIBC_NOSSP_PICDIR= ${_LIB_OBJTOP}/lib/libc LIBC_NOSSP_PIC?= ${LIBC_NOSSP_PICDIR}/libc_nossp_pic.a # Define a directory for each library. This is useful for adding -L in when # not using a --sysroot or for meta mode bootstrapping when there is no # Makefile.depend. These are sorted by directory. LIBAVLDIR= ${OBJTOP}/cddl/lib/libavl LIBCTFDIR= ${OBJTOP}/cddl/lib/libctf LIBDTRACEDIR= ${OBJTOP}/cddl/lib/libdtrace LIBICPDIR= ${OBJTOP}/cddl/lib/libicp LIBNVPAIRDIR= ${OBJTOP}/cddl/lib/libnvpair LIBUMEMDIR= ${OBJTOP}/cddl/lib/libumem LIBUUTILDIR= ${OBJTOP}/cddl/lib/libuutil LIBZFSDIR= ${OBJTOP}/cddl/lib/libzfs LIBZFS_COREDIR= ${OBJTOP}/cddl/lib/libzfs_core LIBZFSBOOTENVDIR= ${OBJTOP}/cddl/lib/libzfsbootenv LIBZPOOLDIR= ${OBJTOP}/cddl/lib/libzpool LIBZUTILDIR= ${OBJTOP}/cddl/lib/libzutil LIBTPOOLDIR= ${OBJTOP}/cddl/lib/libtpool # OFED support LIBCXGB4DIR= ${OBJTOP}/lib/ofed/libcxgb4 LIBIBCMDIR= ${OBJTOP}/lib/ofed/libibcm LIBIBMADDIR= ${OBJTOP}/lib/ofed/libibmad LIBIBNETDISCDIR=${OBJTOP}/lib/ofed/libibnetdisc LIBIBUMADDIR= ${OBJTOP}/lib/ofed/libibumad LIBIBVERBSDIR= ${OBJTOP}/lib/ofed/libibverbs LIBMLX4DIR= ${OBJTOP}/lib/ofed/libmlx4 LIBMLX5DIR= ${OBJTOP}/lib/ofed/libmlx5 LIBRDMACMDIR= ${OBJTOP}/lib/ofed/librdmacm LIBOSMCOMPDIR= ${OBJTOP}/lib/ofed/complib LIBOPENSMDIR= ${OBJTOP}/lib/ofed/libopensm LIBOSMVENDORDIR=${OBJTOP}/lib/ofed/libvendor LIBDIALOGDIR= ${OBJTOP}/gnu/lib/libdialog LIBSSPDIR= ${OBJTOP}/lib/libssp LIBSSP_NONSHAREDDIR= ${OBJTOP}/lib/libssp_nonshared LIBASN1DIR= ${OBJTOP}/kerberos5/lib/libasn1 LIBGSSAPI_KRB5DIR= ${OBJTOP}/kerberos5/lib/libgssapi_krb5 LIBGSSAPI_NTLMDIR= ${OBJTOP}/kerberos5/lib/libgssapi_ntlm LIBGSSAPI_SPNEGODIR= ${OBJTOP}/kerberos5/lib/libgssapi_spnego LIBHDBDIR= ${OBJTOP}/kerberos5/lib/libhdb LIBHEIMBASEDIR= ${OBJTOP}/kerberos5/lib/libheimbase LIBHEIMIPCCDIR= ${OBJTOP}/kerberos5/lib/libheimipcc LIBHEIMIPCSDIR= ${OBJTOP}/kerberos5/lib/libheimipcs LIBHEIMNTLMDIR= ${OBJTOP}/kerberos5/lib/libheimntlm LIBHX509DIR= ${OBJTOP}/kerberos5/lib/libhx509 LIBKADM5CLNTDIR= ${OBJTOP}/kerberos5/lib/libkadm5clnt LIBKADM5SRVDIR= ${OBJTOP}/kerberos5/lib/libkadm5srv LIBKAFS5DIR= ${OBJTOP}/kerberos5/lib/libkafs5 LIBKDCDIR= ${OBJTOP}/kerberos5/lib/libkdc LIBKRB5DIR= ${OBJTOP}/kerberos5/lib/libkrb5 LIBROKENDIR= ${OBJTOP}/kerberos5/lib/libroken LIBWINDDIR= ${OBJTOP}/kerberos5/lib/libwind LIBATF_CDIR= ${OBJTOP}/lib/atf/libatf-c LIBATF_CXXDIR= ${OBJTOP}/lib/atf/libatf-c++ LIBGMOCKDIR= ${OBJTOP}/lib/googletest/gmock LIBGMOCK_MAINDIR= ${OBJTOP}/lib/googletest/gmock_main LIBGTESTDIR= ${OBJTOP}/lib/googletest/gtest LIBGTEST_MAINDIR= ${OBJTOP}/lib/googletest/gtest_main LIBALIASDIR= ${OBJTOP}/lib/libalias/libalias LIBBLACKLISTDIR= ${OBJTOP}/lib/libblacklist LIBBLOCKSRUNTIMEDIR= ${OBJTOP}/lib/libblocksruntime LIBBSNMPDIR= ${OBJTOP}/lib/libbsnmp/libbsnmp LIBCASPERDIR= ${OBJTOP}/lib/libcasper/libcasper LIBCAP_DNSDIR= ${OBJTOP}/lib/libcasper/services/cap_dns LIBCAP_GRPDIR= ${OBJTOP}/lib/libcasper/services/cap_grp LIBCAP_NETDIR= ${OBJTOP}/lib/libcasper/services/cap_net LIBCAP_PWDDIR= ${OBJTOP}/lib/libcasper/services/cap_pwd LIBCAP_SYSCTLDIR= ${OBJTOP}/lib/libcasper/services/cap_sysctl LIBCAP_SYSLOGDIR= ${OBJTOP}/lib/libcasper/services/cap_syslog LIBBSDXMLDIR= ${OBJTOP}/lib/libexpat LIBKVMDIR= ${OBJTOP}/lib/libkvm LIBPTHREADDIR= ${OBJTOP}/lib/libthr LIBMDIR= ${OBJTOP}/lib/msun LIBFORMWDIR= ${OBJTOP}/lib/ncurses/form LIBMENUWDIR= ${OBJTOP}/lib/ncurses/menu LIBNCURSESWDIR= ${OBJTOP}/lib/ncurses/ncurses +LIBTINFOWDIR= ${OBJTOP}/lib/ncurses/tinfo LIBPANELWDIR= ${OBJTOP}/lib/ncurses/panel LIBCRYPTODIR= ${OBJTOP}/secure/lib/libcrypto LIBSPLDIR= ${OBJTOP}/cddl/lib/libspl LIBSSHDIR= ${OBJTOP}/secure/lib/libssh LIBSSLDIR= ${OBJTOP}/secure/lib/libssl LIBTEKENDIR= ${OBJTOP}/sys/teken/libteken LIBEGACYDIR= ${OBJTOP}/tools/build LIBLNDIR= ${OBJTOP}/usr.bin/lex/lib -LIBTERMCAPWDIR= ${LIBNCURSESWDIR} +LIBTERMCAPWDIR= ${LIBTINFOWDIR} # Default other library directories to lib/libNAME. .for lib in ${_LIBRARIES} LIB${lib:tu}DIR?= ${OBJTOP}/lib/lib${lib} .endfor # Validate that listed LIBADD are valid. .for _l in ${LIBADD} .if empty(_LIBRARIES:M${_l}) _BADLIBADD+= ${_l} .endif .endfor .if !empty(_BADLIBADD) .error ${.CURDIR}: Invalid LIBADD used which may need to be added to ${_this:T}: ${_BADLIBADD} .endif # Sanity check that libraries are defined here properly when building them. .if defined(LIB) && ${_LIBRARIES:M${LIB}} != "" .if !empty(LIBADD) && \ (!defined(_DP_${LIB}) || ${LIBADD:O:u} != ${_DP_${LIB}:O:u}) .error ${.CURDIR}: Missing or incorrect _DP_${LIB} entry in ${_this:T}. Should match LIBADD for ${LIB} ('${LIBADD}' vs '${_DP_${LIB}}') .endif # Note that OBJTOP is not yet defined here but for the purpose of the check # it is fine as it resolves to the SRC directory. .if !defined(LIB${LIB:tu}DIR) || !exists(${SRCTOP}/${LIB${LIB:tu}DIR:S,^${OBJTOP}/,,}) .error ${.CURDIR}: Missing or incorrect value for LIB${LIB:tu}DIR in ${_this:T}: ${LIB${LIB:tu}DIR:S,^${OBJTOP}/,,} .endif .if ${_INTERNALLIBS:M${LIB}} != "" && !defined(LIB${LIB:tu}) .error ${.CURDIR}: Missing value for LIB${LIB:tu} in ${_this:T}. Likely should be: LIB${LIB:tu}?= $${LIB${LIB:tu}DIR}/lib${LIB}.a .endif .endif .endif # !target(____)