Makefile revision 55759
11832Swollman# $FreeBSD: head/lib/ncurses/ncurses/Makefile 55759 2000-01-10 12:12:51Z phantom $
250473Speter
31832SwollmanNCURSES=${.CURDIR}/../../contrib/ncurses
41832Swollman
51832SwollmanLIB=	ncurses
6231118SdimSHLIB_MAJOR=5
71832SwollmanSHLIB_MINOR=0
826208Swpaul
916123Swpaul# Should be elsewhere
1026208SwpaulAWK?=	awk
1126208SwpaulTERMINFODIR?=	${DESTDIR}/usr/share/misc
1226208Swpaul
131832SwollmanNCURSES_MAJOR!=egrep 'NCURSES_MAJOR[ 	]*=' ${NCURSES}/dist.mk | sed -e 's/^[^0-9]*//'
1426208SwpaulNCURSES_MINOR!=egrep 'NCURSES_MINOR[ 	]*=' ${NCURSES}/dist.mk | sed -e 's/^[^0-9]*//'
1526208SwpaulNCURSES_PATCH!=egrep 'NCURSES_PATCH[ 	]*=' ${NCURSES}/dist.mk | sed -e 's/^[^0-9]*//'
1626208Swpaul
171832Swollman# From autoconf (!)
181832SwollmanNCURSES_CONST=
191832SwollmanNCURSES_XNAMES=	0
2096462SruOSPEED_INCLUDES=\#include <termios.h>
2196462SruOSPEED_TYPE=	speed_t
2296462SruBUILTIN_BOOL=	1
2396462SruBOOL_TYPE=	0
2496462SruTYPE_OF_BOOL=	char
251832SwollmanTYPEOF_CHTYPE=	long
261832SwollmanWIDEC_SHIFT=	8
2739429SobrienSHIFT_LIMIT=	32
281832SwollmanONEUL=		1UL
2932551Sbde
3032551Sbde.PATH:  ${NCURSES}/ncurses
311832Swollman.PATH:  ${NCURSES}/ncurses/base
32.PATH:  ${NCURSES}/ncurses/tinfo
33.PATH:  ${NCURSES}/ncurses/tty
34.PATH:  ${NCURSES}/ncurses/trace
35.PATH:  ${NCURSES}/include
36.PATH:  ${NCURSES}/man
37
38INCS=	-I. -I${.CURDIR} -I${NCURSES}/ncurses -I${NCURSES}/include
39CFLAGS+=${INCS} -Wall -DFREEBSD_NATIVE -DNDEBUG -DHAVE_CONFIG_H -DTERMIOS
40
41GENSRC= \
42	codes.c \
43	expanded.c \
44	fallback.c \
45	lib_gen.c \
46	lib_keyname.c \
47	names.c \
48	unctrl.c
49
50GENHDR= \
51	curses.h \
52	hashsize.h \
53	init_keytry.h \
54	nomacros.h \
55	parametrized.h \
56	term.h \
57	termcap.h \
58	unctrl.h
59
60# Installed
61HEADERS=curses.h term.h termcap.h unctrl.h
62
63# Components of names.c and codes.c
64NAMESRC=boolnames boolfnames numnames numfnames strnames strfnames
65CODESRC=boolcodes numcodes strcodes
66
67SRCS=	${GENHDR} ${GENSRC} \
68	access.c \
69	add_tries.c \
70	alloc_entry.c \
71	alloc_ttype.c \
72	captoinfo.c \
73	comp_captab.c \
74	comp_error.c \
75	comp_expand.c \
76	comp_hash.c \
77	comp_parse.c \
78	comp_scan.c \
79	define_key.c \
80	doalloc.c \
81	free_ttype.c \
82	getenv_num.c \
83	hardscroll.c \
84	hashmap.c \
85	home_terminfo.c \
86	init_keytry.c \
87	keybound.c \
88	keyok.c \
89	lib_acs.c \
90	lib_addch.c \
91	lib_addstr.c \
92	lib_baudrate.c \
93	lib_beep.c \
94	lib_bkgd.c \
95	lib_box.c \
96	lib_chgat.c \
97	lib_clear.c \
98	lib_clearok.c \
99	lib_clrbot.c \
100	lib_clreol.c \
101	lib_color.c \
102	lib_colorset.c \
103	lib_cur_term.c \
104	lib_data.c \
105	lib_delch.c \
106	lib_delwin.c \
107	lib_dft_fgbg.c \
108	lib_echo.c \
109	lib_endwin.c \
110	lib_erase.c \
111	lib_flash.c \
112	lib_freeall.c \
113	lib_getch.c \
114	lib_getstr.c \
115	lib_has_cap.c \
116	lib_hline.c \
117	lib_immedok.c \
118	lib_inchstr.c \
119	lib_initscr.c \
120	lib_insch.c \
121	lib_insdel.c \
122	lib_insstr.c \
123	lib_instr.c \
124	lib_isendwin.c \
125	lib_kernel.c \
126	lib_leaveok.c \
127	lib_longname.c \
128	lib_mouse.c \
129	lib_move.c \
130	lib_mvcur.c \
131	lib_mvwin.c \
132	lib_napms.c \
133	lib_newterm.c \
134	lib_newwin.c \
135	lib_nl.c \
136	lib_options.c \
137	lib_overlay.c \
138	lib_pad.c \
139	lib_print.c \
140	lib_printw.c \
141	lib_raw.c \
142	lib_redrawln.c \
143	lib_refresh.c \
144	lib_restart.c \
145	lib_scanw.c \
146	lib_screen.c \
147	lib_scroll.c \
148	lib_scrollok.c \
149	lib_scrreg.c \
150	lib_set_term.c \
151	lib_setup.c \
152	lib_slk.c \
153	lib_slkatr_set.c \
154	lib_slkatrof.c \
155	lib_slkatron.c \
156	lib_slkatrset.c \
157	lib_slkattr.c \
158	lib_slkclear.c \
159	lib_slkcolor.c \
160	lib_slkinit.c \
161	lib_slklab.c \
162	lib_slkrefr.c \
163	lib_slkset.c \
164	lib_slktouch.c \
165	lib_termcap.c \
166	lib_termname.c \
167	lib_ti.c \
168	lib_touch.c \
169	lib_tparm.c \
170	lib_tputs.c \
171	lib_trace.c \
172	lib_traceatr.c \
173	lib_tracebits.c \
174	lib_tracechr.c \
175	lib_tracedmp.c \
176	lib_tracemse.c \
177	lib_tstp.c \
178	lib_ttyflags.c \
179	lib_twait.c \
180	lib_ungetch.c \
181	lib_vidattr.c \
182	lib_vline.c \
183	lib_wattroff.c \
184	lib_wattron.c \
185	lib_winch.c \
186	lib_window.c \
187	memmove.c \
188	name_match.c \
189	nc_panel.c \
190	parse_entry.c \
191	read_entry.c \
192	resizeterm.c \
193	safe_sprintf.c \
194	setbuf.c \
195	sigaction.c \
196	trace_buf.c \
197	trace_tries.c \
198	trace_xnames.c \
199	tries.c \
200	tty_update.c \
201	vsscanf.c \
202	wresize.c \
203	write_entry.c \
204
205# From our old libtermcap.
206# Used instead of the hideous read_termcap.c abomination.
207SRCS+=	termcap.c
208
209CLEANFILES+=	${GENSRC} ${GENHDR} keys.tries make_hash term.h.new \
210	make_keys MKterm.h.awk comp_captab.c \
211	namehdr nameftr codeftr ${NAMESRC} ${CODESRC}
212
213SYMLINKS+=libncurses.a ${LIBDIR}/libcurses.a
214SYMLINKS+=libncurses.a ${LIBDIR}/libtermcap.a
215SYMLINKS+=libncurses.a ${LIBDIR}/libtermlib.a
216SYMLINKS+=libncurses.a ${LIBDIR}/libmytinfo.a
217SYMLINKS+=libncurses.a ${LIBDIR}/libtinfo.a
218.if !defined(NOPIC)
219.if ${OBJFORMAT} == aout
220SYMLINKS+=libncurses.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
221	  libcurses.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
222SYMLINKS+=libncurses.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
223	  libtermcap.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
224SYMLINKS+=libncurses.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
225	  libtermlib.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
226SYMLINKS+=libncurses.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
227	  libmytinfo.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
228SYMLINKS+=libncurses.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
229	  libtinfo.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
230.else
231# no need for major at all, it's an ld-time redirection only
232SYMLINKS+=libncurses.so ${SHLIBDIR}/libcurses.so
233SYMLINKS+=libncurses.so ${SHLIBDIR}/libtermcap.so
234SYMLINKS+=libncurses.so ${SHLIBDIR}/libtermlib.so
235SYMLINKS+=libncurses.so ${SHLIBDIR}/libmytinfo.so
236SYMLINKS+=libncurses.so ${SHLIBDIR}/libtinfo.so
237.endif
238.endif
239.if !defined(NOPROFILE)
240SYMLINKS+=libncurses_p.a ${LIBDIR}/libcurses_p.a
241SYMLINKS+=libncurses_p.a ${LIBDIR}/libtermcap_p.a
242SYMLINKS+=libncurses_p.a ${LIBDIR}/libtermlib_p.a
243SYMLINKS+=libncurses_p.a ${LIBDIR}/libmytinfo_p.a
244SYMLINKS+=libncurses_p.a ${LIBDIR}/libtinfo_p.a
245.endif
246
247DOCSDIR= /usr/share/doc/ncurses
248DOCS=	ncurses-intro.html hackguide.html
249
250beforeinstall:	${HEADERS}
251	${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 ${HEADERS} \
252	    ${DESTDIR}/usr/include
253	rm -f ${DESTDIR}/usr/include/ncurses.h
254	ln -s curses.h ${DESTDIR}/usr/include/ncurses.h
255
256.for file in ${DOCS}
257	cd ${.CURDIR}/../../contrib/ncurses/misc ; \
258	${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 ${file} \
259		${DESTDIR}${DOCSDIR}
260.endfor
261
262# Generated source
263namehdr nameftr codeftr ${NAMESRC} ${CODESRC}: MKnames.awk Caps
264	${AWK} -f ${NCURSES}/ncurses/tinfo/MKnames.awk ${NCURSES}/include/Caps
265
266.ORDER: namehdr ${NAMESRC} ${CODESRC} nameftr codeftr names.c codes.c
267
268names.c:	 namehdr ${NAMESRC} nameftr
269	cat namehdr ${NAMESRC} nameftr > $@
270
271codes.c:	 namehdr ${CODESRC} codeftr
272	cat namehdr ${CODESRC} codeftr > $@
273
274lib_gen.c:	MKlib_gen.sh curses.h
275	sh ${NCURSES}/ncurses/base/MKlib_gen.sh "${CC} -E ${INCS}" \
276	    "${AWK}" < curses.h >$@
277
278lib_keyname.c:	keys.list MKkeyname.awk
279	${AWK} -f ${NCURSES}/ncurses/base/MKkeyname.awk \
280	    ${NCURSES}/ncurses/tinfo/keys.list > lib_keyname.c
281
282unctrl.c:	MKunctrl.awk
283	echo | ${AWK} -f ${NCURSES}/ncurses/base/MKunctrl.awk > unctrl.c
284
285comp_captab.c:	MKcaptab.awk Caps make_hash
286	sh ${NCURSES}/ncurses/tinfo/MKcaptab.awk "${AWK}" \
287	    ${NCURSES}/include/Caps > comp_captab.c
288
289expanded.c:	MKexpanded.sh
290	sh ${NCURSES}/ncurses/tty/MKexpanded.sh "${CC} -E" ${CFLAGS} >expanded.c
291
292fallback.c:	MKfallback.sh
293	sh ${NCURSES}/ncurses/tinfo/MKfallback.sh > fallback.c
294
295# Generated headers
296nomacros.h:	MKlib_gen.sh curses.h
297	sh ${NCURSES}/ncurses/base/MKlib_gen.sh "${CC} -E ${INCS}" \
298	    "${AWK}" < curses.h | fgrep undef > $@
299
300init_keytry.h:	keys.list make_keys
301	./make_keys ${NCURSES}/ncurses/tinfo/keys.list > init_keytry.h
302
303hashsize.h:	MKhashsize.sh Caps
304	sh ${NCURSES}/include/MKhashsize.sh ${NCURSES}/include/Caps > $@
305
306parametrized.h:	MKparametrized.sh Caps
307	AWK=${AWK} sh ${NCURSES}/include/MKparametrized.sh \
308	    ${NCURSES}/include/Caps > $@
309
310term.h:		MKterm.h.awk edit_cfg.sh Caps
311	${AWK} -f MKterm.h.awk ${NCURSES}/include/Caps > $@.new
312	sh ${NCURSES}/include/edit_cfg.sh ${.CURDIR}/ncurses_cfg.h $@.new
313	mv -f $@.new $@
314
315# Build tools
316build-tools: make_hash make_keys
317
318make_keys:	make_keys.c names.c curses.h
319	${CC} -o $@ ${CFLAGS} ${NCURSES}/ncurses/tinfo/make_keys.c
320
321make_hash:	comp_hash.c hashsize.h curses.h
322	${CC} -o $@ ${CFLAGS} -DMAIN_PROGRAM \
323		${NCURSES}/ncurses/tinfo/comp_hash.c
324
325# ./configure generated
326MKterm.h.awk:	MKterm.h.awk.in
327	sed <${NCURSES}/include/$@.in >$@ \
328	    -e "/@NCURSES_MAJOR@/s//${NCURSES_MAJOR}/" \
329	    -e "/@NCURSES_MINOR@/s//${NCURSES_MINOR}/" \
330	    -e "/@NCURSES_CONST@/s//${NCURSES_CONST}/" \
331	    -e "/@NCURSES_XNAMES@/s//${NCURSES_XNAMES}/"
332
333termcap.h:	termcap.h.in
334	sed <${NCURSES}/include/$@.in >$@ \
335	    -e "/@NCURSES_MAJOR@/s//${NCURSES_MAJOR}/" \
336	    -e "/@NCURSES_MINOR@/s//${NCURSES_MINOR}/" \
337	    -e "/@NCURSES_CONST@/s//${NCURSES_CONST}/" \
338	    -e "/@OSPEED_INCLUDES@/s//${OSPEED_INCLUDES}/" \
339	    -e "/@OSPEED_TYPE@/s//${OSPEED_TYPE}/"
340
341curses.h:	curses.h.in
342	sed <${NCURSES}/include/$@.in >$@ \
343	    -e "/@NCURSES_MAJOR@/s//${NCURSES_MAJOR}/" \
344	    -e "/@NCURSES_MINOR@/s//${NCURSES_MINOR}/" \
345	    -e "/@NCURSES_PATCH@/s//${NCURSES_PATCH}/" \
346	    -e "/@NCURSES_CONST@/s//${NCURSES_CONST}/" \
347	    -e "s/@cf_cv_builtin_bool@/${BUILTIN_BOOL}/g" \
348	    -e "s/@cf_cv_cc_bool_type@/${BOOL_TYPE}/g" \
349	    -e "s/@cf_cv_type_of_bool@/${TYPE_OF_BOOL}/g" \
350	    -e "s/@cf_cv_typeof_chtype@/${TYPEOF_CHTYPE}/g" \
351	    -e "s/@cf_cv_widec_shift@/${WIDEC_SHIFT}/g" \
352	    -e "s/@cf_cv_shift_limit@/${SHIFT_LIMIT}/g" \
353	    -e "s/@cf_cv_1UL@/${ONEUL}/g"
354
355unctrl.h:	unctrl.h.in
356	sed <${NCURSES}/include/$@.in >$@ \
357	    -e "/@NCURSES_MAJOR@/s//${NCURSES_MAJOR}/" \
358	    -e "/@NCURSES_MINOR@/s//${NCURSES_MINOR}/"
359
360# MAN page gunk
361terminfo.5:	MKterminfo.sh terminfo.head Caps
362	sh ${NCURSES}/man/MKterminfo.sh ${NCURSES}/man/terminfo.head \
363	    ${NCURSES}/include/Caps ${NCURSES}/man/terminfo.tail >$@
364
365CLEANFILES+=	terminfo.5
366MANFILTER=	sed -e 's\#@DATADIR@\#${TERMINFODIR}/terminfo\#g'
367
368MAN3x=	curs_addch.3x curs_addchstr.3x curs_addstr.3x curs_attr.3x \
369	curs_beep.3x curs_bkgd.3x curs_border.3x curs_clear.3x curs_color.3x \
370	curs_delch.3x curs_deleteln.3x curs_getch.3x curs_getstr.3x \
371	curs_getyx.3x curs_inch.3x curs_inchstr.3x curs_initscr.3x \
372	curs_inopts.3x curs_insch.3x curs_insstr.3x curs_instr.3x \
373	curs_kernel.3x curs_mouse.3x curs_move.3x curs_outopts.3x \
374	curs_overlay.3x curs_pad.3x curs_print.3x curs_printw.3x \
375	curs_refresh.3x curs_scanw.3x curs_scr_dump.3x curs_scroll.3x \
376	curs_slk.3x curs_termattrs.3x curs_termcap.3x curs_terminfo.3x \
377	curs_touch.3x curs_util.3x curs_window.3x define_key.3x \
378	dft_fgbg.3x keybound.3x keyok.3x ncurses.3x resizeterm.3x wresize.3x
379MAN5=	term.5 terminfo.5
380MAN7=	term.7
381
382# Generate the MAN3 list from MAN3x
383.for page in ${MAN3x}
384CLEANFILES+=${page:T:S/3x$/3/g}
385MAN3+=${page:T:S/3x$/3/g}
386all-man: ${page:T:S/3x$/3/g}
387${page:T:S/3x$/3/g}: ${page}
388	ln -s ${.ALLSRC} ${.TARGET}
389.endfor
390
391MLINKS+=curs_addch.3 addch.3 curs_addch.3 echochar.3 curs_addch.3 mvaddch.3 \
392	curs_addch.3 mvwaddch.3 curs_addch.3 waddch.3 curs_addch.3 wechochar.3
393MLINKS+=curs_addchstr.3 addchnstr.3 curs_addchstr.3 addchstr.3 \
394	curs_addchstr.3 mvaddchnstr.3 curs_addchstr.3 mvaddchstr.3 \
395	curs_addchstr.3 mvwaddchnstr.3 curs_addchstr.3 mvwaddchstr.3 \
396	curs_addchstr.3 waddchnstr.3 curs_addchstr.3 waddchstr.3
397MLINKS+=curs_addstr.3 addnstr.3 curs_addstr.3 addstr.3 \
398	curs_addstr.3 mvaddnstr.3 curs_addstr.3 mvaddstr.3 \
399	curs_addstr.3 mvwaddnstr.3 curs_addstr.3 mvwaddstr.3 \
400	curs_addstr.3 waddnstr.3 curs_addstr.3 waddstr.3
401MLINKS+=curs_attr.3 attr_get.3 curs_attr.3 attr_off.3 curs_attr.3 attr_on.3 \
402	curs_attr.3 attr_set.3 curs_attr.3 attroff.3 curs_attr.3 attron.3 \
403	curs_attr.3 attrset.3 curs_attr.3 chgat.3 curs_attr.3 color_set.3 \
404	curs_attr.3 mvchgat.3 curs_attr.3 mvwchgat.3 curs_attr.3 standend.3 \
405	curs_attr.3 standout.3 curs_attr.3 wattr_get.3 curs_attr.3 wattr_off.3 \
406	curs_attr.3 wattr_on.3 curs_attr.3 wattr_set.3 curs_attr.3 wattroff.3 \
407	curs_attr.3 wattron.3 curs_attr.3 wattrset.3 curs_attr.3 wchgat.3 \
408	curs_attr.3 wcolor_set.3 curs_attr.3 wstandend.3 \
409	curs_attr.3 wstandout.3
410MLINKS+=curs_beep.3 beep.3 curs_beep.3 flash.3
411MLINKS+=curs_bkgd.3 bkgd.3 curs_bkgd.3 bkgdset.3 curs_bkgd.3 getbkgd.3 \
412	curs_bkgd.3 wbkgd.3 curs_bkgd.3 wbkgdset.3
413MLINKS+=curs_border.3 border.3 curs_border.3 box.3 curs_border.3 hline.3 \
414	curs_border.3 mvhline.3 curs_border.3 mvwhline.3 \
415	curs_border.3 mvwvline.3 curs_border.3 vline.3 curs_border.3 wborder.3 \
416	curs_border.3 whline.3 curs_border.3 wvline.3
417MLINKS+=curs_clear.3 clear.3 curs_clear.3 clrtobot.3 curs_clear.3 clrtoeol.3 \
418	curs_clear.3 erase.3 curs_clear.3 wclear.3 curs_clear.3 wclrtobot.3 \
419	curs_clear.3 wclrtoeol.3 curs_clear.3 werase.3
420MLINKS+=curs_color.3 can_change_color.3 curs_color.3 color_content.3 \
421	curs_color.3 has_colors.3 curs_color.3 init_color.3 \
422	curs_color.3 init_pair.3 curs_color.3 pair_content.3 \
423	curs_color.3 start_color.3
424MLINKS+=curs_delch.3 delch.3 curs_delch.3 mvdelch.3 curs_delch.3 mvwdelch.3 \
425	curs_delch.3 wdelch.3
426MLINKS+=curs_deleteln.3 deleteln.3 curs_deleteln.3 insdelln.3 \
427	curs_deleteln.3 insertln.3 curs_deleteln.3 wdeleteln.3 \
428	curs_deleteln.3 winsdelln.3 curs_deleteln.3 winsertln.3
429MLINKS+=curs_getch.3 getch.3 curs_getch.3 has_key.3 curs_getch.3 mvgetch.3 \
430	curs_getch.3 mvwgetch.3 curs_getch.3 ungetch.3 curs_getch.3 wgetch.3
431MLINKS+=curs_getstr.3 getnstr.3 curs_getstr.3 getstr.3 \
432	curs_getstr.3 mvgetnstr.3 curs_getstr.3 mvgetstr.3 \
433	curs_getstr.3 mvwgetnstr.3 curs_getstr.3 mvwgetstr.3 \
434	curs_getstr.3 wgetnstr.3 curs_getstr.3 wgetstr.3
435MLINKS+=curs_getyx.3 getbegyx.3 curs_getyx.3 getmaxyx.3 \
436	curs_getyx.3 getparyx.3 curs_getyx.3 getyx.3
437MLINKS+=curs_inch.3 inch.3 curs_inch.3 mvinch.3 curs_inch.3 mvwinch.3 \
438	curs_inch.3 winch.3
439MLINKS+=curs_inchstr.3 inchnstr.3 curs_inchstr.3 inchstr.3 \
440	curs_inchstr.3 mvinchnstr.3 curs_inchstr.3 mvinchstr.3 \
441	curs_inchstr.3 mvwinchnstr.3 curs_inchstr.3 mvwinchstr.3 \
442	curs_inchstr.3 winchnstr.3 curs_inchstr.3 winchstr.3
443MLINKS+=curs_initscr.3 delscreen.3 curs_initscr.3 endwin.3 \
444	curs_initscr.3 initscr.3 curs_initscr.3 isendwin.3 \
445	curs_initscr.3 newterm.3 curs_initscr.3 set_term.3
446MLINKS+=curs_inopts.3 cbreak.3 curs_inopts.3 echo.3 curs_inopts.3 halfdelay.3 \
447	curs_inopts.3 intrflush.3 curs_inopts.3 keypad.3 curs_inopts.3 meta.3 \
448	curs_inopts.3 nocbreak.3 curs_inopts.3 nodelay.3 \
449	curs_inopts.3 noecho.3 curs_inopts.3 noqiflush.3 curs_inopts.3 noraw.3 \
450	curs_inopts.3 notimeout.3 curs_inopts.3 qiflush.3 curs_inopts.3 raw.3 \
451	curs_inopts.3 timeout.3 curs_inopts.3 typeahead.3 \
452	curs_inopts.3 wtimeout.3
453MLINKS+=curs_insch.3 insch.3 curs_insch.3 mvinsch.3 curs_insch.3 mvwinsch.3 \
454	curs_insch.3 winsch.3
455MLINKS+=curs_insstr.3 insnstr.3 curs_insstr.3 insstr.3 \
456	curs_insstr.3 mvinsnstr.3 curs_insstr.3 mvinsstr.3 \
457	curs_insstr.3 mvwinsnstr.3 curs_insstr.3 mvwinsstr.3 \
458	curs_insstr.3 winsnstr.3 curs_insstr.3 winsstr.3
459MLINKS+=curs_instr.3 innstr.3 curs_instr.3 instr.3 curs_instr.3 mvinnstr.3 \
460	curs_instr.3 mvinstr.3 curs_instr.3 mvwinnstr.3 \
461	curs_instr.3 mvwinstr.3 curs_instr.3 winnstr.3 curs_instr.3 winstr.3
462MLINKS+=curs_kernel.3 curs_set.3 curs_kernel.3 def_prog_mode.3 \
463	curs_kernel.3 def_shell_mode.3 curs_kernel.3 getsyx.3 \
464	curs_kernel.3 napms.3 curs_kernel.3 reset_prog_mode.3 \
465	curs_kernel.3 reset_shell_mode.3 curs_kernel.3 resetty.3 \
466	curs_kernel.3 ripoffline.3 curs_kernel.3 savetty.3 \
467	curs_kernel.3 setsyx.3
468MLINKS+=curs_mouse.3 getmouse.3 curs_mouse.3 mouseinterval.3 \
469	curs_mouse.3 mousemask.3 curs_mouse.3 ungetmouse.3 \
470	curs_mouse.3 wenclose.3 curs_mouse.3 wmouse_trafo.3
471MLINKS+=curs_move.3 move.3 curs_move.3 wmove.3
472MLINKS+=curs_outopts.3 clearok.3 curs_outopts.3 idcok.3 curs_outopts.3 idlok.3 \
473	curs_outopts.3 immedok.3 curs_outopts.3 leaveok.3 curs_outopts.3 nl.3 \
474	curs_outopts.3 nonl.3 curs_outopts.3 scrollok.3 \
475	curs_outopts.3 setscrreg.3 curs_outopts.3 wsetscrreg.3
476MLINKS+=curs_overlay.3 copywin.3 curs_overlay.3 overlay.3 \
477	curs_overlay.3 overwrite.3
478MLINKS+=curs_pad.3 newpad.3 curs_pad.3 pechochar.3 curs_pad.3 pnoutrefresh.3 \
479	curs_pad.3 prefresh.3 curs_pad.3 subpad.3
480MLINKS+=curs_print.3 mcprint.3
481MLINKS+=curs_printw.3 mvprintw.3 curs_printw.3 mvwprintw.3 \
482	curs_printw.3 printw.3 curs_printw.3 vw_printw.3 \
483	curs_printw.3 vwprintw.3 curs_printw.3 wprintw.3
484MLINKS+=curs_refresh.3 doupdate.3 curs_refresh.3 redrawwin.3 \
485	curs_refresh.3 refresh.3 curs_refresh.3 wnoutrefresh.3 \
486	curs_refresh.3 wredrawln.3 curs_refresh.3 wrefresh.3
487MLINKS+=curs_scanw.3 mvscanw.3 curs_scanw.3 mvwscanw.3 curs_scanw.3 scanw.3 \
488	curs_scanw.3 vw_scanw.3 curs_scanw.3 vwscanw.3 curs_scanw.3 wscanw.3
489MLINKS+=curs_scr_dump.3 scr_dump.3 curs_scr_dump.3 scr_init.3 \
490	curs_scr_dump.3 scr_restore.3 curs_scr_dump.3 scr_set.3
491MLINKS+=curs_scroll.3 scrl.3 curs_scroll.3 scroll.3 curs_scroll.3 wscrl.3
492MLINKS+=curs_slk.3 slk_attr.3 curs_slk.3 slk_attr_off.3 \
493	curs_slk.3 slk_attr_on.3 curs_slk.3 slk_attr_set.3 \
494	curs_slk.3 slk_attroff.3 curs_slk.3 slk_attron.3 \
495	curs_slk.3 slk_attrset.3 curs_slk.3 slk_clear.3 \
496	curs_slk.3 slk_color.3 curs_slk.3 slk_init.3 curs_slk.3 slk_label.3 \
497	curs_slk.3 slk_noutrefresh.3 curs_slk.3 slk_refresh.3 \
498	curs_slk.3 slk_restore.3 curs_slk.3 slk_set.3 curs_slk.3 slk_touch.3
499MLINKS+=curs_termattrs.3 baudrate.3 curs_termattrs.3 erasechar.3 \
500	curs_termattrs.3 has_ic.3 curs_termattrs.3 has_il.3 \
501	curs_termattrs.3 killchar.3 curs_termattrs.3 longname.3 \
502	curs_termattrs.3 termattrs.3 curs_termattrs.3 termname.3
503MLINKS+=curs_termcap.3 tgetent.3 curs_termcap.3 tgetflag.3 \
504	curs_termcap.3 tgetnum.3 curs_termcap.3 tgetstr.3 \
505	curs_termcap.3 tgoto.3 curs_termcap.3 tputs.3
506MLINKS+=curs_terminfo.3 del_curterm.3 curs_terminfo.3 mvcur.3 \
507	curs_terminfo.3 putp.3 curs_terminfo.3 restartterm.3 \
508	curs_terminfo.3 set_curterm.3 curs_terminfo.3 setterm.3 \
509	curs_terminfo.3 setupterm.3 curs_terminfo.3 tigetflag.3 \
510	curs_terminfo.3 tigetnum.3 curs_terminfo.3 tigetstr.3 \
511	curs_terminfo.3 tparm.3 curs_terminfo.3 tputs.3 \
512	curs_terminfo.3 vidattr.3 curs_terminfo.3 vidputs.3
513MLINKS+=curs_touch.3 is_linetouched.3 curs_touch.3 is_wintouched.3 \
514	curs_touch.3 touchline.3 curs_touch.3 touchwin.3 \
515	curs_touch.3 untouchwin.3 curs_touch.3 wtouchln.3
516MLINKS+=curs_util.3 delay_output.3 curs_util.3 filter.3 \
517	curs_util.3 flushinp.3 curs_util.3 getwin.3 \
518	curs_util.3 keyname.3 curs_util.3 putwin.3 \
519	curs_util.3 unctrl.3 curs_util.3 use_env.3
520MLINKS+=curs_window.3 delwin.3 curs_window.3 derwin.3 curs_window.3 dupwin.3 \
521	curs_window.3 mvderwin.3 curs_window.3 mvwin.3 curs_window.3 newwin.3 \
522	curs_window.3 subwin.3 curs_window.3 syncok.3 \
523	curs_window.3 wcursyncup.3 curs_window.3 wsyncdown.3 \
524	curs_window.3 wsyncup.3
525MLINKS+=dft_fgbg.3 use_default_colors.3
526
527.include <bsd.lib.mk>
528
529.SUFFIXES: .3x .3
530